Wie kopiert man Zeilen und fügt sie basierend auf einem Datum in ein anderes Arbeitsblatt in Excel ein?
Angenommen, ich habe einen Datenbereich, und jetzt möchte ich die gesamten Zeilen basierend auf einem bestimmten Datum kopieren und sie dann in ein anderes Arbeitsblatt einfügen. Haben Sie gute Ideen, wie man diese Aufgabe in Excel bewältigen kann?
Kopieren von Zeilen und Einfügen in ein anderes Arbeitsblatt basierend auf dem heutigen Datum
Kopieren von Zeilen und Einfügen in ein anderes Arbeitsblatt, wenn das Datum größer als heute ist
Kopieren von Zeilen und Einfügen in ein anderes Arbeitsblatt basierend auf dem heutigen Datum
Wenn Sie die Zeilen kopieren müssen, falls das Datum heute ist, wenden Sie bitte den folgenden VBA-Code an:
1. Halten Sie die Tasten ALT + F11 gedrückt, um das Fenster Microsoft Visual Basic for Applications zu öffnen.
2. Klicken Sie auf Einfügen > Modul, und fügen Sie den folgenden Code im Modulfenster ein.
VBA-Code: Kopieren und Einfügen von Zeilen basierend auf dem heutigen Datum:
Sub CopyRow()
'Updateby Extendoffice
Dim xRgS As Range, xRgD As Range, xCell As Range
Dim I As Long, xCol As Long, J As Long
Dim xVal As Variant
On Error Resume Next
Set xRgS = Application.InputBox("Please select the date column:", "KuTools For Excel", Selection.Address, , , , , 8)
If xRgS Is Nothing Then Exit Sub
Set xRgD = Application.InputBox("Please select a destination cell:", "KuTools For Excel", , , , , , 8)
If xRgD Is Nothing Then Exit Sub
xCol = xRgS.Rows.Count
Set xRgS = xRgS(1)
Application.CutCopyMode = False
J = 0
For I = 1 To xCol
Set xCell = xRgS.Offset(I - 1, 0)
xVal = xCell.Value
If TypeName(xVal) = "Date" And (xVal <> "") And (xVal = Date) Then
xCell.EntireRow.Copy xRgD.Offset(J, 0)
J = J + 1
End If
Next
Application.CutCopyMode = True
End Sub
3. Nachdem Sie den obigen Code eingefügt haben, drücken Sie bitte die F5-Taste, um diesen Code auszuführen, und ein Eingabeaufforderungsfenster wird angezeigt, das Sie daran erinnert, die Datums-Spalte auszuwählen, basierend auf der Sie die Zeilen kopieren möchten, siehe Screenshot:
4. Klicken Sie dann auf die Schaltfläche OK, in einer weiteren Eingabeaufforderung wählen Sie eine Zelle in einem anderen Arbeitsblatt aus, wo Sie das Ergebnis ausgeben möchten, siehe Screenshot:
5. Klicken Sie anschließend auf die Schaltfläche OK, nun werden die Zeilen, deren Datum heute ist, sofort in das neue Arbeitsblatt eingefügt, siehe Screenshot:
Kopieren von Zeilen und Einfügen in ein anderes Arbeitsblatt, wenn das Datum größer als heute ist
Um die Zeilen zu kopieren und einzufügen, deren Datum größer oder gleich heute ist, zum Beispiel, wenn das Datum heute oder größer als 5 Tage seit heute ist, dann kopieren und fügen Sie die Zeilen in ein anderes Arbeitsblatt ein.
Der folgende VBA-Code könnte Ihnen helfen:
1. Halten Sie die Tasten ALT + F11 gedrückt, um das Fenster Microsoft Visual Basic for Applications zu öffnen.
2. Klicken Sie auf Einfügen > Modul, und fügen Sie den folgenden Code im Modulfenster ein.
VBA-Code: Kopieren und Einfügen von Zeilen, wenn das Datum größer als heute ist:
Sub CopyRow()
'Updateby Extentoffice
Dim xRgS As Range, xRgD As Range, xCell As Range
Dim I As Long, xCol As Long, J As Long
Dim xVal As Variant
On Error Resume Next
Set xRgS = Application.InputBox("Please select the date column:", "KuTools For Excel", Selection.Address, , , , , 8)
If xRgS Is Nothing Then Exit Sub
Set xRgD = Application.InputBox("Please select a destination cell:", "KuTools For Excel", , , , , , 8)
If xRgD Is Nothing Then Exit Sub
xCol = xRgS.Rows.Count
Set xRgS = xRgS(1)
Application.CutCopyMode = False
J = 0
For I = 1 To xCol
Set xCell = xRgS.Offset(I - 1, 0)
xVal = xCell.Value
If TypeName(xVal) = "Date" And (xVal <> "") And (xVal >= Date And (xVal < Date + 5)) Then
xCell.EntireRow.Copy xRgD.Offset(J, 0)
J = J + 1
End If
Next
Application.CutCopyMode = True
End Sub
Hinweis: Im obigen Code können Sie die Kriterien ändern, z. B. kleiner als heute oder die Anzahl der Tage, wie Sie es benötigen, im Skriptcode If TypeName(xVal) = "Date" And (xVal <> "") And (xVal >= Date And (xVal < Date + 5)) Then.
3. Drücken Sie dann die F5-Taste, um diesen Code auszuführen, wählen Sie in der Eingabeaufforderung die Datenspalte aus, die Sie verwenden möchten, siehe Screenshot:
4. Klicken Sie dann auf die Schaltfläche OK, in einer weiteren Eingabeaufforderung wählen Sie eine Zelle in einem anderen Arbeitsblatt aus, wo Sie das Ergebnis ausgeben möchten, siehe Screenshot:
5. Klicken Sie auf die Schaltfläche OK, nun wurden die Zeilen, deren Datum heute oder größer als 5 Tage seit heute ist, kopiert und in das neue Arbeitsblatt eingefügt, wie im folgenden Screenshot gezeigt:
Die besten Produktivitätstools für das Büro
Stärken Sie Ihre Excel-Fähigkeiten mit Kutools für Excel und genießen Sie Effizienz wie nie zuvor. Kutools für Excel bietet mehr als300 erweiterte Funktionen, um die Produktivität zu steigern und Zeit zu sparen. Klicken Sie hier, um die Funktion zu erhalten, die Sie am meisten benötigen...
Office Tab bringt die Tab-Oberfläche in Office und macht Ihre Arbeit wesentlich einfacher
- Aktivieren Sie die Tabulator-Bearbeitung und das Lesen in Word, Excel, PowerPoint, Publisher, Access, Visio und Project.
- Öffnen und erstellen Sie mehrere Dokumente in neuen Tabs innerhalb desselben Fensters, statt in neuen Einzelfenstern.
- Steigert Ihre Produktivität um50 % und reduziert hunderte Mausklicks täglich!
Alle Kutools-Add-Ins. Ein Installationspaket
Das Kutools for Office-Paket bündelt Add-Ins für Excel, Word, Outlook & PowerPoint sowie Office Tab Pro und ist ideal für Teams, die mit mehreren Office-Anwendungen arbeiten.





- All-in-One-Paket — Add-Ins für Excel, Word, Outlook & PowerPoint + Office Tab Pro
- Ein Installationspaket, eine Lizenz — in wenigen Minuten einsatzbereit (MSI-kompatibel)
- Besser gemeinsam — optimierte Produktivität in allen Office-Anwendungen
- 30 Tage kostenlos testen — keine Registrierung, keine Kreditkarte erforderlich
- Bestes Preis-Leistungs-Verhältnis — günstiger als Einzelkauf der Add-Ins