26.12.2021, 07:14
Hallo zusammen und Euch allen frohe Weihnachten,
ich habe ein Problem vereinfacht dargestellt,. ich habe zwei Tabellen mit zwei/bzw. 3 spalten, die Werte in Tabelle 2 sind variable eingaben.
Mittels eines Makros filtere ich nur die Zeilen aus Tabelle 2 die einen bestimmten Wert in spalte a haben, diese werden kopiert und in Tabelle 1 untereinander ohne Leerzeilen eingefügt.
Funktioniert Super. Aber ich muss in Tabelle 1 in Spalte 3 werte eingeben. Hat sich jetzt der Inhalt in Tabelle 2 geändert muss ich ja wieder den Makro ausführen um auch die geänderten Zeilen nach Tabelle 1 zu transferieren. Dabei werden ALLE Zeilen in Tabelle 1 überschrieben und alle Einträge in Spalte 3 sind weg.
Ich hoffe Ihr habt mein Problem verstanden. Es handelt sich dabei später nach Lösung des Problems um Tabellen aus verschiedenen Mappen.
hier noch der Code.
Sub aktualisieren()
'
' aktualisieren Makro
'
'
Dim Zeile As Long
Dim ZeileMax As Long
Dim n As Long
With Tabelle2
ZeileMax = .UsedRange.Rows.Count
n = 1
For Zeile = 2 To ZeileMax
If .Cells(Zeile, 1).Value = "Fertig" Then
.Rows(Zeile).Copy Destination:=Tabelle1.Rows(n)
n = n + 1
End If
Next Zeile
End With
End Sub
ich habe ein Problem vereinfacht dargestellt,. ich habe zwei Tabellen mit zwei/bzw. 3 spalten, die Werte in Tabelle 2 sind variable eingaben.
Mittels eines Makros filtere ich nur die Zeilen aus Tabelle 2 die einen bestimmten Wert in spalte a haben, diese werden kopiert und in Tabelle 1 untereinander ohne Leerzeilen eingefügt.
Funktioniert Super. Aber ich muss in Tabelle 1 in Spalte 3 werte eingeben. Hat sich jetzt der Inhalt in Tabelle 2 geändert muss ich ja wieder den Makro ausführen um auch die geänderten Zeilen nach Tabelle 1 zu transferieren. Dabei werden ALLE Zeilen in Tabelle 1 überschrieben und alle Einträge in Spalte 3 sind weg.
Ich hoffe Ihr habt mein Problem verstanden. Es handelt sich dabei später nach Lösung des Problems um Tabellen aus verschiedenen Mappen.
hier noch der Code.
Sub aktualisieren()
'
' aktualisieren Makro
'
'
Dim Zeile As Long
Dim ZeileMax As Long
Dim n As Long
With Tabelle2
ZeileMax = .UsedRange.Rows.Count
n = 1
For Zeile = 2 To ZeileMax
If .Cells(Zeile, 1).Value = "Fertig" Then
.Rows(Zeile).Copy Destination:=Tabelle1.Rows(n)
n = n + 1
End If
Next Zeile
End With
End Sub