Zum Hauptinhalt springen

Wie kopiert man Zeilen und fügt sie basierend auf einem Datum in ein anderes Arbeitsblatt in Excel ein? 

Author: Xiaoyang Last Modified: 2025-08-06

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:

a screenshot of selecting the date range after running the code

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:

a screenshot of selecting a destination cell

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:

a screenshot of the results


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:

a screenshot of selecting the date range after running the code 2

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:

a screenshot of selecting a destination cell to place the rows if date is greater than today

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:

a screenshot showing the rows only when dates are greater than today


Die besten Office-Produktivitätstools

🤖 Kutools AI Aide: Revolutionieren Sie die Datenanalyse basierend auf: Intelligente Ausführung |  Code generieren  |  Benutzerdefinierte Formeln erstellen |  Daten analysieren und Diagramme generieren  |  Erweiterte Funktionen aufrufen
Beliebte Funktionen: Doppelte suchen, hervorheben oder markieren | Leere Zeilen löschen | Spalten oder Zellen ohne Datenverlust zusammenführen | Runden
Erweiterte SVERWEIS: SVERWEIS mit mehreren Kriterien | SVERWEIS für mehrere Werte | Mehrblatt-SVERWEIS | Fuzzy Match
Erweiterte Dropdown-Liste: Dropdown-Liste schnell erstellen | Abhängige Dropdown-Liste | Mehrfachauswahl-Dropdown-Liste
Spalten-Manager: Eine bestimmte Anzahl an Spalten hinzufügen | Spalten verschieben | Sichtbarkeit von ausgeblendeten Spalten umschalten | Bereiche & Spalten vergleichen
Hervorgehobene Funktionen: Gitterfokus | Entwurfsansicht | Erweiterte Formelleiste | Arbeitsmappen- & Blattmanager | AutoText-Bibliothek | Datumsauswahl | Daten zusammenführen | Zellen verschlüsseln/entschlüsseln | E-Mail senden nach Liste | Super Filter | Spezialfilter (Filtern nach Fett/Kursiv/Durchgestrichen...)…
Top15 Toolsets:12 Text-Tools (Text hinzufügen, Bestimmte Zeichen löschen, ...) | 50+ Diagramm typen (Gantt-Diagramm, ...) | 40+ praktische Formeln (Alter basierend auf dem Geburtsdatum berechnen, ...) | 19 Einfüge-Tools (QR-Code einfügen, Bild aus Pfad einfügen, ...) | 12 Konvertierungs-Tools (In Wörter umwandeln, Währungsumrechnung, ...) | 7 Konsolidieren & Aufteilen-Tools (Erweiterte Zeilen zusammenführen, Zellen aufteilen, ...) | ... und mehr
Nutzen Sie Kutools in Ihrer bevorzugten Sprache – unterstützt Englisch, Spanisch, Deutsch, Französisch, Chinesisch und über40 weitere Sprachen!

Steigern Sie Ihre Excel-Kompetenz mit Kutools für Excel und erleben Sie Effizienz wie nie zuvor. Kutools für Excel bietet über300 erweiterte Funktionen, um Ihre 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 Reiter-Oberfläche in Office und macht Ihre Arbeit so viel einfacher

  • Aktivieren Sie die Bearbeitung und das Lesen in Reitern in Word, Excel, PowerPoint, Publisher, Access, Visio und Project.
  • Öffnen und erstellen Sie mehrere Dokumente in neuen Reitern desselben Fensters, anstatt in neuen Fenstern.
  • Steigert Ihre Produktivität um50 % und reduziert täglich Hunderte von Mausklicks!