OVH Cloud OVH Cloud

VBA: Excel déja actif?

1 réponse
Avatar
Stach
Bonsoir à tous,

Comment puis-je faire pour dire:

Si Excel n'est pas ouvert, alors ouvrir Excel. Si il est dèjà ouvers, alors
utiliser l'instance Excel déjà en cours.

En fait, je demande tout ça car lorsque j'ouvre pour la 2ème fois
consécutive un tableau croisé dynamique, ça plante...

Voici une partie de mon code pour l'ouverture d'Excel. Où sont les erreurs
svp?:

Dim MyXL As Object, xlapp As Object

'Ouverture d'Excel
On Error Resume Next

Set MyXL = GetObject(, "Excel.Application")
If Err.Number <> 0 Then
Err.Clear
xlapp = CreateObject("Excel.Application")
Else
xlapp = GetObject(, "Excel.Application")
End If

Merci de m'aider.

1 réponse

Avatar
3stone
Salut,

"Stach"
| Comment puis-je faire pour dire:
|
| Si Excel n'est pas ouvert, alors ouvrir Excel. Si il est dèjà ouvers, alors
| utiliser l'instance Excel déjà en cours.
|
| En fait, je demande tout ça car lorsque j'ouvre pour la 2ème fois
| consécutive un tableau croisé dynamique, ça plante...
|
| Voici une partie de mon code pour l'ouverture d'Excel. Où sont les erreurs
| svp?:


'Ouverture d'Excel
On Error Resume Next

Set MyXL = GetObject(, "Excel.Application")

If Err.Number <> 0 Then
Err.Clear
Set xlapp = CreateObject("Excel.Application")
Else
Set xlapp = GetObject(, "Excel.Application")
End If

'éventuellement...
xlapp.Visible = True


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/