Page 1 sur 1

[R] Verifier si l'objet est toujours ouvert.

Posté : mar. 16 févr. 2010 21:08
par Morphee
Bonjour,

Après avoir cherché plusieurs heures :? la solution je m'en remet à vous. :wink:

Je créer 2 objets dans mon script en ouvrant un document Excel et Internet Explorer en utilisant ces 2 lignes de code :

Code : Tout sélectionner

$oExcel = _ExcelBookOpen($Excel_Path, 1)
ou

Code : Tout sélectionner

Global $oIE = _IECreate($sUrl,0,1)
J'aimerais savoir en faite comment tester si mon application ($oExcel ou $oIE) est toujours active et n'a pas été fermé ?

Merci d'avance pour le coup de main. :D

Re: [..] Verifier si l'objet est toujours ouvert.

Posté : mar. 16 févr. 2010 22:16
par Ahbadiane
Bonsoir Morphee,

Je vais répondre pour Excel
Pour savoir si ton objet existe :

Code : Tout sélectionner

If IsObj($oExcel) Then ...
Pour savoir si Excel est lancé (cas où tu l'ouvres avec ton programme et l'utilisateur ferme Excel par exemple):

Code : Tout sélectionner

If IsObj($oExcel) And IsObj($oExcel.Application) Then ...
Si tu veux savoir si une feuille est active :

Code : Tout sélectionner

If IsObj($oExcel) And IsObj($oExcel.Application) And IsObj($oExcel.Application.ActiveSheet) Then  ...

Re: [R] Verifier si l'objet est toujours ouvert.

Posté : mer. 17 févr. 2010 00:20
par Morphee
Merci beaucoup pour ta réponse clair, c'est tout à fait ce que je cherchais :wink:

Re: [..] Verifier si l'objet est toujours ouvert.

Posté : mer. 17 févr. 2010 00:24
par Tlem
N'oubliez pas la balise [R] dans le titre de votre premier message si votre sujet est résolu.

Re: [R] Verifier si l'objet est toujours ouvert.

Posté : mer. 17 févr. 2010 00:45
par Morphee
Pour info, j'utilise le code suivant pour Internet Explorer :

Code : Tout sélectionner

$hwnd = _IEPropertyGet($oIE, "hwnd")
If $hwnd = 0 Then ExitLoop
Car la méthode cité plus haut ne fonctionne pas avec IE.