Hallo und ein schönes Wochenende zusammen. Ich hab mal wieder eine Frage zu VBA Code. Ich möchte von Datei / Tabelle nach neuer Datei / Tabelle kopieren, wenn der Wert in Spalten B und C der Tabellen übereinstimmt. Es soll der Wert aus der Quelldatei in die Zieldatei eingefügt werden. Der Code läuft durch, nimmt aber kkeine Werte mit um sie dann in neuer Datei / Tabelle einzufügen.
Kann mir da vielleicht jemand eine Fehlerkorrektur an meinem Code vornehmen bzw. mir berichtigte Zeilen liefern. Danke weil ich komme nicht weiter?`Option Explicit
Sub Daten_uebertragen()
Dim i As Long
Dim lastRowSource As Long
Dim wsSource As Worksheet, wsTarget As Worksheet
Dim wbSource As Workbook, wbTarget As Workbook
Dim sourceFilePath As String, targetFilePath As String
Dim nextEmptyRow As Long
Dim Tabelle1 As Worksheet
Dim Tabelle2 As Worksheet
' Dateipfade definieren
sourceFilePath = "C:\Users\Besitzer\Desktop\NREINFUEG.xls" ' Aus dieser Datei / Tabelle soll der Inhalt in Spalte A kopiert werden
targetFilePath = "C:\Users\Besitzer\Desktop\Liste11.xlsm" ' In diese Datei / Tabelle soll nach Prüfung der Spalten B und C Eingefügt werden.
' Quelldatei (NREINFUEG.xls) öffnen, falls nicht bereits geöffnet
On Error Resume Next
Set wbSource = Workbooks.Open(sourceFilePath)
On Error GoTo 0
Set wsSource = wbSource.Sheets(1) ' Passe den Tabellennamen an, falls notwendig
' Zieldatei (Liste11.xlsm) öffnen, falls nicht bereits geöffnet
On Error Resume Next
Set wbTarget = Workbooks.Open(targetFilePath)
On Error GoTo 0
Set wsTarget = wbTarget.Sheets(1) ' Passe den Tabellennamen an, falls notwendig
' Letzte Zeile in der Quelldatei (Spalte A)
lastRowSource = wsSource.Cells(wsSource.Rows.Count, "A").End(xlUp).Row
' Nächste leere Zeile in der Zieldatei ermitteln
nextEmptyRow = wsTarget.Cells(wsTarget.Rows.Count, "A").End(xlUp).Row + 1
' Daten aus Spalte A der Quelldatei in die Zieldatei übertragen
For i = 2 To lastRowSource ' Start ab Zeile 2, um Überschriften zu überspringen
wsTarget.Cells(nextEmptyRow, 1).Value = wsSource.Cells(i, 1).Value ' Kopiere Daten aus Spalte A von NREINFUEG.xls in Liste11.xlsm
nextEmptyRow = nextEmptyRow + 1 ' Nächste leere Zeile in der Zieldatei
Next i
' Abschluss (Dateien nicht schließen, wenn gewünscht)
'wbSource.Close SaveChanges:=False ' Quelldatei speichern oder nicht
'wbTarget.Close SaveChanges:=True ' Zieldatei speichern
End Sub
`