habe hier ein Code der einzelne Spalten mit dem Ziel vergleicht und wenn diese nicht vorhanden sind, die Spalte in die Ziel Tabelle kopiert. Läuft auch gut. NUR ich würde gerne anstatt "for each tabelle", er macht es ja bei jeder tabelle.. ihm einfach sagen können für jeden Tabellennamen in einem Bereich (Habe hierfür ne Formel wo er alle Tabellennamen der Datei auflistet).
Makro würde nun alle Tabellenblätter die Daten auslesen und Kopieren. Ich würde es aba nur von _ Person1, Person2, Person3 usw machen. Wollte die Tabellenblätter mit einer Schleife ansprechen aba das klappt alles net. Vorallem das verschachteln ihm zu sagen für Tabelle Nr 3 bis Nr 5 vergleiche die Spalten mit dem Ziel und wenn se net schon vorhanden sind, füge se ein.
Public Sub ArbeitsblattNummern()
Dim lng As Long
For lng = 3 To 5 Step 1
ActiveWorkbook.Worksheets(lng).Cells(1, 2) = "1. so geht's"
Next lng
End Sub
Daten
Admin
Übersicht
Person1
Person2
Person3
Sub uebersicht()
Dim datei As String, pfad As String, Zzeile As Long, i%, suche, AZelle As Range
Dim ziel As Object
Dim Ziel1 As String
Ziel1 = ActiveWorkbook.Sheets("Tabelle1").Cells(1, 2).Value
Application.ScreenUpdating = False ' Bildschirmaktualisierung ausschalten
Set ziel = Workbooks("ziel.xlsm")
Zzeile = ziel.Sheets(Ziel1).Cells(Rows.Count, 5).End(xlUp).Row + 1
For Each tabelle In ThisWorkbook.Worksheets
'28 Zeilen kopieren
For i = 1 To 1000
suche = tabelle.Cells(i, 1).Value
With ziel.Sheets(Ziel1).Columns(1)
Set AZelle = .Find(suche, LookAt:=xlWhole, LookIn:=xlValues)
If AZelle Is Nothing Then
tabelle.Rows(i).Copy Destination:=.Cells(Zzeile, 1)
Zzeile = Zzeile + 1
End If
End With
Next i
DoEvents ' Benutzereingriffe zulassen z.B. Strg + C
Next tabelle
'ziel.Close savechanges:=True ' Datei schliesen
Application.ScreenUpdating = True ' Bildschirmaktualisierung einschalten
End Sub
Kann mir da jemand helfen?
Danke & Gruß
Michi