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

Access Discussion :

variable globale + fenetre de debogage vba [À faire]


Sujet :

Access

  1. #1
    Membre expérimenté
    Homme Profil pro
    Consultant ERP
    Inscrit en
    Septembre 2003
    Messages
    302
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Consultant ERP
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2003
    Messages : 302
    Par défaut variable globale + fenetre de debogage vba
    Bonjour à tous,

    j'ai un petit sushi : dès l'ouverture de ma base, j'ouvre un petite formulaire qui me permet de choisir une année (ex : 2005). Le résultat du choix est alors stocké dans une varaible globale qui me servira tout au long de la base.
    Jusqu'ici pas de problème. Le souci vient du fait que des fois ma base bugge (car elle a mal été développé au départ) et donc cela m'ouvre une fenetre de débogage vba. Les utilisateurs sont au courant et précédemment ils pouvaient fermer cette fenetre et utiliser d'autres fonctionnalités de la base moisn buggées
    Cependant à chaque debogage vba, l'appli me relance l'initialisation de la variable stockant l'année.

    Est ce normal ? Si oui, existe-t-il un moyen pour garder cette valeur malgré l'ouverture d'une fenêtre de debogage

    merci d'avance

  2. #2
    Expert confirmé
    Avatar de cafeine
    Inscrit en
    Juin 2002
    Messages
    3 904
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 3 904
    Par défaut
    Hello, et si tu stockais cette valeur dans une table ?

  3. #3
    Membre expérimenté
    Homme Profil pro
    Consultant ERP
    Inscrit en
    Septembre 2003
    Messages
    302
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Consultant ERP
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2003
    Messages : 302
    Par défaut
    salut,

    c'est vrai que c'est une bonne alternative. En plus vu que j'utilise des fonctions GetAnnee() et SetAnnee() je n'ai pas à redévelopper toutes mes requetes où figure cette variable.

    Merci pour l'idée par contre je laisse ce post encore une journée Non Résolu juste pour savoir si c'est un comportement normal d'Access et si il existe une astuce pour garder ma variable.

  4. #4
    Membre émérite
    Avatar de Didier L
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juillet 2004
    Messages
    503
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Juillet 2004
    Messages : 503
    Par défaut
    Effectivement c'est un comportement normal d'access.
    A chaque "plantage de l'appli" le fait de répondre à la boîte de dialogue réinitialise tout le code pour ignorer l'erreur et repartir d'un bon pied (quand l'erreur est récupérable. sinon plus d'access )
    La seule façon de garder la variable est effectivement de la stocké quelque part, une table, un fichier, la base de registre etc ...

  5. #5
    Membre expérimenté
    Homme Profil pro
    Consultant ERP
    Inscrit en
    Septembre 2003
    Messages
    302
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Consultant ERP
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2003
    Messages : 302
    Par défaut
    ok merci. C'est exactement la réponse que je cherchais.

    Merci à vous 2.

  6. #6
    Expert confirmé

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 419
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 419
    Par défaut
    tu peux aussi ajouter une propriété à ta base et te servir de

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    Function creprop(x As Variant) As Integer
    Dim u As Database
    Set u = CurrentDb()
    u.Containers!Databases.Documents("userdefined").Properties.Append (x)
    End Function
     
    Function litprop(x As String) As Date
    Dim u As Database
    Set u = CurrentDb
    litprop = u.Containers!Databases.Documents("userdefined").Properties(x).Value
    End Function
     
    Function ecritprop(x As String, y As Variant) As Boolean
    Dim u As Database
    Set u = CurrentDb()
    u.Containers!Databases.Documents("userdefined").Properties(x).Value = y
    End Function

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

Discussions similaires

  1. variables globales vba access
    Par binouzzz19 dans le forum VBA Access
    Réponses: 2
    Dernier message: 13/09/2007, 10h05
  2. variables globales vba excel
    Par olodin dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 20/06/2007, 14h09
  3. [VBA-A] Redéclarer un variable global
    Par sabes dans le forum VBA Access
    Réponses: 4
    Dernier message: 09/06/2006, 19h00
  4. [VBA-E]Variable globale?
    Par Elstak dans le forum Macros et VBA Excel
    Réponses: 14
    Dernier message: 27/04/2006, 14h18
  5. [VBA-E] pb variables globales reinitialisées...
    Par borisa dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 07/03/2006, 15h57

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