Récuperer des variables VBA dans un autre classeur
Salut, a tous!
Je vais présenter succintement mon problème:
J'ai une première série de classeurs (1 par projet) avec plusieurs modules et de nombreuses variables publiques. Un module permet d'initialiser ces variables en parcourant les feuilles du classeurs.
J'ai un second classeur ou une macro doit ouvrir séquentiellement chacun des classeur de la première série, lancer la subroutine d'initialisation des ces classeurs et copier ces variables dans des variables du second classeur.
Un pti exemple est surement plus parlant.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
Public NombrePays As Integer, NombreRégions as Integer,...
Public Sub RecupParams()
Call InfosFichiers
Dim i As Integer
For i = 1 To Nombre_Classeurs
Workbooks.Open Tableau(i), 3, , , "MC Wacko"
Application.Run (Tableau(i) & "!InitParams") 'ca marche
NombrePays = [Tableau(i)].Module7.NbPays 'ca bloque
NombreRégions = [Tableau(i)].Module7.NbRégions 'pareil
....
....
Next i
End Sub |
Le nom de mes classeurs est stocké dans un tableau, je peux ouvrir chacun des classeurs. l'appel de la subroutine via le ApplicationRun ne pose pas de problème mais impossible de récuperer des variables d'un autre classeur initialisées avec InitParams avec la bien que celles ci soient publiques