Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Dateien mit Kick auf Button löschen

Forumthread: Dateien mit Kick auf Button löschen

Dateien mit Kick auf Button löschen
Helmut
Liebe Forenmitglieder!
Ich habe vor einiger Zeit eine Lösung bekommen, wie ich in einem definierten Bereich, Partition (Laufwerksbuchstabe Q) direkt sich darunter befindente Dateien (genaue Bezeichnungen sind bekannt) per Mausklick in einem Exelfile auf einen Button löschen kann.
Die Dateien in der Partition Q: enden immer mit _exp.xml und _imp.xml
Hier der Script:

Private Sub CommandButton9_Click()
Dim strVorlage As String
Dim strLöschen As String
Dim strDatei As String
'Pfad, in dem die Dateien liegen
Const strPfad = "Q:\"
'Dateien ohne "_exp.xml" und "_imp.xml", mit "#" am Ende
strVorlage = "M_DU_BG#" & _
"M_DU_ET#" & _
"M_DO_ET#" & _
"K_DU_BG#" & _
"K_DU_ET#" & _
"K_DO_ET#" & _
"S_DU_ET#" & _
"S_DU_BG#" & _
"S_DO_ET#" & _
"Ma_DU#" & _
"Ma_DO#" & _
"Ma_DU_BG#" & _
"A_DO#" & _
"A_DU#"
'String, der alle Dateinamen enthält nach dem Muster:
'"#M_DU_BG_exp.xml#M_DU_ET_exp.xml# .... #M_DU_BG_imp.xml#....#
strLöschen = "#" & Replace(strVorlage, "#", "_exp.xml#") & Replace(strVorlage, "#", "_imp.xml#")
'Erste Datei aus Verzeichnis ermitteln
strDatei = Dir(strPfad)
'so lange, bis alle Dateien ermittelt wurden
Do Until strDatei = ""
'Wenn "#Dateiname#" im Dateinamen- String vorhanden ist, dann die Datei löschen
If InStr(strLöschen, "#" & strDatei & "#") > 1 Then Kill strPfad & strDatei
'und nächste Datei ermitteln
strDatei = Dir
Loop
End Sub

Das Problem ist, dass die erste Datei in der oberen Aufzählung, also die mit dem Namen
M_DU_BG_exp.xml
mit dem Mausklick auf den Button nicht gelöscht wird und leider immer übrig bleibt.
Kann mir hier jemand weiterhelfen, warum das so ist und wie der Script abzuändern ist, dass auch diese eine Datei gelöscht wird?
Danke im Voraus,
Helmut
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Dateien mit Kick auf Button löschen
13.02.2006 15:38:42
u_
Hallo,
warum so kompliziert?
Kill "c:\*_imp.xlm bzw.
Kill "c:\*_exp.xml"
sollte ausreichen um alle Dateien zu löschen.
Gruß
Geist ist geil!
AW: Dateien mit Kick auf Button löschen
13.02.2006 16:29:08
Helmut
hallo u_,
das kann ich nicht machen. habe leider vergessen zu schreiben, dass im Bereich Q: auch andere xml-dateien stehen, die nicht gelöscht werden dürfen.
luschi hat aber die lösung parat gehabt. ich danke auch dir recht schön.
liebe grüße,
helmut
Anzeige
AW: Dateien mit Kick auf Button löschen
13.02.2006 15:41:57
Luschi
Hallo Helmut,
der Fehler liegt in folgender Zeile:
If InStr(strLöschen, "#" & strDatei & "#") &gt 1 Then Kill strPfad & strDatei
ändere sie ab in:
If InStr(strLöschen, "#" & strDatei & "#") &gt 0 Then Kill strPfad & strDatei 'oder
If InStr(strLöschen, "#" & strDatei & "#") &gt= 1 Then Kill strPfad & strDatei
Für ""#M_DU_BG_exp.xml" liefert die Instr-Funktion den gefundenen Positions-Wert 1.
Du willst Dateien aber nur Löschen, die den Positions-Wert großer 1 haben.
Gruß von Luschi
aus klein-Paris
Anzeige
AW: Dateien mit Kick auf Button löschen
13.02.2006 16:26:50
Helmut
hallo luschi,
super!! ich danke dir recht schön!! hast mir sehr geholfen!
liebe grüße,
helmut
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige