VBA
Résolu
Farfadet88
Messages postés
7780
Statut
Membre
-
Farfadet88 Messages postés 7780 Statut Membre -
Farfadet88 Messages postés 7780 Statut Membre -
Bonjour,
Je cherche à afficherune userform aassez spéciale mais je débute en Visual Basic donc ne trouve pas de solution.
Voilà mon problème:
Je suis en train de créer un questionaire évolutif (les questions évoluent en fonction des réponses).
Je cherche à faire répondre à la question 1 grâce à un menu déroulant (ça j'ai réussi grâce à une liste modifiable dans ma userform à laquelle j'ai affecté une rowsource de mon document)
Ce que je cherche à faire est ensuite de faire évoluer la question 2 en fonction de la réponse 1.
Si la réponse est "a", la question est "6"
Si la réponse est "b, la question suivante est "7"
Si la réponse est "c", etc etc
Pouvez vous m'aider?
Je cherche à afficherune userform aassez spéciale mais je débute en Visual Basic donc ne trouve pas de solution.
Voilà mon problème:
Je suis en train de créer un questionaire évolutif (les questions évoluent en fonction des réponses).
Je cherche à faire répondre à la question 1 grâce à un menu déroulant (ça j'ai réussi grâce à une liste modifiable dans ma userform à laquelle j'ai affecté une rowsource de mon document)
Ce que je cherche à faire est ensuite de faire évoluer la question 2 en fonction de la réponse 1.
Si la réponse est "a", la question est "6"
Si la réponse est "b, la question suivante est "7"
Si la réponse est "c", etc etc
Pouvez vous m'aider?
5 réponses
Bonjour
Avec des IF tout simplement ou, s'il y en a beaucoup avec des SELECT CASE
Je ne sais pas comment est faite ta UserForm mais il paraît inutile de faire plusieurs questions, mieux vaut les gérer dans le VBA.
On suppose que la question est un LABEL et qu'il est dépendant de ta réponse TEXTBOX1, ça donnera à peu près ça :
m@rina
Avec des IF tout simplement ou, s'il y en a beaucoup avec des SELECT CASE
Je ne sais pas comment est faite ta UserForm mais il paraît inutile de faire plusieurs questions, mieux vaut les gérer dans le VBA.
On suppose que la question est un LABEL et qu'il est dépendant de ta réponse TEXTBOX1, ça donnera à peu près ça :
réponse = Me.TextBox1.Value Select Case réponse Case "a" Me.Label2.Caption = "question 6" Case "b" Me.Label2.Caption = "question 7" Case "c" Me.Label2.Caption = "question 8" End Select
m@rina
Alors ton truc marche pour des réponses écrites dans une zone de texte.
Mais comment faire changer la question quand la réponse de la question précédente a été choisie dans une liste modifiable?
merci
Mais comment faire changer la question quand la réponse de la question précédente a été choisie dans une liste modifiable?
merci
Private Sub combobox1_change()
réponse = ComboBox1.Value
Select Case réponse
Case "essence"
Me.Label2.Caption = "question 6"
Case "gaz"
Me.Label2.Caption = "question 7"
Case "électricité"
Me.Label2.Caption = "question 8"
End Select
End Sub
Alors j'ai mis ceci mais lorsque je change de données dans ma liste, aucune "question" ne s'affiche.
Où est le bug?
réponse = ComboBox1.Value
Select Case réponse
Case "essence"
Me.Label2.Caption = "question 6"
Case "gaz"
Me.Label2.Caption = "question 7"
Case "électricité"
Me.Label2.Caption = "question 8"
End Select
End Sub
Alors j'ai mis ceci mais lorsque je change de données dans ma liste, aucune "question" ne s'affiche.
Où est le bug?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question