Partage module de classe

Orgeat_2006 8 Messages postés jeudi 28 septembre 2006Date d'inscription 6 octobre 2006 Dernière intervention - 28 sept. 2006 à 13:35 - Dernière réponse :  Rabe
- 23 janv. 2017 à 11:44
Bonjour,

La question a déjà été posée en 2003 sans réponse apparemment.
Je retente :

Sous VBA Excel, comment peut-on partager un module de classe avec d'autres projets ?
J'ai essayé macro complémentaire .xla, Référence puis Dim as New mais la classe n'est pas reconnue.
Apparemment, on pourrait accéder aux modules mais pas aux modules de classe ...

Merci d'avance !
Afficher la suite 

7 réponses

Répondre au sujet
olixelle 520 Messages postés vendredi 30 juillet 2004Date d'inscription 3 mars 2008 Dernière intervention - 28 sept. 2006 à 14:00
0
Utile
je sais que sous VBA word, on peut résoudre le pb en mettant dans le normal.dot les macros & classes auquelles on souhaite accéder de partout.

Je ne connais pas l'équivalent pour excel par contre

Rollerman
Commenter la réponse de olixelle
Orgeat_2006 8 Messages postés jeudi 28 septembre 2006Date d'inscription 6 octobre 2006 Dernière intervention - 28 sept. 2006 à 14:55
0
Utile
Ce serait le PERSO.XLS ?
Commenter la réponse de Orgeat_2006
olixelle 520 Messages postés vendredi 30 juillet 2004Date d'inscription 3 mars 2008 Dernière intervention - 28 sept. 2006 à 15:06
0
Utile
possible je ne sais pas

Rollerman
Commenter la réponse de olixelle
Orgeat_2006 8 Messages postés jeudi 28 septembre 2006Date d'inscription 6 octobre 2006 Dernière intervention - 28 sept. 2006 à 17:25
0
Utile
J'ai un peu avancé, en déclarant le module de classe public (parce qu'il était private).
Mais sur :
Dim essai as New maClasse
j'ai une erreur du genre "Mauvaise utilisation de New".
Pourtant maintenant, je vois maClasse dans l'aide à la frappe, ainsi que ses propriétés et méthodes ...
Alors qu'est-ce qui ne lui va pas ?
Commenter la réponse de Orgeat_2006
Orgeat_2006 8 Messages postés jeudi 28 septembre 2006Date d'inscription 6 octobre 2006 Dernière intervention - 28 sept. 2006 à 17:43
0
Utile
En fait, le module de classe est PublicNotCreatable.
Super ...
Alors je fais comment, pour sélectionner PublicCreatable ?
Commenter la réponse de Orgeat_2006
Orgeat_2006 8 Messages postés jeudi 28 septembre 2006Date d'inscription 6 octobre 2006 Dernière intervention - 28 sept. 2006 à 17:58
0
Utile
OK j'ai trouvé.
On peut utiliser des objets déjà déclarés mais pas les déclarer.
Il faut donc créer dans un module standard une Function New_maClass() as maClass qui fait la déclaration, et qui elle, est accessible de l'extérieur.
C'est nul mais c'est comme ça ...
Commenter la réponse de Orgeat_2006
0
Utile
Deux jours que je cherche, merci.
Et attention à la subtilité (quoique logique), c'est bien dans un module standard qu'il faut créer la Function New_maClass() as maClass.
Parfait pour utiliser des classes mises dans des macros complémentaires.
Commenter la réponse de Rabe

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.