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.