Das Archiv des Excel-Forums

Unterordner per Makro löschen

Bild

Betrifft: Unterordner per Makro löschen
von: Andi_H

Geschrieben am: 22.09.2003 11:12:34

Hallo zusammen,

mit untenstehenden Code lösche ich Backupdateien von unserem Server.
Die Backups befinden sich alle in unterordner. Leider weiß ich nicht wie ich diese Unterordner löschen kann. Die Namen der Ordner sind variabel, da sich diese aus den Seriennummern der Rechner generieren.
Kann mir da jemand einen Tip geben wie ich ie Unterordner aus R:\pcsbkclt raus bekomme.

Dim i As Long
verz = "R:\pcsbkclt"
ChDir verz
With Application.FileSearch
.NewSearch
.LookIn = verz
.SearchSubFolders = True
.FileType = msoFileTypeAllFiles
.Execute
For i = 1 To .FoundFiles.Count
Kill .FoundFiles(i)
Next i
End With
End Sub

Vielen Dank vorab.

Gruß

Andi
Bild


Betrifft: AW: Unterordner per Makro löschen
von: PeterA
Geschrieben am: 22.09.2003 13:17:06

Hallo Andi !

SChau dir mal in der Hilfe die "DeleteFolder-Methode" an. Soweit ich das gesehen habe kannst du da Verzeichnisse mit dsamt dem Inhalt löschen und ersparst dir die Schleife mit dem KILL.

Ciao Peter


Bild


Betrifft: AW: Unterordner per Makro löschen
von: Andi_H
Geschrieben am: 22.09.2003 13:26:00

Hallo Peter,

danke für den Tip, leider finde ich in der Hilfe nichts zu Delete-Folder. Ich habe zum löschen von ordnern RMDIR gefunden, leider klappt folgender Code nicht

verz = "R:\pcsbkclt""
RmDir verz

in der Zeile rmdir erhalte ich einen Laufzeitfehler 75, kann jedoch mit der Hilfe zu diesem Fehler nicht viel anfangen.

Kennst du dich mit RMDir aus??

Gruß

ANdi


Bild


Betrifft: RmDir - noch offen
von: ANdi_H
Geschrieben am: 22.09.2003 13:32:34

der o.g. Runtimeerror hat sich erledigt, der entsteht solange der Ordner noch Dateien/Unterordner beinhaltet. bei exakter angabe des Ordners funktioniert das Makro.
Leider kenne ich die Ordnernamen nicht.
Kennt jemand eine Möglichkeit mit RmDir alle Unterordner eines Ordners zu löschen ohne diese mit dem Namen anzusprechen??

Danke und Gruß


Bild


Betrifft: AW: RmDir - noch offen
von: PeterA
Geschrieben am: 22.09.2003 15:41:01

Hallo Andi


Hier der Hilfstext aus dem VBA Editor :

DeleteFolder-Methode


Beschreibung

Löscht einen angegebenen Ordner und seinen Inhalt.

Syntax

Objekt.DeleteFolder Ordnerspez[, erzwingen]

Die Syntax der DeleteFolder-Methode besteht aus folgenden Teilen:

Teil Beschreibung
Objekt Erforderlich. Immer der Name eines FileSystemObject.
Ordnerspez Erforderlich. Der Name des zu löschenden Ordners. Die Ordnerspez kann in der letzten Pfadkomponente Platzhalterzeichen enthalten.
erzwingen Optional. Boolescher Wert, der True ist, wenn Ordner mit Schreibschutzattribut gelöscht werden sollen, bzw. der False ist (Voreinstellung), wenn sie nicht gelöscht werden sollen.



Anmerkungen

Die DeleteFolder-Methode macht keinen Unterschied zwischen Ordnern mit und solchen ohne Inhalt. Der angegebene Ordner wird unabhängig von seinem Inhalt gelöscht.

Es kommt zu einem Fehler, wenn keine übereinstimmenden Ordner gefunden werden. Die DeleteFolder-Methode hält beim ersten aufgetretenen Fehler an. Es wird nicht versucht, Änderungen zurückzusetzen oder aufzuheben, die vor dem Auftreten eines Fehlers durchgeführt wurden.


Bild


Betrifft: Danke
von: Andi_H
Geschrieben am: 22.09.2003 16:00:48

Hi Peter,

vielen Dank,

dann werd ic hda jetzt mal rumprobieren.

gruß

andi


 Bild