• Initiateur de la discussion Initiateur de la discussion zeltron24
  • 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 !

zeltron24

XLDnaute Impliqué
Bonsoir à vous tous,

J'aurais si cela est possible besoin de votre aide afin de trouver la solution suivante.

Dans une cellule se trouve une liste
Suivant la valeur choisie dans cette liste, je souhaite avoir dans la cellule à coté, la liste correspondante à cette valeur afin de choisir l'option.
J'ai plusieurs solutions plus ou moins "correcte" mais je n'arrive pas à finaliser
Voici ci joint un exemple
D'avance merci pour votre aide.
 

Pièces jointes

Pièces jointes

Re : Listes Multiple

Bonsoir Boisgonthier,
Tout d'abord merci pour ton aide.
Je pense pouvoir me tirer d'affaire grace au lien que tu m'as fourni.
Le fichier que tu m'a remis ne donne pas la solution.
Celle ci serait plutot du genre
Listes en cascade avec noms de champ et Indirect()
correspondant au lien.
Je planche sur ce lien laissant ce fil ouvert si d'autres aurait une solution.
Merci à vous
Cordialement zeltron24
 
Re : Listes Multiple

Bonjour à tous,

Après quelques recherches, je suis parvenu à obtenir cette formule.

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Target.Column = 6 And Target.Row > 10 Then

Target.Validation.Delete
If Not IsError(Application.Match(Target, [Catégories], 0)) Then
Target.Validation.Add xlValidateList, Formula1:="=" & _
"offset(Choix,1,match(F28,Catégories,0)-1,countA(offset(Choix,,match(F28,Catégories,0)-1))-1)"
SendKeys "%{down}"
Else
Target.Validation.Add xlValidateList, Formula1:="=Catégories"
End If
End If
End Sub

Hélas 2 problèmes se pose:
- Ceci ne fonctionne que pour la cellule F28, hors, il faudrait que cela fonctionne pour F11 à F30
- De plus j'utilise déjà la fonction
Private Sub Worksheet_Change(ByVal Target As Range)

pour une autre formule dans la feuille donc voici la fonction entière.
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Target.Column = 9 And Target.Row > 9 Then
If Target = "P" Then Target = "" Else Target = "P"
Application.EnableEvents = False
ActiveCell.Offset(1, -8).Select
Application.EnableEvents = True 'surtout ne pas effacer cette ligne !!!!
End If

' Avertissement si manque numèro du chèque.
If Range("AH9") = 1 Then
MsgBox "Il manque le numéro du chèque....", vbInformation, "Message d'avertissement."
Target = ""
End If

End Sub

Est il possible d'utiliser les deux fonctions?
D'avance Merci
zeltron24
 
- 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

  • Question Question
Microsoft 365 Liste de choix...
Réponses
8
Affichages
326
Réponses
14
Affichages
363
Réponses
40
Affichages
2 K
  • Question Question
XL 2021 Macro
Réponses
6
Affichages
312
Retour