Créer un objet Word.Application quand Word est déjà lancé...

Résolu
cs_herve06 Messages postés 17 Date d'inscription jeudi 17 novembre 2011 Statut Membre Dernière intervention 28 novembre 2011 - 22 nov. 2011 à 23:29
cs_herve06 Messages postés 17 Date d'inscription jeudi 17 novembre 2011 Statut Membre Dernière intervention 28 novembre 2011 - 22 nov. 2011 à 23:49
Bonsoir,

En lançant ma macro EXCEL, je m'aperçois que la création d'un objet Word.Application n'est pas possible lorsque WORD est déjà lancé. Si je quitte Word pendant que la macro bloque, alors WORD se lance et tout va bien. Voici le code (on ne peut plus classique):

Set AppWord = CreateObject("Word.Application") ' Plante si Word est déjà lancé...
AppWord.Visible = True

J'ai bien trouvé un module qui teste la présence de WORD et qui utilise soit "CreateObject" soit "GetObject" selon le cas. Mais ce module fonctionne sur Windows et je suis sur MacOS...

Des idées ?

Merci d'avance,
Hervé

1 réponse

cs_herve06 Messages postés 17 Date d'inscription jeudi 17 novembre 2011 Statut Membre Dernière intervention 28 novembre 2011
22 nov. 2011 à 23:49
Oops! Il suffisait d'intercepter l'erreur 429.

'
' Lancement de Word (utilise GetObject si Word est déjà lancé, et CreateObject dans le cas contraire)
'
On Error Resume Next
Set AppWord = GetObject(, "Word.Application")
If Err.Number = 429 Then
Err.Clear
Set AppWord = CreateObject("Word.application")
End If
AppWord.Visible = True

Désolé...
Hervé
3
Rejoignez-nous