VB entre Plusieurs classeurs excel

Résolu
cs_eldim Messages postés 956 Date d'inscription lundi 30 mai 2005 Statut Membre Dernière intervention 21 août 2014 - 28 nov. 2005 à 12:21
cs_eldim Messages postés 956 Date d'inscription lundi 30 mai 2005 Statut Membre Dernière intervention 21 août 2014 - 29 nov. 2005 à 12:06
Bonjour à tous !

Savez-vous comment appeler le code visual basic d'un classeur à partir d'un module d'un autre classeur

J'ai besoins d'utiliser les fonctions, procédures et variables public entre plusieurs classeurs...

Quelqu'un a-t-il une solution

7 réponses

valtrase Messages postés 937 Date d'inscription lundi 19 janvier 2004 Statut Membre Dernière intervention 9 mai 2022 3
28 nov. 2005 à 22:57
Re,
petite information supplémentaire.......
Si tu as un classeur "Classeur1" contenant tes fonctions et variables
on suppose que ton classeur1 est ouvert. et qu'il contient une sub Message déclarée en public dans un module "Module1". cette sub est décrite dessous.

'*** Module1
Public xlToto

Public Sub Message
MsgBox "Je suis une sub publique"
End Sub

Tu ouvres ton classeur "Classeur2" Soit tu fais une référence manuelle a ton projet1 soit tu le fait en automatique dans la Sub WorkBook_Open du "Classeur2"
ex: Application.VBE.ActiveVBProject.References.AddFromFile ("C:\Classeur1.xls")
ATTENTION le Nom du projet (VBAProject par défaut)doit être changé sinon plantage.
et voilà depuis ton classeur2 tu as maintenant accés aux sub et variables de ton classeur1. Si tu appelles Call Message tu auras un magnifique boite avec "Je suis une sub publique" dedans.

Cordialement, Jean-Paul
______________________________________________________________________

Le Savoir n'a de valeur que s'il est partagé
3
jpleroisse Messages postés 1788 Date d'inscription mardi 7 novembre 2000 Statut Membre Dernière intervention 11 mars 2006 27
28 nov. 2005 à 13:48
Bonjour,



Sub Test()

Application.Run ("Classeur2!MaMacro")

End Sub



jpleroisse



Si une réponse vous convient, cliquez Réponse Acceptée.
0
cs_eldim Messages postés 956 Date d'inscription lundi 30 mai 2005 Statut Membre Dernière intervention 21 août 2014 1
28 nov. 2005 à 13:52
Désolé jpleroisse mais ce ne sont pas des macros visualisables mais des procédures, des fonctions et des variables masquées dans l'éxécution de macro d'Excel...

J'ai besoins d'avoir accès à tout ce qui est public dans mon code vb d'un classeur à partir d'un autre
0
valtrase Messages postés 937 Date d'inscription lundi 19 janvier 2004 Statut Membre Dernière intervention 9 mai 2022 3
28 nov. 2005 à 21:53
Lut,
Si t'es sous VB t'as tout faut Visual Basic ne gére pas les références entre projets
si t'est sous VBA vérifie que tu n'as pas Option Private Module dans tes modules, sinon pas de prob si tes variables sont déclarées en public dans un module.

Cordialement, Jean-Paul
______________________________________________________________________

Le Savoir n'a de valeur que s'il est partagé
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_eldim Messages postés 956 Date d'inscription lundi 30 mai 2005 Statut Membre Dernière intervention 21 août 2014 1
29 nov. 2005 à 08:05
Merci valtrase !

Très intéressant ça va m'enlever une grosse épine du pied !
0
cs_eldim Messages postés 956 Date d'inscription lundi 30 mai 2005 Statut Membre Dernière intervention 21 août 2014 1
29 nov. 2005 à 10:30
Savez-vous si l'on peut gérer les événements d'un classeur à partir d'un autre classeur ?

Je sais maintenant qu'on peut exécuter les "worksheet_change" et autres procedures événementielles en les appelant grace à la réponse formulée précédemmant mais je souhaite intercepté les événements avant qu'ils ne se produisent à partir d'un autre classeur.

Savez-vous comment faire
0
cs_eldim Messages postés 956 Date d'inscription lundi 30 mai 2005 Statut Membre Dernière intervention 21 août 2014 1
29 nov. 2005 à 12:06
C bon j'ai trouvé
0
Rejoignez-nous