IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Access Discussion :

variable pour le programme


Sujet :

VBA Access

  1. #1
    Membre éclairé Avatar de schwarzy2
    Femme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2006
    Messages
    464
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 464
    Par défaut variable pour le programme
    Bonjour,
    j'aurais voulu savoir s'il était possible de déclarer une variable pour tout le programme, comme pour des programmes en java ou C++.
    Pour toute la base de données je voudrais déclarer la variable i de type Integer, dont je modifierais la valeur ensuite dans certaines parties de code.
    ça me simplifierait grandement mon code.....
    Est-ce faisable? Si oui comment?
    (j'ai déja essayé et je n'ai jamais réussi ...)
    merci pour vos réponses!

    cordialement

    schwarzy2

  2. #2
    Expert confirmé
    Avatar de vodiem
    Homme Profil pro
    Vivre
    Inscrit en
    Avril 2006
    Messages
    2 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Vivre
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2006
    Messages : 2 895
    Par défaut
    Dans un module:
    en dessous de:
    'Option Compare Database'


  3. #3
    Membre Expert
    Avatar de mout1234
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    2 210
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 2 210
    Par défaut
    Bonjour,

    En effet, comme le dit Vodiem, il suffit de déclarer la variable en public.

    Je pense qu'un peu de lecture te serait utile http://mhubiche.developpez.com/Access/variables/


    Note en passant qu'il ne me parait pas très judicieux de déclarer cette variable en globale. i est traditionnellement une variable de boucle. Tout développeur reprenant ton code s'attendra à ce qu'il s'agisse d'une variable locale.

    Si tu as vraiment besoin qu'elle soit globale (c'est à dire que sa portée soit globale et sa durée de vie égale à celle de l'application), il faudrait lui donner un nom explicite et préfixant ce nom d'un g pour global par exemple.

    De manière plus générale, autant pour des questions de performances que pour des questions de maintenabilité, il est important de respecter la règle consistant à toujours utiliser une portée et durée les plus faibles.

  4. #4
    Membre éclairé Avatar de schwarzy2
    Femme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2006
    Messages
    464
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 464
    Par défaut
    ok super,merci beaucoup!!!!!!
    ça va vraiment simplifier énormément mon code!!!!!

  5. #5
    Membre éclairé Avatar de schwarzy2
    Femme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2006
    Messages
    464
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 464
    Par défaut
    ben en fait non ,ça marche pas si bien que ça...j'ai un souci là... j'ai lu le tutoriel de Maxence Hubiche, mais ça ne résoud pas mon problème, puisque je voudrais en fait une variable et static et public.
    C'est à dire une variable que je puisse utiliser pour tout mon projet( donc public), et dont la durée de vie soit du projet( donc static).
    Et je n'ai pas l'impression que ce soit possible...
    je ne comprends pas trop car quel est l'intérêt d'avoir une variable pour le projet si sa durée de vie est celle d'une procédure?
    ou c'est moi qui ai manqué quelque chose?
    merci d'avance pour vos réponses...

  6. #6
    Expert confirmé
    Avatar de vodiem
    Homme Profil pro
    Vivre
    Inscrit en
    Avril 2006
    Messages
    2 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Vivre
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2006
    Messages : 2 895
    Par défaut
    ne te fais pas trop de soucis. Utilise ta variable en global et tu verras que ton seul soucis sera l'initialisation lors du démarrage de l'appli...

  7. #7
    Membre éclairé Avatar de schwarzy2
    Femme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2006
    Messages
    464
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 464
    Par défaut
    mais c'est ce que j'ai fait... et lorsque je change de formulaire ma variable passe de la valeur 2 (voulue) à la "valeur" vide!??

  8. #8
    Expert confirmé
    Avatar de vodiem
    Homme Profil pro
    Vivre
    Inscrit en
    Avril 2006
    Messages
    2 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Vivre
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2006
    Messages : 2 895
    Par défaut
    c'est que tu n'as pas déclaré comme il faut...
    fait des essaies avec une base vide pour t'en convaincre et trouver le pb.

    ta déclaration est bien dans un module? sous 'Option Compare Database'?
    fais attention aussi au variable local du form qui aurait le même nom...

  9. #9
    Membre émérite
    Homme Profil pro
    Directeur
    Inscrit en
    Avril 2003
    Messages
    724
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur

    Informations forums :
    Inscription : Avril 2003
    Messages : 724
    Par défaut
    Y faut pas plutot la déclarer:

    Global i as Integer

    ??

  10. #10
    Membre éclairé Avatar de schwarzy2
    Femme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2006
    Messages
    464
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 464
    Par défaut
    ben là je comprends toujours pas ..j'ai fait exactement comme tu m'as dit, vodiem...déclaration dans un module et test dans une base vide...ben la valeur de la variable passe bien à vide quand je change de formulaire!!
    j'ai essayé global, merci Philippe de ton idée mais j'obtiens le même résultat...

  11. #11
    Rédacteur/Modérateur
    Avatar de Jeannot45
    Homme Profil pro
    Retraité
    Inscrit en
    Octobre 2004
    Messages
    3 871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 871
    Par défaut
    Bonsoir tout le monde,

    Ta variable doit être déclaré dans un module à part que tu pourras renommer DeclarationsVariables.


    D'après ce que tu dis, je pense que tu as déclaré ta variable au début du module de ton formulaire.
    Jeannot

    Liens Office indispensables à visiter: Cours (Tutos), F.A.Q., Sources VBA

    Ne posez pas de questions par MP, je n'ai pas le temps d'y répondre

  12. #12
    Membre éclairé Avatar de schwarzy2
    Femme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2006
    Messages
    464
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 464
    Par défaut
    mais Jeannot c'est déja le cas! elle est déclarée dans un module à part!
    ensuite j'ouvre un formulaire, à l'ouverture de ce formulaire j'initialise ma variable à 2, puis un clic sur un bouton de commande de ce formulaire m'ouvre un autre formulaire. Eh bien à l'ouverture de cet autre formulaire, ma variable se vide! je le vois distinctement dans la fenêtre variables locales, sitôt que le code d'ouverture du formulaire s'exécute, la variable g_i passe à Vide! je n'y comprends rien...
    je prends tous les conseils que vous pourrez me donner...

  13. #13
    Expert confirmé
    Avatar de vodiem
    Homme Profil pro
    Vivre
    Inscrit en
    Avril 2006
    Messages
    2 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Vivre
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2006
    Messages : 2 895
    Par défaut
    bon j'ai joint un ex

  14. #14
    Membre éclairé Avatar de schwarzy2
    Femme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2006
    Messages
    464
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 464
    Par défaut
    un ex?un exemple, ok!
    en tout cas merci de pas m'avoir laissé tombé!
    je regarde ça!

  15. #15
    Membre éclairé Avatar de schwarzy2
    Femme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2006
    Messages
    464
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 464
    Par défaut
    un exemple et tout est beaucoup plus clair....vodiem je sais vraiment pas comment te remercier....

    ça maaaarche!!!!!!
    t'as vraiment été très sympa!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 7
    Dernier message: 08/06/2009, 11h27
  2. [Débutant] entrer une variable dans l'interface pour le programme
    Par spinalrock dans le forum Interfaces Graphiques
    Réponses: 34
    Dernier message: 25/06/2008, 13h00
  3. Comment faire une variable pour tout le programme ?
    Par Nico128 dans le forum Windows Forms
    Réponses: 8
    Dernier message: 04/06/2007, 09h48
  4. [LG]Divers problémes pour un programme.
    Par Horus TCT dans le forum Langage
    Réponses: 14
    Dernier message: 25/05/2003, 00h04
  5. 1 variable pour 2 processus
    Par kacedda dans le forum POSIX
    Réponses: 2
    Dernier message: 11/02/2003, 07h32

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo