Ich habe ein Sheet mit vielen Tabellen und jeden Tag kommt eine neue Tabelle hinzu. Mein Gedanke ist es, dass VBA das aktuelle Ende des Sheets erkennt (also Tabelle mit Datum von gestern), dann zwei Leerzeilen einfügt und im Anschluss das heutige Datum in Spalte A, sowie die restlichen Überschriften (aus B1:G1) in Spalte B-G kopiert.
- Des Weiteren soll die End of Day-Rechnung (Spalte H berechnet hierzu am Ende die Summe aus Spalte D und E je Tabelle) abgeschlossen werden und in der neuen Tabelle wieder vor Vorne beginnen (im Voraus ist nicht bekannt, wie viele Zeilen an einem Tag benötigt werden).
Diesen Code habe ich bereits in ein Modul eingefügt:
Sub Makro1 ()
Dim lgLZ As Long
Dim iZ As Integer
Dim iB As Integer
lgLZ = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row + 1
For iZ = 1 To lgLZ ' alle genutzten Zeilen betrachten
If Cells(iZ, 1) = ""
iB = iB + 1
If iB = 2 Then '
ActiveCell.FormulaR1C1 = "=TODAY()"
Range("B1:G1").Select
Selection.Copy
ActiveSheet.Paste
End If
Else ' wenn Zelle nicht leer, dann nicht zählen
iB = 0
End If
Next iZ
End Sub