Liste déroulante évoluée

Bonjour,

Avec votre aide, j'ai crée ces deux listes déroulantes, dépendantes l'une de l'autre.

Je souhaiterais une évolution de ceci en faisant en sorte que la deuxième liste se "blanchisse" automatiquement lorsque le premier élément est vide.

Je joins le fichier exemple .

Dans l'exemple N7 n'est pas vide !!

Merci de votre concours

Phil

Bonjour,

Visiblement, ton fichier a eu du mal a rester accroché

Une proposition à tester

A+

frangy a écrit :

Bonjour,

Visiblement, ton fichier a eu du mal a rester accroché

Une proposition à tester

A+

Effectivement sans fichier c'est un peu compliqué.

Le voici.

Dans mon fichier, je gère dynamiquement les différentes listes de choix. Ce qui m'intéresse grandement.

Dans votre proposition, les listes de choix sont figées.

Bon ! une autre tentative alors.

A+

Bonsoir phil187 ,

J'ai mémorisé ton fichier qui m'intéresse car effectivement il est dynamique. Maintenant, il fonctionne, tu razes bien la case de choix 2?.

frangy a écrit :

Bon ! une autre tentative alors.

A+

Bonsoir Frangy,

J'ai regardé ton fichier , mais tu as "cassé" le lien automatique entre choix1 et choix2!

Ta solution ne permet pas non plus de faire un RAZ quand on revient sur le choix1, soit pour mettre "" soit pour y mettre un autre choix1.

Si qq a la solution... je suis preneur.

bonne soirée.

Phil187

Je ne comprends pas, "Si qq a la solution... je suis preneur."

ton fichier est bon ? Je l'ai remis à ma sauce pour le mémoriser.

psdi a écrit :

Je ne comprends pas, "Si qq a la solution... je suis preneur."

ton fichier est bon ? Je l'ai remis à ma sauce pour le mémoriser.

Mille excuses, je n'avais pas vu le fichier.

Deux points :

Dans ton fichier, je ne vois pas de macro et je ne comprends pas comment tu effaces la cellule choix2 dans le cas où la cellule choix1 est modifiée.

Ensuite, comme tu le remarques dans mon fichier, je réalise plusieurs fois des choix 1 suivis de choix2.

Il faudrait donc que la macro s'applique pour tout couple de cellules choix1/choix2.

Phil187

Re,

Pour la première partie :

La macro est transparente elle s'ouvre sur changement de la cellule M18. Chaque fois que M18 change, N18 est effacée.

Private Sub Worksheet_Change(ByVal Target As Range)
'Cette Sub  efface  le contenu de "Choix 2" des qu'on change de "Choix 1"
    If Not Application.Intersect(Target, Range("M18")) Is Nothing Then
        Range("N18").ClearContents
    End If
End Sub
psdi a écrit :

Re,

Pour la première partie :

La macro est transparente elle s'ouvre sur changement de la cellule M18. Chaque fois que M18 change, N18 est effacée.

Private Sub Worksheet_Change(ByVal Target As Range)

'Cette Sub efface le contenu de "Choix 2" des qu'on change de "Choix 1"

If Not Application.Intersect(Target, Range("M18")) Is Nothing Then

Range("N18").ClearContents

End If

End Sub

Ok et merci.

Comment fais tu pour générer cette macro "transparente"?

Phil

Bonjour;

Cette procédure utilise la gestion des événements. Cette procédure dite "événementielle" consiste à déclencher l'exécution d'une procédure en réponse à un événement précis (ici événement : change).

la procédure est crée dans le VBA (voir liste de choix dans le module de la feuille 1:

Private Sub Worksheet_Change(ByVal Target As Range)

End Sub

Chaque fois qu'il y a une valeur qui change dans la feuille, la procédure est appelée et si Target est M18, on efface N18.

Cordialement.

Rechercher des sujets similaires à "liste deroulante evoluee"