Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1636to1640
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Zeile automatisch verschieben

Zeile automatisch verschieben
16.08.2018 14:07:27
Andreas
Liebe Forums-Mitglieder,
ich suche nach einer Möglichkeit, die Zeile eines Tabellenblattes in ein zweites Tabellenblatt zu verschieben, sobald der Wert der Zelle "Status" auf "genehmigt" geändert wurde. Die Formatierung soll dabei erhalten bleiben.
Vielen Dank für die Unterstützung im Voraus.
Andreas
https://www.herber.de/bbs/user/123378.xlsm

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeile automatisch verschieben
16.08.2018 14:13:41
Werner
Hallo Andreas,
und wie wird der Status auf "genehmigt" geändert, durch "händische" Eingabe?
Gruß Werner
AW: Zeile automatisch verschieben
16.08.2018 14:25:52
Andreas
Hallo Werner,
danke für die schnelle Rückmeldung.
Geplant ist, in der jeweiligen Zelle über ein Drop-Down-Feld aus den in der Legende unten linkes genannten Optionen auszuwählen. Sobald der Status "genehmigt" gewählt wird, soll die Zeile aus dem ersten Tabellenblatt in das Blatt "genehmigt" verschoben werden.
AW: Zeile automatisch verschieben
16.08.2018 14:27:18
Werner
Hallo Andreas,
dann so:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim loLetzte As Long
Application.ScreenUpdating = False
Application.EnableEvents = False
Application.Calculation = xlCalculationManual
If Target.Column = 18 Then
If Target.Count = 1 Then
Select Case UCase(Target.Value)
Case "GENEHMIGT", "ABGESCHLOSSEN"
With Worksheets("genehmigt")
loLetzte = .Cells(.Rows.Count, 1).End(xlUp).Offset(1, 0).Row
If .Cells(1, 1) = "" Then loLetzte = 1
Rows(Target.Row).Copy
.Rows(loLetzte).PasteSpecial Paste:=xlAll
Rows(Target.Row).Delete
End With
Case Else
End Select
End If
End If
Application.EnableEvents = True
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
End Sub
Gruß Werner
Anzeige
AW: Zeile automatisch verschieben
16.08.2018 14:37:31
Andreas
Hallo Werner,
vielen Dank für den Support! Klappt hervorragend!
Viele Grüße
Andreas
Gerne u. Danke für die Rückmeldung. o.w.T.
16.08.2018 18:54:34
Werner
AW: Zeile automatisch verschieben
16.08.2018 14:39:38
Torsten
oder so:

Private Sub Worksheet_Change(ByVal Target As Range)
Dim myRow As Long
Dim myLastRow1 As Long
Dim myLastRow2 As Long
Dim WS1 As Worksheet: Set WS1 = Worksheets("Projektübersicht")
Dim WS2 As Worksheet: Set WS2 = Worksheets("genehmigt")
Application.ScreenUpdating = False
Application.EnableEvents = False
Application.Calculation = xlCalculationManual
With WS1
myLastRow1 = .Cells(Rows.Count, 1).End(xlUp).Row
End With
For myRow = myLastRow1 To 6 Step -1
If WS1.Cells(myRow, 18).Value = "genehmigt" Then
With WS2
myLastRow2 = .Cells(Rows.Count, 1).End(xlUp).Row
End With
WS1.Rows(myRow).Copy Destination:=WS2.Rows(myLastRow2 + 1)
End If
Next myRow
Application.EnableEvents = True
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
End Sub

Anzeige
AW: Zeile automatisch verschieben
16.08.2018 15:05:39
Andreas
Hallo Torsten,
Dir auch vielen Dank für die Unterstützung.
Kannst Du mir als VBA-Laien sagen, wo der Unterschied zwischen beiden Varianten liegt?
Gruß Andreas

35 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige