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 :

Ajouter des valeurs dans une listebox sur click


Sujet :

VBA Access

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    298
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 298
    Points : 67
    Points
    67
    Par défaut Ajouter des valeurs dans une listebox sur click
    Bonjour tous le monde,

    J'aimerais que lorsque je clique sur une listbox plusieur valeur s'ajoute, je vous montre ma fonction, cependant quand je clique sur ma listebox, la fonction n'est même pas lancé, j'ai vérifié avec de msgbox

    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
    19
    20
    21
    22
    23
    24
     
    MsgBox ("rtgbzrb")
    Dim A As Date
    Dim B As Date
    Dim db As Database
    Dim rq As Recordset
    Dim Chrono As Long
     
    Chrono = Forms.Formulaire_Principal.CRP.Form.Chrono.Value
    Set db = CurrentDb()
    Set rq = db.OpenRecordset("SELECT Date_Debut, Date_Fin From Dates_Visite WHERE Chrono=" & Chrono)
     
    If Not (rq.EOF) Then
      A = rq(0)
      B = rq(1)
    End If
     
    Dim date_tmp As Date
    date_tmp = A
     
    While date_tmp <= B
       Liste_Dates.AddItem (date_tmp)
       date_tmp = date_tmp + 1
    Wend
    merci et bon week end

  2. #2
    Membre habitué
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    153
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 153
    Points : 161
    Points
    161
    Par défaut
    Salut,

    Ne met pas ton code sur l'evenement "Sur Click" mais plutot "Sur souris appuyée"

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    298
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 298
    Points : 67
    Points
    67
    Par défaut
    merci de ton aide, cela fonctionne.
    Cependant quand je selectionne une valeur de mla listbox, elle n'est pas selectionné(elle n'apparait pas dans le champ de ma listbox)

  4. #4
    Membre habitué
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    153
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 153
    Points : 161
    Points
    161
    Par défaut
    Hum... Oui en effet :s

    Je dirai bien que... je crois que ce que tu veut faire, c'est que quand on arrive sur cette liste, son contenu s'adapte en fonction de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Forms.Formulaire_Principal.CRP.Form.Chrono.Value
    Donc j'aurai tendance à penser que plutôt qu'actualiser ta liste à chaque clic, soit tu le fais "Sur modification" de Chrono, soit uniquement "Sur récéption focus" sur ta liste. Pas la peine de l'actualiser à chaque fois que le menu déroulant s'ouvre, si?

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    298
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 298
    Points : 67
    Points
    67
    Par défaut
    non du tout,

    le problème c'est que par exemple quand je clique sur la listbox,

    par exemple 3 dates apparaissent, mais quand je selectionne une de ces dates, le champs de la listbox reste vide.

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    298
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 298
    Points : 67
    Points
    67
    Par défaut
    Et si je dois l'actualiser à chaque clique car la date ou le chrono peut être modifié.

  7. #7
    Membre habitué
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    153
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 153
    Points : 161
    Points
    161
    Par défaut
    Ben, je sais pas.

    Le problème viens d'un truc stupide d'Access qui dit que lorsqu'il y a un code sur un evenement, il intercepte l'action qu'Access aurait du faire sans le code... J'ai plus ou moins le même soucis lorsque l'on met un evenement en sortie d'un champ dans un formulaire et que l'on essaye de changer d'enregistrement... ca fonctionne pas.

    J'ai cherché une magouille pour ton souci mais je ne vois pas.
    J'imagine que ton chrono change tout le temps de valeur donc ca risque de pourrir l'érgonomie si tu actualise la liste à chaque changement de valeur du chrono...

    Dsl, je passe la main...

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    298
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 298
    Points : 67
    Points
    67
    Par défaut
    non non ne t'inquiète pas ça ne pourrie pas l'ergonomie.
    J'actualise seulment au clique sur la listbox.

    Par contre explique moi ton problème je peux peut être t'aider

  9. #9
    Membre habitué
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    153
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 153
    Points : 161
    Points
    161
    Par défaut
    Ce que je te proposai, c'est d'exécuter cette procédure à chaque modification de "chrono" et a chaque modification de la "date" dont tu parlais, plutot que le faire sur clique. Le souci d'actualiser à chaque clique, c'est que lorsque tu sélectionne un élément dans ta liste, et bien Access considère ça comme un événement (jusque la, c'est normal)...
    Mais vu qu'il exécute le code VB de l'élément, et bien il en oublie que à la base, tu cliquais pour sélectionner un élément dans une liste.

    Si tu veut un autre exemple (c'est le souci que j'avais, mais j'ai laché l'affaire) :
    Créer un formulaire basé sur une table bidon. Supprime tous les champs, et met seulement un champ texte lié à rien.

    Ensuite, sur ce champs texte, tu met un code bidon "sur sortie" de ce champ, par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Texte0.value = Ucase(Texte0.Value)
    Et la, tu fais un test : tu ecrit un truc dans ton champ, et tu appuie sur un des boutons pour parcourir les enregistrements... et bien tu constatera que le changement d'enregistrement ne se fait pas. L'explication est la même :
    Au moment ou tu clique sur le bouton de parcours des enregistrement, Access voit qu'il a un code à exécuter (le code sur sortie de champ). Et donc, il exécute bravement ce code.... et il oublie que : on a appuié sur le bouton pour changer d'enregistrement.

    Fais le test, c'est "marrant" -_-

Discussions similaires

  1. ajouter des valeurs dans une ComboBox (zone de liste modifiable)
    Par ghosty04 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 01/12/2008, 18h11
  2. Réponses: 2
    Dernier message: 21/09/2007, 11h37
  3. Réponses: 2
    Dernier message: 28/03/2006, 11h45
  4. Réponses: 13
    Dernier message: 01/02/2006, 12h00
  5. fonction récupérant des valeurs dans une fonction popup...
    Par petitsims dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 20/01/2005, 14h51

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