Dateien automatisch öffnen und schließen?

Hallo,

ich möchte aus einem Netzwerk alle Dateien (*.doc,*.xls,…) automatisch öffnen und wieder schließen lassen. Wer weiss Rat?

gruß quem

Versuchs mal hiermit (ist nur ein kurzes Beispiel und kann sicherlich noch erweitert werden):

Option Explicit

Sub AllFiles()
Dim Dateiname$, ExApp As Excel.Application, ExWb As Excel.Workbook, WdApp As Word.Application, WdDoc As Word.Document
Dim Dirname$

Dirname = „C:\daten“
Set WdApp = New Word.Application
Set ExApp = New Excel.Application

Dateiname = Dir(Dirname & „*.doc“)

Do Until Dateiname = „“
Set WdDoc = WdApp.Documents.Open(Dirname & Dateiname)
'Mach hier was du willst mit dem Dokument
WdDoc.Save
WdDoc.Close
Set WdDoc = Nothing
Dateiname = Dir
Loop

Dateiname = Dir(„C:\daten*.xls“)
Do Until Dateiname = „“
Set ExWb = ExApp.Workbooks.Open(Dirname & Dateiname)
'Mach hier was du willst
ExWb.Save
ExWb.Close
Set ExWb = Nothing
Dateiname = Dir
Loop

WdApp.Quit
Set WdApp = Nothing
ExApp.Quit
Set ExApp = Nothing
End Sub

ACHTUNG! Da das hier alles automatisch und ohne Fehlerbehandlung (kann man ja noch hinzufügen) abläuft, würde ich das erstmal so testen.
Besondere Vorsicht ist bei Dokumenten geboten, welche ihrerseits wieder Makros welche automatisch starten beinhalten. Eventuell sollte man also vorher die Ausführung von Makros in der jeweiligen Anwendung verbieten.

Gruß
Daniel

Für was?

Dateien öffnen (und nicht nur Office-Dateien) kannst du mit der ShellExecute -API, das schließen ist schon schwieriger. Du könntest alle Handles der sichtbaren Fenster ermitteln und sie schließen (das ermitteln unter http://www.activevb.de/tipps/vb6tipps/tipp0123.html , das schließen mit der DestroyWindow -API).

Der Doc!