Erreur "ActiveX component can't create object"......

cs_cissou06 Messages postés 124 Date d'inscription mercredi 2 juillet 2003 Statut Membre Dernière intervention 16 mai 2007 - 21 juin 2004 à 09:57
cs_cissou06 Messages postés 124 Date d'inscription mercredi 2 juillet 2003 Statut Membre Dernière intervention 16 mai 2007 - 21 juin 2004 à 11:02
Bonjour!

J'ai une sub qui lance une appli Visio et ouvre une copie d'un dessin avec sa biblio d'éléments graphiques associée.
Je cherche maintenant, dans une autre sub, à récupérer la référence de la bibliothèque d'éléments graphiques et j'ai une erreur "ActiveX component can't create object" qui se produit dans mon code VBA d'Excel:

Dim stnObj As Visio.Document
Set stnObj = Visio.Application.Documents.Item("Gabarit.vss")

J'ai déjà ajouté dans le menu Tools => Références Visio5.0 Type Library pour pouvoir accéder à des objets Visio... Comme ça ne marchait pas j'ai ajouté tout ce qui commençait par Visio: Visio Graph2.0, Visio Save As HTML, Visio Utilities Object, VisioDWG 1.0 Type Library etc... ça n'a rien changé. Je ne comprends pas ce qu'il faut faire.... Est-ce qu'il y a une autre façon de récupérer la référence du fichier de Visio?

Quelqu'un peut m'aider? Merci d'avance!
A voir également:

2 réponses

cs_PhilippeE Messages postés 437 Date d'inscription mercredi 18 décembre 2002 Statut Membre Dernière intervention 10 août 2010 2
21 juin 2004 à 10:53
C'est un .tlb que tu as mis sur ta machine ?
Dans ce cas c'est normal que tu puisses le voir, mais que tu ne puisses pas l'exécuter.

Les fichiers .tlb contiennent les définitions du modèle objet, tu n'as en gros que les entêtes des objets, fonctions, constantes.
0
cs_cissou06 Messages postés 124 Date d'inscription mercredi 2 juillet 2003 Statut Membre Dernière intervention 16 mai 2007 1
21 juin 2004 à 11:02
Non, ce n'est pas le cas... Merci quand même...

En fait j'ai été vraiment stupide! Il suffisait de faire passer mon objet qui contient la référence de mon appli Visio, créée dans la 1ère sub, en variable globale... Je n'avais donc plus qu'à faire:

Set stnObj = MyAppliVisio.Documents.Item("Gabarit.vss")

Et là, ça marche très bien!
0