Logigramme : colorer case en vert si oui et passer à la question suivante
Bonjour à tous,
j'ai créé un code vba logigramme qui me permet de passer aux questions suivantes en fonction de la réponse mais j'aimerai aussi que la case se colore en fonction de la réponse à la question. Si oui case en verte si non case en rouge. Vous trouverez une partie du code ci dessous ou j'ai essayé mais cela ne donne rien. il faudrait modifier mes phrases surlignés en orange je pense.
"Private Sub UserForm_Initialize()
ReDim Retour(0)
Retour(0) = Me.Label1.Caption
End Sub
___________________________________________________________________________
Private Sub CommandButton1_Click()
With Me.Label1
.Caption = "contexte créé ?" 'intitulé du départ
.ForeColor = &H80000012 'texte en noir
End With
With Me.OptionButton1 ' oui
.Visible = True 'est apparent
.Value = False 'n'est plus sélectionnée
End With
With Me.OptionButton2 'non
.Visible = True 'est apparent
.Value = False 'n'est plus sélectionnée
End With
End Sub
________________________________________________________________________
Private Sub CommandButton2_Click() 'Fermer
Unload Me 'ferme formulaire
End Sub
__________________________________________________________________
Private Sub CommandButton3_Click() 'retour
With Me.Label1
On Error GoTo erreur ' gestion d'erreur qui se produit si l'on clique sur retour _
avant toute manipulation et on va à erreur:
ReDim Preserve Retour(UBound(Retour) - 1) 'ici on retire preserve pour garder les _
items placé avant exem de retour(1) on passe a retour(0)
Me.ListBox1.RemoveItem (Me.ListBox1.ListCount - 1) 'ici c'est a la liste que l'on _
retire la dernière ligne
.Caption = Retour(UBound(Retour)) 'on inscrit l'item juste en dessous de celui _
que l'on vient de retier
.ForeColor = &H80000012 'texte en noir
End With
With Me.OptionButton1 'oui
.Visible = True 'est apparent
.Value = False 'n'est plus sélectionnée
End With
With Me.OptionButton2
.Visible = True 'est apparent
.Value = False 'n'est plus sélectionnée
End With
Exit Sub 'sortie de procedure pour ne pas afficher le msgbox si pas d'erreur
erreur:
MsgBox "Il faut avoir fait 1 choix avant d'utiliser le bouton Retour", vbInformation + vbOKOnly, "Erreur d'execution"
End Sub
___________________________________________________________________
Private Sub OptionButton1_Click() 'oui
Select Case Me.Label1.Caption
Case "contexte créé ?" 'si on excute la macro ci dessous
Passage "Tous les HM sont appliqués ?" and Range("H4").Interior.Color = RGB(174, 240, 194), Me.OptionButton1
Case "Tous les HM sont appliqués ?" 'si on excute la macro ci dessous
Fin Range("H4").Interior.Color = RGB(174, 240, 194), Me.OptionButton1
End Select
End Sub
_________________________________________________________________
Private Sub OptionButton2_Click() 'non
Select Case Me.Label1.Caption
Case "contexte créé ?" 'si on excute la macro ci dessous
Fin Range("H4").Interior.Color = RGB(255, 0, 0), Me.OptionButton2
Case "Tous les HM sont appliqués ?"
Fin Range("H4").Interior.Color = RGB(255, 0, 0), Me.OptionButton2
End Select
End Sub"
Bonjour,
Que signifie "Passage" , "Fin", ci-dessous?
Passage "Tous les HM sont appliqués ?" and Range("H4").Interior.Color = RGB(174, 240, 194), Me.OptionButton1
Case "Tous les HM sont appliqués ?" 'si on excute la macro ci dessous
Fin Range("H4").Interior.Color = RGB(174, 240, 194), Me.OptionButton1
Supprimez : ", Me.OptionButton1"
Sinon ceci ne marche-t-il pas mieux?
Private Sub OptionButton1_Click() 'oui
Select Case Me.Label1.Caption
Case Is = "contexte créé ?" 'si on exécute la macro ci-dessous
MsgBox "Tous les HM sont appliqués ?"
Range("H4").Interior.Color = RGB(174, 240, 194)
Case Is = "Tous les HM sont appliqués ?" 'si on exécute la macro ci-dessous
Range("H4").Interior.Color = RGB(174, 240, 194)
End Select
End SubCdlt
Bonjour,
"passage" signifie que si on répond oui alors on doit passer à la question suivante "tous les HM sont appliqués?" et j'aimerai que ca me mettre la case en verte en même temps. et fin signifie la fin du logigramme. je vais joindre l'excel pour plus de compréhension.
Merci à vous mais, votre solution ne peut pas fonctionner je ne souhaite pas qu'il y est un message box qui s'affiche je veux que la question change sur l'user forme directement actuellement ca le fait mon seul soucis c'est la coloration de la case.
Voici le type d'excel que j'ai commencé vous pouvez essayé de clic droit sur H4 vous allez voir ce qui apparait mais mon but final serait d'obtenir le logigramme en feuille 2. mais sous forme dynamique.
Problème résolu, si cela peut servir à d'autres ...
Il fallait simplement que j'écrive de cette façon :
Case "contexte créé ?"
Passage "Tous les HM sont appliqués ?"
Range("H4").Interior.Color = RGB(174, 240, 194), Me.OptionButton1