Gestion des boites de contrôles en fonction du résultat de cellule

Bonjour à tous.

Je bloque sur un sujet pour la création d'un formulaire selon plusieurs options.

J'ai deux controles formulaires de type liste déroulante (A et B). Je souhaite que ce soit l'un OU l'autre qui apparaisse sur ma feuille en fonction de la réponse à une cellule (Oui OU Non). En gros, si la réponse à la cellule est OUI, alors seule la liste déroulante A s'affiche, si NON, c'est uniquement la liste déroulante B qui s'affiche.

Est ce que ce type d'action est possible ? Et pouvez-vous m'aider à construire le code ?

J'ai un niveau très basique en VBA mais j'aimerais beaucoup me perfectionner.

N'hésitez pas à revenir vers moi pour toutes questions.

Merci.
Ben

Salut

S'il s'agit bien de contrôles de formulaire placés sur la feuille de calcul, ce code devrait faire le job. A placer dans le module de la feuille concernée.

Préalable : renommer les listes en "Liste_A" et "Liste_B" (ou reprendre les noms déjà attribués) via "Format de la forme" sur le ruban puis "Volet de sélection" (Dble clic sur le nom).

Ici la cellule de contrôle est A1, le test se fait en majuscules. Si vide ou <> de Oui/Non, aucune liste n'est affichée.

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

Shapes("Liste_A").Visible = IIf(UCase(Range("A1")) = "OUI", msoTrue, msoFalse)
Shapes("Liste_B").Visible = IIf(UCase(Range("A1")) = "NON", msoTrue, msoFalse)

End Sub

A+

Je vous remercie grandement pour votre réponse.

Je ne suis pas très doué.

Ou puis-je trouver/modifier le nom des formules, les ShapesA, ShapesB de votre fichier ?

Merci beaucoup

Bonsoir,

Je ne comprend pas ta question. S'il s'agit de modifier le nom des listes voir l'image :

image

En pièce jointe un classeur d'essai avec listes et macro.

Bonne soirée.

Ps : Je ne reviens sur le site que demain

14classeur1.xlsm (18.25 Ko)
Rechercher des sujets similaires à "gestion boites controles fonction resultat"