[Catégorie modifiée .Net --> VBA] [VBA - ACCESS 2007] Récupèrer la valeur choisi [Résolu]

Signaler
Messages postés
6
Date d'inscription
lundi 10 mai 2010
Statut
Membre
Dernière intervention
10 avril 2012
-
Messages postés
6
Date d'inscription
lundi 10 mai 2010
Statut
Membre
Dernière intervention
10 avril 2012
-
Bonjour à tous,
Voila débutant en VBA ACCESS 2007, je cherche à récupèrer la valeur selectionné par l'utilisateur, d'une liste déroulante.

La listbox1 contient 3 valeurs (vert, jaune, rouge).
La listbox2 contient 2 valeurs (noir et blanc)

Donc voici ce que je voudrais obtenir :

si je choisis "vert" alors MaVariable = 123
si je choisis "jaune" alors MaVariable = 456
si je choisis "rouge" alors je vérifie si la valeur selectionné de la 2ieme listbox2, et
si j'ai choisis "noir" dans ma listbox2 alors MaVariable = 789
sinon si j'ai choisis "blanc", MaVariable = 321

s'en ca j'ai essayé comme ca :

If Me.listbox1.value = "vert" Then
MaVariable = "795"
Else
If Me.listbox1.value = "jaune" Then
MaVariable = "765"
Else
If Me.listbox2 = "noir" Then
MaVariable = "764"
Else
MaVariable = "766"
End If
End If
End If

J'ai également essayé avec des select case mais meme résultat, car à chaque fois MaVariable récupère toujours la meme valeur c'est à dire 766 et ce quelque soit mon choix.

Merci pour l'aide que vous pourriez m'apporter.

6 réponses

Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
70
C'est déjà plus cohérent.
Et cela ne fonctionne pas ?

Méthode de débogage :
F9 sur une ligne de code
Le programme s'y arrêtera au prochain passage
Survole avec la souris tes variables pour visualiser leur contenu, ou va dans la fenêtre de debogage (Ctrl-G) et tape
? maVariable
pour qu'elle s'inscrive dans la fenêtre.
F8 pour avancer d'une ligne de code
F5 pour continuer normalement
Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
70
Salut
Ton énoncé ne correspond pas à ton programme, ou l'inverse.

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
Messages postés
6
Date d'inscription
lundi 10 mai 2010
Statut
Membre
Dernière intervention
10 avril 2012

Effectivement après relecture il y a quelques erreurs et j'en suis désolé, donc voici le code avec les valeurs de mon enoncé :

If Me.listbox1.value = "vert" Then
MaVariable = "123"
Else
If Me.listbox1.value = "jaune" Then
MaVariable = "456"
Else
If Me.listbox2.value = "noir" Then
MaVariable = "789"
Else
MaVariable = "321"
End If
End If
End If

Autre chose l'action se déroule au sein d'un formulaire, au cas ou.
En espèrant un petit peu d'aide, merci.
Messages postés
6
Date d'inscription
lundi 10 mai 2010
Statut
Membre
Dernière intervention
10 avril 2012

Bonjour,
Sa fonctionne très bien, mais j'ai du remplacer la déclaration du contenu des mes listbox par leur numéro, ce qui donne :

If Me.listbox1.value = "1" Then 
      MaVariable = "123" 
Else 
   If Me.listbox1.value = "2" Then 
      MaVariable = "456" 
   Else 
      If Me.listbox2.value = "1" Then 
         MaVariable = "789" 
      Else 
         MaVariable = "321" 
   End If 
      End If 
End If


Merci pour votre aide.
@+
Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
70
Et en mode debogage, Me.listbox2.Value renvoie quoi ?

Mais, ça me chagrine.
Me.listbox2 n'est pas une zone modifiable de formulaire Access.
Dans quoi programmes-tu ?
Quel logiciel lances-tu pour afficher ton code ?
Je ne comprends pas.
Messages postés
6
Date d'inscription
lundi 10 mai 2010
Statut
Membre
Dernière intervention
10 avril 2012

Bonjour,

Me.listbox2.Value me renvoie comme valeur 1.
Me.listbox2 n'est pas modifiable.
J'ecris mon code dans un Form avec l'utilitaire visual basic de access 2007.
Moi ce qui me chagrine c'est qu'en mode débogage quand je survole MaVariable avec la souris elle est toujours à 0, malgré cela j'obtiens bien le résultat voulu.