ich brauche mal eure Hilfe. ich möchte ein Makro ausführen das mir von einer
Datei Zeilen kopiert in eine dafür vorgesehene Datei wenn in Spalte A ein bestimmter Wert vorhanden ist. Soweit läuft dieses auch.
Sub kopieren()
Dim i As Long
Dim lngR As Long
Application.ScreenUpdating = False
For i = 1 To Cells(Rows.Count, 12).End(xlUp).Row
On Error Resume Next
If Cells(i, 1).Value = "001" Then
Range(Cells(i, 2), Cells(i, 256)).Copy
Workbooks.Open Filename:="C:\Eigene Dateien\Test 001.xls"
'-> nächste Zeile Pfad eingeben
If Dir("C:\Eigene Dateien\Test 001.xls") = "" Then
Sheets("All Data").Select
lngR = Sheets("All Data").Range("G65536").End(xlUp).Row + 1
Sheets("All Data").Cells(lngR, 2).PasteSpecial xlValues
lngR = lngR + 1
Workbooks("Test 001.xls").Close savechanges:=True
End If
Next
With Application
.CutCopyMode = False
.ScreenUpdating = True
End With
End
Sub
Nun ist mir aber aufgefallen das wenn das Blatt in der Datei Test 001.xls einen anderen Namen wie z.B. All D hat, werden die Daten ja nicht kopiert.
Kann ich mir über eine Art Fehlerprotokoll die Daten anzeigen lassen welche nicht kopiert wurden? Oder gibt es eine andere Möglichkeit herauszubekommen welche Daten nicht koiert wurden?
Wenn Daten nicht kopiert werden können, weil eine Datei oder ein Blatt nicht gefunden wurde, darf das Makro nicht abbrechen sondern diesen Schritt überspringen (Fehlerprotokoll soll erstellen werden) und mit dem nächsten Schritt fortfahren.
Jonas