Domino 9 und frühere Versionen > ND6: Entwicklung

Abfrage per Schleife ob Excel geschlossen wurde

(1/1)

Schnubbel:
Hallo liebe Gemeinde,

ich versuche per LS abzufangen, ob das Programm Excel geschlossen wurde. Excel wird zuerst über LS gestartet, die Datei wird auf der Festplatte gespeichert, der User kann das Dokument verändern, speichert es und schließt Excel. Und hier hängt sich Notes dann auf ( es kommt wohl nicht aus meiner Schleife raus). Solange Excel offen ist, ist Notes eingefroren (was gewollt ist).

Ich habe das gleiche mit Word gemacht und hier klappt es wunderbar. Daher bin ich etwas verwirrt. Im Grunde habe ich nur das Wort "Word" durch "Excel" ersetzt.

Der Vollständigkeithalber:
Nachdem Excel geschlossen ist, holt sich Notes das Excel-Dokument und packt es in eine Datenbank.


--- Code: ---Dim xlAppTest As Variant
While 1<> 2
Sleep 1
On Error Goto RunDokumentAdd
Set xlAppTest = GetObject(, "excel.application")
Wend

--- Ende Code ---

Ich bin wie immer für jeden Tipp, Hinweis und Schubs in die richtige Richtung dankbar. (und hoffentlich braucht keiner eine Kristallkugel;))

LG
Thorsten

m3:
Aus der Designer-Hilfe:

--- Zitat ---If the application specified by appName is not already running, GetObject starts it before retrieving the OLE Automation object. References to the object remain valid only while the application is running. If the application terminates while you are using the object reference, LotusScript generates a run-time error.
--- Ende Zitat ---

Klar kommt es aus der Schleife nicht raus, wenn es jedes Mal Excel neu startet.

Schnubbel:
Das macht vor dem Hintergrund Sinn. Ich frage mich aber dann, warum das ganze mit Word tadelos funktioniert und mit Excel nicht. Das müsste doch dann auch Word erneut starten, was es aber nicht tut.

Da ich die Dateinamen vorgebe, frage ich ihn der Schleife jetzt einfach ab, ob der Dateiname des Objekts noch so ist wie ich ihn haben wollte, damit gehts auch. Danke für den Hinweis @ martin

TRO:

--- Zitat von: m3 am 10.11.11 - 15:27:33 ---Aus der Designer-Hilfe:

--- Zitat ---If the application specified by appName is not already running, GetObject starts it before retrieving the OLE Automation object. References to the object remain valid only while the application is running. If the application terminates while you are using the object reference, LotusScript generates a run-time error.
--- Ende Zitat ---

Klar kommt es aus der Schleife nicht raus, wenn es jedes Mal Excel neu startet.

--- Ende Zitat ---

Hallo m3, da musst Du aber aber auch noch die darauffolgende Zeile aus der Designer-Hilfe zitieren:

--- Zitat ---If pathName is the empty string ("") or is missing, GetObject retrieves the currently active object of the specified class. If no object of that class is active, an error occurs.

--- Ende Zitat ---

d.h. wenn kein Excel läuft, wird auch kein Excel gestartet und es wird ein Fehler geworfen, den man abfangen kann.

Thomas

m3:
Na geh, musst Du alles verraten?

Ich finde es ja "gewagt", sich quasi auf eine implizite Fehler-Exception zu verlassen, anstatt einfach xlAppTest zu checken.

Navigation

[0] Themen-Index

Zur normalen Ansicht wechseln