AW: Zusammenführung verschiedener Blätter
15.02.2019 18:04:23
AlterDresdner
Hallo Alex,
Sub zusammenführen()
Dim Blatt As Object, i As Long, Zielblatt As Object, zielzeile As Long, firstline As Long
Const ZielName = "erg" 'anpassen!!
Const Suchjahr = "$A$2" 'anpassen!!
Set Zielblatt = ThisWorkbook.Sheets(ZielName)
If Not IsNumeric(Zielblatt.Range(Suchjahr)) Then Exit Sub
firstline = Zielblatt.Range(Suchjahr).Offset(1, 0).Row
i = WorksheetFunction.Max(firstline, Zielblatt.Cells(Rows.Count, 4).End(xlUp).Row)
Zielblatt.Rows(firstline & ":" & i).ClearContents
Application.ScreenUpdating = False
zielzeile = firstline
For Each Blatt In ThisWorkbook.Sheets
With Blatt
If .Cells(1, 1) = "ja" And .Name Zielblatt.Name And IsDate(.Cells(2, 4)) Then
For i = 2 To .Cells(Rows.Count, 1).End(xlUp).Row
If IsDate(.Cells(i, 4)) Then
If Year(.Cells(i, 4)) = Zielblatt.Range(Suchjahr) Then
.Rows(i).Copy Destination:=Zielblatt.Cells(zielzeile, 1)
zielzeile = zielzeile + 1
End If
End If
Next i
End If
End With
Next Blatt
Application.ScreenUpdating = True
Zielblatt.Activate
End Sub
Voraussetzung: Makro steht im Workbook (ThisWorkbook),
Zieltabelle heißt erg
Jahreszahl steht in erg(A1), Eintragungen beginnen in der Zeile darunter,
sonst ggfls. Konstanten anpassen.
Gruß der Martin