Variables accessibles entre différents modules

Résolu
babu26
Messages postés
44
Date d'inscription
samedi 8 juin 2013
Statut
Membre
Dernière intervention
21 janvier 2015
- 26 nov. 2013 à 14:42
 bab - 30 nov. 2013 à 13:28
Bonjour,

Après description ci-après :
code de 'ThisWorkbook(code)'

Option Explicit

Const NFCR = NTemp = "\CR_Temp.txt",NFRés="\CR_Résu.txt"
Const Max = 222
Public Nocr%
Public Doss$, F_Temp$, F_Résu$, Com1$, CRMax%
Dim Dt(Max) As Date, Adh$(Max), Ville$(Max)
Public Sw As Boolean

Private Sub Workbook_Open()
Application.WindowState = xlMaximized
Doss = Path: F_Temp = Doss + NTemp: F_Résu = Doss + NFRés
LoadF_Cr : Debug.Print "Lasr CR "; Nocr
End Sub

Sub LoadF_Cr() 'lire fichier
Dim I%, DD As Date, D$, Ad$, Vil$
I = 0: Close: Open F_CR For Input As #1
Input #1, Com1:input #1, Com1
1: While Not EOF(1)
Input #1, D, Ad, Vil: DD = D: I = I + 1
Dt(I) = DD: Adh(I) = Ad: Ville(I) =Vil: Wend
CRMax = I: Nocr = CRMax: Close #1: Sort_Tb: Load_Feuille_Récap
End Sub

...


et le contenu du module 'Feuille1(code)'

Option Explicit

Sub EcrireRésu_Cr() 'écrire fichier résultats
Dim i%
Close: Open F_Rés For output As #2
For i= 1 To Nocr: Write #2, adh(i),Vil(i): Next i
End Sub

...


Dans le code du module de la feuille 1,
les variables F_Rés, adh(i), Vil(i) sont inexistantes !

Je n'arrive pas à trouver une solution.
Quelqu'un peut-il m'aider ?

Salutations avec Remerciements anticipés. Bab

4 réponses

hublet
Messages postés
46
Date d'inscription
jeudi 17 avril 2003
Statut
Membre
Dernière intervention
26 novembre 2013

26 nov. 2013 à 17:21
Bonsoir,

As tu essayé en déclarznt les variables en temps que variables globales ?

par exemple :

Global Nocr%
0
ucfoutu
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
235
26 nov. 2013 à 18:34
Bonjour,
Il te suffira d'ouvrir ton aide VBA à la rubrique Portée et visibilité pour avoir toutes les explications dont tu as besoin en ce qui concerne la seule question que tu poses..
0
Salut et Merci,
J'ai résolu la portée de mes variables en les plaçant dans un module et les déclarant GLOBAL, mot réservé inexploitable dans un ThisWorkbook.
0
babu26
Messages postés
44
Date d'inscription
samedi 8 juin 2013
Statut
Membre
Dernière intervention
21 janvier 2015

27 nov. 2013 à 09:57
Bonjour,
Global était bien un 'Mot réservé' avec Visual Basic 6, mais ne l'est plus en VBA sous Excel.

Merci toutefois de m'avoir répondu. Bab
0
babu26
Messages postés
44
Date d'inscription
samedi 8 juin 2013
Statut
Membre
Dernière intervention
21 janvier 2015

27 nov. 2013 à 10:28
Rebonjour
Autant pour moi.
Global n'est utilisable que dans un MODULE.
Je tentais de le traiter dans un 'ThisWorkBook.

Je repars ...

Merci encore. Bab
0