Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2016 Trois ComboBox en cascade et remplissage d'une ListBox pour résultat du choix

Webperegrino

XLDnaute Impliqué
Supporter XLD
Bonjour Le Forum,
Des heures, des jours, pour fureter sur le Forum, à la recherche d'une bonne programmation dans le fichier ci-joint.
Avec le VBA inclus je n'arrive pas à trier pour supprimer les doublons.
Enfin la ListBox ne se remplit pas selon le choix précédent dans les trois ComboBox.
Merci de me venir en aide.
Cordialement
Webperegrino
 

Pièces jointes

  • V2_Essai ComboBox en Cascades.xlsm
    39.8 KB · Affichages: 25

Webperegrino

XLDnaute Impliqué
Supporter XLD
Le Forum,
Bonsoir cp4,
Oui, en effet je suis allé à ces endroits de la magnifique bibliothèque de Monsieur Boisgontier qui nous sert tant.

Le 1er ComboAppellation fonctionne parfaitement selon les recommandations de M. Boigontier.
Là où ça se complique pour moi c'est dans le 2ème "ComboBox1 du nom des vins".
Par exemple, si je choisis "BLAYE" pour ComboAppellation, je n'arrive pasà avoir deux lignes :
- ... Domaine Arnaud
- Château Brimaud

J'ai beau tout essayer, mon combobox1 du nom des vins continue à "bégailler" pour une trop longue liste non triée en doublons.
Je continue à faire des simulations selon les deux liens joints en #2 mais je crois que je vais "tout casser dans mes codes".
Dans tous les cas je reviens vers vous si j'aboutis, pour vous remercier.
Cordialement
Webperegrino
 

ChTi160

XLDnaute Barbatruc
Bonsoir Webperegrino
Bonsoir cp4 ,le Forum
il y a pas mal d'incohérences
genre.
VB:
For Each C In plage
    If C.Value <> "" And Not mondico.exists(C.Value) Then
      mondico.Add C.Value, C.Value 'Tu charges le Dico
      Me.ComboCouleur.List = mondico.items 'Ici tu colles (a chaque Boucles , les Items dans le Userform
    End If
  Next C
  '--avec tri
  temp = mondico.Keys 'ici tu récupères les Items
  Call Tri(temp, LBound(temp), UBound(temp)) 'Tu vas les trier
  Me.ComboCouleur.List = temp '-------> et ici aussi Lol
tu peux supprimer la premier
VB:
 Me.ComboCouleur.List = mondico.items ' tu supprimes

jean marie
 

Webperegrino

XLDnaute Impliqué
Supporter XLD
Le Forum, cp4,
Bonsoir Jean-Marie (CiTi160),
J'ai placé vos ajouts. Je continue à "galérer" dans le Vba mais ça me forme...
J'ai aussi trouvé dans la bibliothèque de M Boisgontier une partie qui va peut-être m'aider... ou compliquer mes lignes de programmations :


Je vais essayer de m'inspirer de son application (elle correspond à ce que je désire appliquer) pour voir si j'en peux extraire ses codes pour faire fonctionner mes ComboBox et ma ListBox.
... à la place de Martin, je mettrai BLAYE par exemple pour n'avoir que ce vin dans ListBox.
Merci à vous deux pour votre approche,
Webperegino
 

Webperegrino

XLDnaute Impliqué
Supporter XLD
Le Forum, Cp4, Jean-Marie,
Cp4 : Waou !
Exactement comme je le désirais ! Merci beaucoup.
Je vais étudier et apprendre dans le détail les lignes VBA.
Résultat : des heures de recherche en moins, - c'est mon épouse qui va être soulagée... et pouvoir revenir au clavier... - et surtout une progression pour moi dans la codification de mon véritable fichier plus vaste en programmation.
Et en plus cette progression des ComboBox va être utile pour bien d'autres, ici sur le Forum.
Encore merci pour ce partage.
Bien cordialement,
Webperegrino
 

ChTi160

XLDnaute Barbatruc
Bonsoir
Bonsoir le Fil (cp4) ,le Forum
je me suis permi d'ajouter une ligne au ComboBox "ComboBox1" "ComboCouleur"
Ex :
VB:
With Me.ComboBox1 
        .List = temp
        .ListIndex = IIf(.ListCount = 1, 0, -1) 'ici affiche si qu'un choix possible
 End With
j'ai des problème lors de choix avec le Tri(Erreur d'exécution 9) ! mais bon
beau travail !
jean marie
 

Webperegrino

XLDnaute Impliqué
Supporter XLD
Le Forum,Cp4, Jean-Marie,
Merci aussi à Jean-Marie (#9).
Cette application sur ComboBox1 et ComboCouleur rend l'application encore plus conversationnelle avec un seul choix.
Par contre, avant cela (méthode #7 de CP4), ça fonctionnait très bien chez moi, avec la nécessité de choisir dans ComboBox1, puis de choisir dans ComboCouleur, même avec un seul choix apparent.
Donc la proposition #9 est très logique et est adoptée, positionnée dans la programmation du #7.
C'est super fonctionnel, bravo à vous deux.
EXCEL-lent week-end à vous tous,
nota : j'abandonne le vba de l'application #5 : belle mais trop complexe pour moi , ça me prendrait des mois à la mettre en forme pour la gestion Excel de ma cave personnelle ; mais elle reste sous le coude....
Webperegrino
 
Dernière édition:

Webperegrino

XLDnaute Impliqué
Supporter XLD
Bonjour Jean-Marie,
cp4, Le Forum,
Où sont les ListViews dans l'association des vba des #7, #4 et #9. que j'ai réussis à utiliser ?
Le résultat obtenu fonctionne.

Toutefois j'ai remarqué qu'il faut fermer l'Userform et le rappeler à vide pour repartir avec un nouveau choix dans le premier Combobox.
(Si j'avais fait une recherche avec BLAYE, avec une bonne issue du fonctionnement du VBA, celui-ci fait un Bug si je viens remplacer BLAYE par BORDEAUX, par exemple).

Quant l'application de M Bosgontier en #5, j'ai laissé de côté (tout y fonctionnait bien avec ses colonnes entourées d'un rectangle gras) à part que si je mettais ma base (plus de colonnes) en lieu et place de la cellule "Cocagne Sophie") ça créait tout de suite un Bug.
Le rectangle de la nouvelle base avec un contour gras (inconnu pour moi en utilisation Excel) et un point gras en partie droite inférieure de la sélection des cellules occupées n'acceptait apparemment pas mes colonnes supplémentaires.
Webperegrino
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…