Nepomuk hatte mur dankenswerterweise auf mein Anliegen geantwortet.
Mein Anliegen:
Ich habe eine Excel-Datei mit zigtausend Dateinamen inklusive Dateiendung, beide in Spalte A: pro Zeile ein Dateiname.Dateiendung
Diese Dateinamen sollen mit einem Ordner abgeglichen werden.
Es sollen die Dateien im Ordner gelöscht werden, die bereits in der Exceldatei vorhanden sind, so dass nur die neuen Dateien übrig bleiben.
Noch ein Hinweis: Die Dateien enthalten auch manchmal Sonderzeichen.
Nepomuks Antwort:
Public Sub DeleteFiles()
Const FOLDER_PATH As String = "G:\Eigene Dateien\Eigene Excelbeispiele\" 'anpassen !!!
Dim lngRow As Long
For lngRow = 1 To Cells(Rows.Count, 1).End(xlUp).Row
With Cells(lngRow, 1)
If Not IsEmpty(.Value) Then _
If Dir$(FOLDER_PATH & .Value) vbNullString Then _
Call Kill(FOLDER_PATH & .Value)
End With
Next
End Sub
Ich bekomme immer einen Laufzeitfehler '52' Dateiname oder -nummer falsch angezeigt.Debugginfo: If Dir$(FOLDER_PATH & .Value) vbNullString Then
ist gelb unterlegt.
Was läuft falsch?
Ciao
Willi