Problème de déclaration de variable globale

Résolu
Mikelt Messages postés 4 Date d'inscription   Statut Membre Dernière intervention   -  
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour à tous ! Pour moi c'est une première sur comment ça marche.net!

Alors voila : J'ai un problème pour déclarer mes varaibles : Impossible depuis le début de mon projet de déclarer une variable globale au projet.

Je pense qu'il y a une option quelque part à activer mais je ne parviens pas à trouver où!

Merci d'avance!

Mickaël

5 réponses

Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   1 204
 
Bonjour,

Tu travailles avec quoi ?
0
Mikelt Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour,

Autant pour moi! Il s'agit d'un projet VBA que je réalise sous word 2010. Mon projet comprend des modules et des formulaires, je souhaite définir une variable globale sur tout le projet.
0
Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   1 204
 
Salut,

Tu la déclares comment ta variable globale ?

En principe on déclare la variable en début de module, avant toutes procédures.

Public var As Integer

var sera visible dans tout le code et par tous les modules.

Si tu veux quelque chose de propre et si tu as plusieurs variables globales, tu fais un module que pour ça que tu nommes par exemple : ModVarGlobales

Tu déclares les variables comme privées au Module : Private var As integer

Et tu fais des getters pour les lire et des setters pour leur affecter une valeur:

Public sub setVar (byval num as integer)
     var = num
End Sub

Public Function getVar()
     getVar = var
End Function


«Ce que l'on conçoit bien s'énonce clairement, Et les mots pour le dire arrivent aisément.»
Nicolas Boileau
0
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 275
 
Bonsoir polux,

tu pourrais développer un peu le pourquoi de les rendre privées et de les appeler de cette façon stp ?
On ne se complique pas la vie pour rien. Je pressens un intérêt mais il ne me saute pas aux yeux ;-)

eric
0
Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   1 204
 
Salut Eriiic,

Ça fait plaisir de te recroiser ici.

Il n'y a pas d'obligation de les rendre privées. Perso je préfère cette méthode que j'estime plus "propre". Après c'est une question de conception de son code. Pour ma part, j'organise mon code par module. Un module n'effectuant qu'une tâche précise. D'où mon habitude de faire des accesseurs pour les attributs que je déclare toujours privés dans mes modules :0)

Ceci dit, même si MS Office permet d'utiliser un éditeur VB, ce n'est pas fait pour faire des applications complexes mais des "macros" pour automatiser des tâches répétitives et fastidieuses.

;0)
0
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 275
 
Merci
Bonne fin de WE :-)
eric
0
Mikelt Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour!

J'ai finalement trouvé mon erreur, je déclarais les variables dans un formulaire, du coup les variables qui auraient du être globales n'étaient pas visibles dans les modules.

Pour moi c'est pas logique, une variable globale doit être globale pour les modules et les formulaires...

Bref, en la déclarant dans un module cela la rendue visibile dans les modules et dans le code des formulaires.

Merci pour votre aide!
0

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

Posez votre question
martial de vinci Messages postés 28 Date d'inscription   Statut Membre Dernière intervention  
 
comment tu fais ta déclaration???

0