ich, VBA-Anfänger, habe folgende Frage:
Ich möchte aus einer Ausgangstabelle (WBQuelle) alle Zeilen in eine Zieltabelle (WBZiel) in ein bestimmtes Arbeitsblatt (WSZiel) kopieren, welche innerhalb vordefinierter Datumsgrenzen, die in WBZiel, WSZiel gegeben sind, liegen.
"WSZiel.Range("H5").Value" soll demnach das Eintrittsdatum, "WSZiel.Range("L5").Value" das Ausstiegsdatum wiedergeben. Alle anderen Daten davor und danach sollen nicht berücksichtigt werden.
Eine Fehlermeldung bekomme ich nicht, es werden jedoch auch keine Inhalte kopiert und eingefügt, obwohl die entsprechenden Daten in WBQuelle durchaus vorkommen. Ich erhalte quasi in WSZiel die erste Zeile markiert, ab welcher eingefügt werden soll, es erscheint jedoch nichts.
Vielen Dank für Euren Ratschlag im Voraus! :)
Folgendes Makro liegt bereits vor:
Private Sub CommandButton2_Click()
Dim WBZiel As Workbook, ExportDatei As Variant
Dim WBQuelle As Workbook, WSZiel As Worksheet
Dim Zelle As Range, Zeile As Long
Set WBZiel = ThisWorkbook
Set WSZiel = ThisWorkbook.Sheets("Zusatzaufgaben")
Application.ScreenUpdating = False
ExportDatei = Application.GetOpenFilename("Excel-Dateien, *.xl*", , "Bitte die Zusatzaufgaben- _
Datei wählen ...")
ExportDatei = CStr(ExportDatei)
If ExportDatei = "Falsch" Then Exit Sub
'öffnen der ausgewählten Datei
Set WBQuelle = Workbooks.Open(ExportDatei)
'kopieren des Blattinhaltes
For Each Zelle In WBQuelle.Sheets("Zusatzaufgaben").Range("K:K")
If Zelle.Value >= WSZiel.Range("H5").Value And Zelle.Value