Liste en cascade un peu spéciale

Mimi

XLDnaute Occasionnel
Bonjour à Tous,
Dans mon classeur je vais avoir 8 bases de données.
Dans la feuille Bon je voudrais crée des listes déroulantes en cascade.
En colonne A, la liste de tous les produits (celle-là elle est faite).
En colonne B, la liste de mes sous-produits (exemple feuille parfum colonne A).
En colonne C, la liste des produits de mes sous-produits (exemple feuille parfum colonne B D F H )
Et enfin colonne E la référence du produit affiché.
J'ai recherché sur le site et sur internet dont le fameux site de Boigontier jacques mais rien à faire
je ne trouve pas de solution.

D'avance je vous remercie

Mimi
 

Pièces jointes

  • Essai Base.xlsm
    21.5 KB · Affichages: 28
  • Essai Base.xlsm
    21.5 KB · Affichages: 41
  • Essai Base.xlsm
    21.5 KB · Affichages: 39

Dranreb

XLDnaute Barbatruc
Re : Liste en cascade un peu spéciale

Bonjour.

Pas d'erreur chez moi, ni de compilation ni d'exécution. Donc si c'est une erreur d'exécution, mettez un espion sur l'expression de droite, puis d'autres sur toutes ses sous expressions, puisque je ne puis reproduire l'erreur avec ma version d'Excel.
Ou alors essayez en écrivant cette procédure comme ça :
VB:
Private Sub BtnOK_Click()
Dim Te()
Te = CL.PlgTablo.Rows(Ligne).Resize(, 4).Value
LigCbl.Columns("C").Value = Te(1, 1)
LigCbl.Columns("E").Value = Te(1, 4)
CL.Nettoyer
End Sub
Chez moi ça marche tout aussi bien. Ça aurait même tendance à être un micro-poil de chouïa plus rapide puisque ça économise un accès de plage sur les 4. Si plante toujours essayez en dé-fusionnant les cellules de la plage ZonBon.
 

Mimi

XLDnaute Occasionnel
Re : Liste en cascade un peu spéciale

Bonjour,
Oui cela venait de cellules fusionnées, autrement
le premier combo doit se trouver en colonne A, le deuxième en colonne B, le troisième en colonne C et le quatrième en colonne E
A voir merci de ton aide
Mimi
 

Dranreb

XLDnaute Barbatruc
Re : Liste en cascade un peu spéciale

Ben, pour ce qui est de l'emplacement des données sources dans la FBdD c'est déjà comme ça !
Parlez vous là de la position du bon de commande, qui serait cette fois collé à gauche dès la colonne A, et où vous voudriez alors reproduire les 4 cellules de la ligne sélectionnée ?
 

Mimi

XLDnaute Occasionnel
Re : Liste en cascade un peu spéciale

Bonjour,
J'ai trouvé pour placer les colonnes à leur place dans la feuille Bon.
J'ai rajouter et modifier ceci :

Private Sub BtnOK_Click()
LigCbl.Columns("A").Value = CL.PlgTablo(Ligne, "A").Value
LigCbl.Columns("B").Value = CL.PlgTablo(Ligne, "B").Value
LigCbl.Columns("C").Value = CL.PlgTablo(Ligne, "C").Value
LigCbl.Columns("D").Value = CL.PlgTablo(Ligne, "D").Value
CL.Nettoyer
End Sub

Encore merci pour ton aide
Mimi
 

Dranreb

XLDnaute Barbatruc
Re : Liste en cascade un peu spéciale

Ce serait alors plus concis et 4 fois plus rapide à l'exécution de l'écrire comme ça :
VB:
Private Sub BtnOK_Click()
LigCbl.Resize(, 4).Value = CL.PlgTablo.Rows(Ligne).Resize(, 4).Value
CL.Nettoyer
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 329
Messages
2 087 334
Membres
103 519
dernier inscrit
Thomas_grc11