liste déroulante conditionnelle impossible...pour moi!!

didi25

XLDnaute Nouveau
Bonjour,

Je me permets de vous déranger, car je voudrais créer des listes déroulantes conditionnelles.

Je voudrais que lorsque l'on choisit un numéro de rue (15), il n'y ai plus dans la colonne suivante QUE les choix " " ou "bis" ou "ter" possibles.

Si on choisit "125", puis "bis", la colonne 3 n'indique QUE le nom des rues possédant un numéro 125, etc, pour arriver enfin à n'avoir plus le choix que D'UN SEUL QUARTIER.

Serait-ce possible sans Macros ? Car je ne les maîtrise pas...

Merci d'avance pour le temps que vous consacrerez à ma demande!!

Didi25
 

Dranreb

XLDnaute Barbatruc
Je n'arrive pas à le joindre pour l'instant, problème de temps de réponse du site.
En attendant, pour voir ce qu'est un UserForm, allez dans VBA (Alt+F11)
Dans l'explorateur de projet, sur un élément du VBAProject de votre classeur, clic droit, Insertion, UserForm
 

Dranreb

XLDnaute Barbatruc
Bonjour.
j'ai réessayé ce matin de le joindre, ça ne marche toujours pas.
Alors je vais tenter de vous expliquer ce que j'ai fait :
upload_2017-8-10_9-18-28.png

6 zones de listes modifiables nommées CBx1 à CBx6
2 boutons de commande nommés CBnEffacer et CBnOK
Ce code dans le module de cet UFmAdresse :
VB:
Option Explicit
Private WithEvents CL As ComboBoxLiées, PlgCible As Range, LCou As Long, OK As Boolean

Private Sub UserForm_Initialize()
Dim C As Long
Set CL = CBxL.Création.ComboBoxLiées
CL.Plage Feuil1.[A2:F2], True
For C = 1 To 6: CL.Add Me("CBx" & C), C: Next C
CL.CorrespRequise = True
CL.Actualiser
End Sub

Public Sub Saisir(Cel As Range)
Set PlgCible = Cel.Resize(1, 6)
' CL.Nettoyer ' Instruction désactivée pour saisir même adresse plusieurs fois.
Me.Show
If OK Then PlgCible.Value = CL.PlgTablo.Rows(LCou).Value
End Sub

Private Sub CBnEffacer_Click()
If CL.ChangéÀLEchap Then Exit Sub
If LCou = 0 Then Me.Hide Else CL.Nettoyer
End Sub

Private Sub CL_BingoUn(ByVal Ligne As Long)
LCou = Ligne
CBnOK.Enabled = True
End Sub

Private Sub CL_Défait()
LCou = 0: OK = False
CBnOK.Enabled = False
End Sub

Private Sub CBnOK_Click()
OK = True: Me.Hide
End Sub

Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
OK = False
If CloseMode = vbFormControlMenu Then Cancel = True: Me.Hide
End Sub
Et dans le module de feuille Feuil2 :
VB:
Option Explicit

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
UFmAdresse.Saisir Target.EntireRow
End Sub
Mais pour arriver à le faire tourner il faudrait que vous récupériez un fichier CBxL.xlsm d'une des discussions auxquelles j'ai participé, car je n'arrive pas à le joindre non plus. Je vais encore essayer… Non ça ne marche pas. Recherchez ComboBoxLiées dans la zone en haut à droite pour trouver plus facilement une discussion récente qui l'aurait.
À plus.
 

Dranreb

XLDnaute Barbatruc
Bonjour.
Je peux enfin à nouveau téléverser un fichier, mais seulement à partir d'un autre navigateur que celui que j'utilisais. Alors je joins les vôtres.
 

Pièces jointes

  • CBxLiéesDidi25.xlsm
    150.1 KB · Affichages: 30
  • CBxL.xlsm
    112.1 KB · Affichages: 31

Discussions similaires

Statistiques des forums

Discussions
311 720
Messages
2 081 902
Membres
101 834
dernier inscrit
Jeremy06510