Über die Jahre sammeln sich viele Word-Dokumente in verschiedenen Ordnern an. Eine druckbare Bestandsliste gibt einen schnellen Überblick über den Textvorrat

Das zum Erstellen dieser praktischen Liste nötige Durchforsten des Rechners ist sehr mühsam. Sie müssen es aber gar nicht selbst erledigen: Lassen Sie Windows schuften. Die Bordmittel enthalten die nötigen Werkzeuge.

Eigenes Tool programmieren
Unser Visual-Basic-Skript “LISTDOC.VBS” erzeugt eine Liste der Dateien inklusive Pfadangabe. Kopieren Sie einfach den Quelltext in einen Texteditor. Speichern Sie die Datei unter dem angegebenen Namen.

Option Explicit
Dim listArgs
Dim objFileSystem
Dim objFolder, objSubFolder,
objFile, objCvsFile
Dim strFolder
Dim strCsvFile
Set listArgs = WScript.Arguments
Set objFileSystem = CreateObject("Scripting.FileSystemObject")
If listArgs.Count = 0 Then
strFolder = InputBox("Name des zu durchsuchenden Ordners?","Ordner auswählen", "C:\")
Else
strFolder = listArgs(0)
End If
strCsvFile = "C:\Temp\ListeDOC.csv"
strCsvFile = InputBox("Name und Pfad der zu erstellenden Liste?","CVS-Datei benennen", strCsvFile)
If Right(strCsvFile,4) <> ".csv" Then
strCsvFile = strCsvFile & ".csv"
End If
Set objCvsFile = objFileSystem.
CreateTextFile(strCsvFile1,true)
objCvsFile.Write "Name der Datei" & ";" & "Pfad der Datei" & vbNewLine
listFiles strFolder
objCvsFile.Close
MsgBox "Die Datei " & strCsvFile & " wurde erstellt!"
WScript.Quit
Function listFiles(strFolder)
If objFileSystem.FolderExists(strFolder) Then
Set objFolder = objFileSystem.
GetFolder(strFolder)
For Each objFile In objFolder.Files
If UCase(Right(objFile.Name,4)) = ".DOC" Or UCase(Right(objFile.Name,5)) = ".DOCX" Then
objCvsFile.Write objFile.Name & ";" & objFolder.Path & vbNewLine
End If
Next
For Each objSubFolder In objFolder.SubFolders
listFiles objSubFolder.path
Next
Else
MsgBox "Angegebener Ordner " & strFolder & "existiert nicht!"
End If
End Function

Übersichtsliste anlegen
Starten Sie das Skript im Windows Explorer mit einem Doppelklick. Im ersten Dialog geben Sie den Ordner ein, den Sie inklusive aller Unterordner nach Word-Dokumenten durchforsten möchten. In einem weiteren Dialog erkundigt sich das Skript nach Pfad und Namen der Ausgabedatei. “LISTDOC.VBS” durchsucht daraufhin den angegebenen Ordner und alle ihm untergeordneten Verzeichnisse nach DOC- und DOCX-Dateien und speichert sie unter dem entsprechenden Namen als CSV-Datei ab. Das CSV-Format (Character Separated Values) eignet sich zum Sichern einfach strukturierter Daten in Textform. Excel kann es problemlos öffnen.

Sie können LISTDOC.VBS auch starten, indem Sie auf Ihrem Desktop eine Verknüpfung auf die Datei ablegen und mit der Maus das Symbol eines Ordners aus dem Windows Explorer auf das Symbol dieser Verknüpfung ziehen. In diesem Fall entfällt die erste Rückfrage und das Programm durchsucht automatisch den auf das Symbol gezogenen Ordner.

Listing nachvollziehen
Für Programmierer erläutern wir noch die Funktionsweise des Skripts: Die notwendigen Informationen erfragt es über den Befehl “InputBox()” vom Anwender. Das Programm schreibt den gewünschten Ordner in die Variable “strFolder” und den Namen der CSV-Ausgabedatei in “strCsvFile”. Anschließend erzeugt der Befehl “Set objCvsFile = objFileSystem.CreateTextFile( strCsvFile,true)” das Objekt “objCvsFile ” für die CVS-Datei. Die Methode “Write” dieses Objektes schreibt zuerst die Beschriftungen der einzelnen Spalten in die Datei, bevor die Funktion “list- Files()”, der “strFolder” als Parameter übergeben wird, den übergebenen Ordner nach DOC- und DOCX-Dateien durchsucht und in der Datei auflistet.

Ähnliche Beiträge: