Bonjour à tous,

Par le biais de VBA je cherche à contrôler une autre application.
Vu que l'autre application est utilisée pour visualiser les données autrement (c'est de la carto), je ne voudrais pas ouvrir X fois la même fenêtre.
D'où l'appel d'une procédure pour chaque bouton appelant la visualisation cartographique:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
Sub Gestion_logiciel_truc()
    ' teste si une fenêtre de ce logiciel est déjà ouverte
    Set Truc_obj = GetObject(, "Truc.Application")
    ' si ce n'est pas le cas, ouvrir une session
    If Truc_obj = Null Then
        'Ouverture du .wor et récupération de la main sur ce fichier
        ShellExecute 0, "open", CurrentProject.Path & "\data_carto\Carto_Mollusques.WOR", vbNullString, vbNullString, 3
        Set Truc_obj = GetObject(, "Truc.Application")
    End If
End Sub
Le problème est que la ligne Set Truc_obj = GetObject(, "Truc.Application") me donne le message suivant aucune fenêtre du logiciel truc n'est ouverte:
Un composant activeX ne peut créer d'objet
. Ce ne doit pas être la bonne méthode pour tester si l'application est ouverte mais je ne vois pas comment m'y prendre autrement...

Vous n'auriez pas une piste?
(au fait, c'est du Access 2000)