Microsoft 365 Apparition et disparition liste déroulante suivant choix

  • Initiateur de la discussion Initiateur de la discussion Samy13
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Samy13

XLDnaute Nouveau
Bonsoir tout le monde
Je suis à la recherche d'une formule pour faire apparaitre ou disparaitre une liste de choix suivant valeur d'une autre cellule.
cad : Cellule A = liste de choix de valeur
Cellule B = si valeur de la cellule A < à X alors = cellule C
sinon apparition liste de choix D
Merci
 
Solution
Bonjour à tous,

Voir le fichier joint. le code est dans le module de la feuille "Feuil1".
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Intersect(Range("a1,c1"), Target) Is Nothing Then Exit Sub
    Range("b1").Validation.Delete
    If Range("a1") = "" Then
        Range("b1") = ""
    ElseIf Range("a1") < Range("K1") Then
        Range("b1") = Range("c1")
    Else
        Range("b1").ClearContents
        Range("b1").Validation.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
            xlBetween, Formula1:="=$D$1:$D$9"
        Range("b1").Select
    End If
End Sub
Bonjour @Samy13,

Pas claire votre question 🙁. Un fichier avec un exemple aurait été le bienvenu 😉.
Avec ce que j'en ai compris, un essai sans VBA et uniquement avec des formules et deux noms définis (dont un dynamique : maListe). Sans VBA, la méthode est forcément imparfaite.

Les commentaires sont dans le fichier.

Une MFC colore la cellule B1 en rouge si la valeur de la cellule B1 diffère de la liste de validation en B1.
La formule de la MFC est :
Code:
=ESTERREUR(EQUIV($B$1;maListe;0))
 

Pièces jointes

Bonjour @goube, @mapomme

Merci infiniment, on arrive presque au résultat souhaité, sauf que la liste déroulante ne disparait pas totalement lorsque C3 <= 85 et affiche automatiquement la valeur de E3 seulement, car déroulé une liste avec 1 seul choix c'est pas Tip Top car le but est :

"Apparition et disparition liste déroulante suivant choix"​

 
Bonjour à tous,

Voir le fichier joint. le code est dans le module de la feuille "Feuil1".
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Intersect(Range("a1,c1"), Target) Is Nothing Then Exit Sub
    Range("b1").Validation.Delete
    If Range("a1") = "" Then
        Range("b1") = ""
    ElseIf Range("a1") < Range("K1") Then
        Range("b1") = Range("c1")
    Else
        Range("b1").ClearContents
        Range("b1").Validation.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
            xlBetween, Formula1:="=$D$1:$D$9"
        Range("b1").Select
    End If
End Sub
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
14
Affichages
174
Retour