Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Vba: CreateObject et GetObject(Class:="Word.Application")

2 réponses
Avatar
Jac
Bonjour à tous,

dans une macro j'ouvre un certaine nombre de documents Word. Quand j'utilise
CreateObject, je me retrouve avec autant de sessions Word que de fichiers
ouverts. Quand j'utilise Getobject, j'ouvre les fichiers Word dans la même
session.
Comment faire pour tester si Word est déjà ouvert afin de choisir entre
Create... et Get... ?

Merci d'avance à qui me mettra sur la voir.

Jac

2 réponses

Avatar
Jacques93
Bonjour Jac,

Peut être, si j'ai bien compris la question :

Option Explicit

Dim wd As Object

Private Sub TestWord()
On Error Resume Next

Err.Clear
Set wd = GetObject(, "Word.application")
If Err.Number = 429 Then
MsgBox "Word n'est pas lancé"
ElseIf Err.Number > 0 Then
MsgBox "Erreur : " & Err.Number & vbCrLf & Err.Description
Else
MsgBox "Word est déjà lancé"
End If
On Error GoTo 0
End Sub

Bonjour à tous,

dans une macro j'ouvre un certaine nombre de documents Word. Quand j'utilise
CreateObject, je me retrouve avec autant de sessions Word que de fichiers
ouverts. Quand j'utilise Getobject, j'ouvre les fichiers Word dans la même
session.
Comment faire pour tester si Word est déjà ouvert afin de choisir entre
Create... et Get... ?

Merci d'avance à qui me mettra sur la voir.

Jac





--
Cordialement,

Jacques.

Avatar
JB
Bonsoir,

Set oApp = CreateObject("Word.Application")
oApp.Visible = True
Set doc = oApp.Documents.Open(nf)
....
....
oApp.Quit ' Quitte Word

http://boisgontierj.free.fr/fichiers/Ole_Excel_word_outlook.zip

JB


On 25 mar, 18:39, "Jac" wrote:
Bonjour à tous,

dans une macro j'ouvre un certaine nombre de documents Word. Quand j'util ise
CreateObject, je me retrouve avec autant de sessions Word que de fichiers
ouverts. Quand j'utilise Getobject, j'ouvre les fichiers Word dans la m ême
session.
Comment faire pour tester si Word est déjà ouvert afin de choisir ent re
Create... et Get... ?

Merci d'avance à qui me mettra sur la voir.

Jac