Liste validation, sous menu et concaténation

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

JNP

XLDnaute Barbatruc
Bonjour le forum 🙂,
J'ai regardé tous les posts sur les listes en cascade, mais mon besoin est strictement inverse et je ne vois pas 🙁
J'ai besoin, via VBA ou formule, pas de préférence, de créer une liste de validation avec un menu principal et un sous menu pour chaque option du menu principal. Je peux au choix, concaténer le menu et le sous menu, ou concaténer dans le sous menu, mais j'ai besoin de cette bifurcation entre menu et sous menu. Je suis preneur de toutes les possibilités.
Merci d'avance et bonne journée 🙂
En pièce jointe, une idée du besoin
 

Pièces jointes

Re : Liste validation, sous menu et concaténation

Bonjour jnp

si j'ai bien compris... sous forme de macro événementielle, à placer dans le module de la feuille concernée.

Se déclenche à la sélection de la cellule A1.

Code:
Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim t As String, i As Integer, j As Integer
If Target.Address = "$A$1" Then
    For i = 1 To Range("C65536").End(xlUp).Row
        For j = 1 To Range("D65536").End(xlUp).Row
            t = t & Cells(i, 3) & " " & Cells(j, 4) & ","
        Next j
    Next i
    With Target.Validation
        .Delete
        .Add xlValidateList, xlValidAlertStop, , t
    End With
End If
End Sub

bon après midi
@+
 
Re : Liste validation, sous menu et concaténation

Bonjour Pierrot93 🙂,
Merci de ta réponse, effectivement, c'est le premier pas. Mais ce que je souhaiterais, c'est d'avoir 2 niveaux de menus, soit AAA, AAB, etc en premier niveau, puis pouvoir sélectionner en sous menu 1, 2, 3, etc... Le résultat est bien celui obtenu.
Si tu as une piste...
Bonne après-midi 😎
 
Re : Liste validation, sous menu et concaténation

Re

peut être comme ceci, couplé avec l'événement change, quand tu as choisis le 1er niveau ta liste de validation est modifiée...

Code:
Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim t As String, i As Integer
If Target.Address = "$A$1" Then
    For i = 1 To Range("C65536").End(xlUp).Row
        t = t & Cells(i, 3) & ","
    Next i
    With Target.Validation
        .Delete
        .Add xlValidateList, xlValidAlertStop, , t
    End With
End If

End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
Dim t As String, j As Integer
If Target.Address = "$A$1" Then
    For j = 1 To Range("D65536").End(xlUp).Row
        t = t & Cells(j, 4) & ","
    Next j
    With Target.Validation
        .Delete
        .Add xlValidateList, xlValidAlertStop, , t
    End With
End If
End Sub

@+
 
Re : Liste validation, sous menu et concaténation

Re,
Ça permet effectivement de faire le choix en 2 étapes, mais ce que je souhaitais, c'était d'avoir un sous menu, possibilité à priori non prévue par Excel... Tant pis, je vais passer par un USF qui sera plus souple.
Merci pour tout 😎
 
Re : Liste validation, sous menu et concaténation

Re,
C'est possible que sur 2007 d'autres possibilités soient offertes (en contextuel par exemple), mais vu que je développe pour des utilisateurs en 97... Ça va pas le faire... Sinon, je passerais par le ruban qui est très complexe, mais permet des applications fantastiques...
Encore merci pour tout, et si je revois le problème en 2007, j'essayerai de poster les solutions trouvées...
Bonne soirée 😎
 
- 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
8
Affichages
832
Réponses
3
Affichages
819
Retour