Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
776to780
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
776to780
776to780
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Dateien die nicht in der Liste sind löschen

Dateien die nicht in der Liste sind löschen
30.06.2006 10:32:22
Thomas
Hallo zusammen
Ich habe folgendes Problem:
In der Spalte A habe ich rund 500 Nummern (z.B. 12345678). Im Ordner C:\pdf\ habe ich sehr viele Unterordner welche PDF-Dateien enthalten. Die PDF tragen als Dateinamen eine Nummer aus der Liste (z.B. 12345678.pdf). Die Unterordner haben völlig verschiedene Namen (Buchstaben, Zahlen oder beides).
Jetzt habe ich aus der Spalte A immer wieder Einträge gelöscht, nicht aber die dazugehörigen PDF-Dateien.
Wie kann ich mit einem Makro die Nummern in der Spalte A mit den Dateinamen in C:\pdf\[alle Unterordner] vergleichen und dort alle PDF löschen, deren Nummer NICHT in der Spalte A vorkommt?
Vielen Dank!
Grüsse
Thomas

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Dateien die nicht in der Liste sind löschen
30.06.2006 11:13:34
u_
Hallo,
mit Vorsicht zu genießen, da ohne Warnung und ohne Papierkorb gelöscht wird.

Sub zz()
Dim fs As FileSearch, i As Integer, strFile As String
Set fs = Application.FileSearch
With fs
.LookIn = "c:\temp"
.Filename = "*.pdf"
.SearchSubFolders = True
If .Execute > 0 Then
For i = 1 To .FoundFiles.Count
strFile = Right(.FoundFiles(i), Len(.FoundFiles(i)) - InStrRev(.FoundFiles(i), "\"))
strFile = Replace(strFile, ".pdf", "")
If WorksheetFunction.CountIf(Sheets(1).Range("A:A"), strFile) = 0 Then
Kill .FoundFiles(i)
End If
Next
End If
End With
End Sub
Gruß
Geist ist geil!
(Dies ist ein allgemeines Statement und nicht an bestimmte Personen gerichtet.)
Anzeige
AW: Dateien die nicht in der Liste sind löschen
30.06.2006 12:57:55
Thomas
Hallo
Vielen Dank! Leider funktioniert es nicht (den Pfad habe ich angepasst, daran liegt es nicht). Aber ich denke ich weiss warum: In der Spalte A gibt es auch Nummern, für die es in C:\pdf\[Unterordner] keine PDF-Datei gibt. Da hängt sich Excel wahrscheinlich auf. Mein Fehler, bitte entschuldige, ich hatte das vergessen zu erwähnen. :-(
Was muss im Makro geändert werden, dass auch funktioniert wenn es Nummern hat, für die keine Datei existiert?
Vielen Dank!
Thomas
AW: Dateien die nicht in der Liste sind löschen
30.06.2006 13:22:37
u_
Hallo,
das ist Wurscht, was in A steht. Der Name der .Pdf wird auf den reinen Dateinamen ohne Endung reduziert. Dann wird in Blatt1 A:A nachgeschaut, ob der String dort existiert. Wenn nicht, wird die Datei gelöscht.
Was funktioniert denn nicht?
Gruß
Geist ist geil!
(Dies ist ein allgemeines Statement und nicht an bestimmte Personen gerichtet.)
Anzeige
AW: Dateien die nicht in der Liste sind löschen
30.06.2006 14:03:02
Thomas
Hallo
Es kommt die Sanduhr auf immer und ewig.... sonst passiert nix.
Thomas
AW: Dateien die nicht in der Liste sind löschen
30.06.2006 14:23:45
u_
Hallo,
bei mir klappt's
Gruß
Geist ist geil!
(Dies ist ein allgemeines Statement und nicht an bestimmte Personen gerichtet.)
PC neu gestartet und es geht! Danke!!! owT
30.06.2006 14:23:49
Thomas

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige