Arbeitsblätter im Windows-Explorer anzeigen

Aus einer Anzahl mehrseitiger Excel-Tabellen brauchen Sie ein bestimmtes Arbeitsblatt. Statt jede Datei einzeln zu öffnen, wollen Sie schon im Windows-Explorer die Namen der in den Excel-Dateien enthaltenen Arbeitsblätter sehen

Bei Windows 98 können Sie die gewünschten Informationen im Windows-Explorer abfragen. Klicken Sie dazu mit der rechten Maustaste auf eine XLS-Datei und rufen Sie den Kontextbefehl »Eigenschaften« auf. Der folgende Dialog präsentiert auf mehreren Registerkarten die Eigenschaften der Datei. Die Liste aller enthaltenen Arbeitsblätter finden Sie auf der Registerkarte »Dokumentinhalt«.

Der Explorer von Windows Me zeigt leider als Eigenschaften einer XLS-Datei nur einen Bruchteil der Informationen, die Windows 98 anbietet. Nach dem »Dokumentinhalt«, also einer Auflistung der enthaltenen Arbeitsblätter, suchen Sie vergebens. Diesen Mangel können Sie mit folgendem Skript für den Windows Scripting Host (WSH) beheben. Kopieren Sie das Skript von der Heft-CD (CHIP-Code lookex) in einen Texteditor (zum Beispiel Windows-Notepad) und speichern Sie es unter dem Namen LOOKEXCEL.VBS.



Dim objExcel
Dim objFileSystem
Dim objFile
Dim objWorksheet


Set listArgs = WScript.Arguments


If listArgs.Count = 0 Then
MsgBox äKeine Datei übergeben!ô
Else
Set objFileSystem = CreateObject(äScripting.FileSystemObjectô)
Set objFile = objFileSystem.GetFilet
(listArgs(0))
Set objExcel = Wscript.CreateObject(äExcel.Applicationô)
objExcel.Workbooks.Open(objFile.path)

For Each objWorksheet In objExcel.Workbooks(objFile.name).Worksheets
szMessage = szMessage & ä ä & objWorksheet.Name & Chr(10)
Next

objExcel.Quit
Set objExcel = nothing

MsgBox szMessage,,ôEnthaltene Arbeitsblätterô

End If




Als Parameter braucht dieses Skript den Namen der zu untersuchenden XLS-Datei, wobei das Objekt »listArgs« vom Typ »WScript.Arguments« die übergebenen Parameter enthält. Die Anzahl der übergebenen Parameter wird über »Count« ermittelt.

Wurde dem Skript ein Parameter übergeben, so erzeugt es das Objekt »objExcel« vom Typ »Excel.Application«. Dieses Objekt repräsentiert Excel selbst, und mit »objExcel.Workbooks.Open« öffnet sich die übergebene Datei. Nun werden in einer »For Each«-Schleife alle Arbeitsblätter in der Liste »Worksheets« der geöffneten Datei durchlaufen. Die Namen der Arbeitsblätter werden in einer Ausgabe zusammengefasst und mit Hilfe des Befehls »MsgBox« an den Anwender weitergegeben.

Verknüpfen Sie zuletzt das Skript LOOKEXCEL.VBS im Windows-Explorer mit dem Dateityp XLS (siehe Tipp "Dem Kontextmenü neue Befehle hinzufügen"). Jetzt können Sie es im Windows-Explorer aus dem Kontextmenü einer XLS-Datei aufrufen und die Namen der Arbeitsblätter ablesen.