Das Notes Forum

Lotus Notes / Domino Sonstiges => OLE/COM-Programmierung => Thema gestartet von: Silver am 21.04.08 - 11:39:09



Titel: Abfrage ob Word-Datei existiert oder bereits geöffnet
Beitrag von: Silver am 21.04.08 - 11:39:09
Hallo!

Gibt es die Möglichkeit abzufragen, ob eine bestimmte Word-Datei momentan/aktuell in Benutzung ist bzw. ob eine solche in einem vorgegebenen Verzeichnis existiert.

Ich habe momentan leider nur die Abfrage gefunden, welche auf das geöffnete Word-Programm zielt:

Set word = GetObject("", "Word.Application")
If Err = 208 Then

Hintergrund:
Ich befülle ein Word-Vorlagendatei (*.dot) mit Felder aus Notes. Damit mehrere Personen gleichzeitig auf diese Vorlagendatei zugreifen können - ohne diese schreibgeschützt öffnen zu müssen speichere ich sofort nach dem Öffnen das befüllte Word-Dokument in eine "tmp.doc".

Nun muss ich aber nochmals abprüfen ob ein und dieselbe Person die tmp.doc bereits geöffnet hat, um diese vorher schliessen zu lassen oder unter einem anderen Namen abzuspeichern. Momentan muss Word komplett geschlossen werden, damit die Vorlagendatei befüllt werden kann (also auch evtl. andere geöffnete Dokumente).

Hat jemand eine Idee?  ???


Titel: Re: Abfrage ob Word-Datei existiert oder bereits geöffnet
Beitrag von: Axel am 21.04.08 - 11:45:20
Über ActiveDocument.Name bekommst du den Namen des gerade aktiven Dokumentes in Word.

Bsp.:

Set word = GetObject("", "Word.Application")
MsgBox word.ActiveDocument.Name


Axel


Titel: Re: Abfrage ob Word-Datei existiert oder bereits geöffnet
Beitrag von: Silver am 21.04.08 - 13:15:01
vielen dank für die info...

aber wenn ich das dokument bereits einmal aus der vorlage erstellt habe und die tmp.doc in word noch offen habe und danach eine andere word-datei bearbeite ist diese aktiv.

d. h. ich kann meine tmp.doc nicht abfragen.

es erscheint dann die gerade geöffnete, obwohl in word zwei geöffnet sind - tmp.doc eben momentan nur nicht aktiv.


Titel: Re: Abfrage ob Word-Datei existiert oder bereits geöffnet
Beitrag von: DerAndre am 21.04.08 - 13:20:37
Hilft Dir sowas?

If Dir("C:\Temp\tmp.doc") <> "" Then


Titel: Re: Abfrage ob Word-Datei existiert oder bereits geöffnet
Beitrag von: Axel am 21.04.08 - 13:33:31
Über Application.Documents bekommst du eine Auflistung aler geöffneten Dokumente.

Man müsste das Ganze nur noch nach LotusScript übersetzen.

Dim WordDocs As Variant

Set word = GetObject("", "Word.Application")
Set WordDocs = word.Documents
....


Axel


Titel: Re: Abfrage ob Word-Datei existiert oder bereits geöffnet
Beitrag von: Axel am 21.04.08 - 13:39:26
Ich hab's mal auf die Schnell probiert.

Code:
Dim objWord As Variant
Dim WordDocs As Variant

Set objWord = GetObject("", "Word.Application")
Set WordDocs = objWord.Documents

Forall x In WordDocs
Msgbox x.Name
End Forall

Du musst dann nur die Rückgaben entsprechend auswerten.


Axel


Titel: Re: Abfrage ob Word-Datei existiert oder bereits geöffnet
Beitrag von: DerAndre am 21.04.08 - 14:17:08
Örg, falsche Sprache... Sorry


Titel: Re: Abfrage ob Word-Datei existiert oder bereits geöffnet
Beitrag von: Silver am 22.04.08 - 07:44:17
Danke nochmals allen Helfern.  ;D

Habe das Problem nun über die dir-Abfrage (existiert Datei) gelöst, da ich Probleme hatte die offenen Word-Dokumente abzufragen, wenn ich mehrere Word-Sessions geöffnet hatte.


Titel: Re: Abfrage ob Word-Datei existiert oder bereits geöffnet
Beitrag von: eknori am 22.04.08 - 07:46:41
Zitat
da ich Probleme hatte die offenen Word-Dokumente abzufragen, wenn ich mehrere Word-Sessions geöffnet hatte.

Das lässt sich über die Windows API bewerkstelligen ...


Titel: Re: Abfrage ob Word-Datei existiert oder bereits geöffnet
Beitrag von: Axel am 22.04.08 - 08:36:47
Gibt es die Möglichkeit abzufragen, ob eine bestimmte Word-Datei momentan/aktuell in Benutzung ist bzw. ob eine solche in einem vorgegebenen Verzeichnis existiert.

Nun muss ich aber nochmals abprüfen ob ein und dieselbe Person die tmp.doc bereits geöffnet hat, um diese vorher schliessen zu lassen oder unter einem anderen Namen abzuspeichern.

Hier hinkt die Lösung mit Dir aber ganz gewaltig. Du kannst nur abfragen, ob die Datei bereits vorhanden ist, aber nicht ob sie aktuell in Word offen ist.

Axel


Titel: Re: Abfrage ob Word-Datei existiert oder bereits geöffnet
Beitrag von: m3 am 22.04.08 - 08:48:53
Ich befülle ein Word-Vorlagendatei (*.dot) mit Felder aus Notes. Damit mehrere Personen gleichzeitig auf diese Vorlagendatei zugreifen können - ohne diese schreibgeschützt öffnen zu müssen speichere ich sofort nach dem Öffnen das befüllte Word-Dokument in eine "tmp.doc".
Ähhh. Wenn ein .dot korrekt benutzt wird, entsteht daraus doch automatisch ein neues .doc file. Da spielt das doch keine Rolle, ob das .dot schreibgeschützt ist, oder nicht. Oder ist es schon zu lange her, dass ich mich intensiver mit Word beschäftigt habe?


Titel: Re: Abfrage ob Word-Datei existiert oder bereits geöffnet
Beitrag von: Axel am 22.04.08 - 09:19:48
Ähhh. Wenn ein .dot korrekt benutzt wird, entsteht daraus doch automatisch ein neues .doc file. Da spielt das doch keine Rolle, ob das .dot schreibgeschützt ist, oder nicht. Oder ist es schon zu lange her, dass ich mich intensiver mit Word beschäftigt habe?

Martin, dass siehst du völlig richtig.

Axel