Combobox

Cougar

XLDnaute Impliqué
Bonsoir le forum,

Dans mon userform j'ai 3 combobox. J'aimerais, lorsque je sélectionne une donnée dans un des 3 combobox le deux autres offrent seulement les données en fonction du choix du premier combobox. Donc, il devrait agir comme un filtre.

Merci pour votre aide
 

Robert

XLDnaute Barbatruc
Repose en paix
Bonsoir Cougar, bonsoir le forum,

Je pense que ce n'est pas assez précis comme indication pour que l'on puisse t'aider efficacement. S'il te plaît, envoie nous un fichier exemple avec ton userform et quelques lignes reprenant ton fichier original pour qu'on sache quelles cellules alimentent les ComboBoxes. Ton fichier doit être Zippé, d'un poids inférieur à 50 Ko et son nom ne doit contenir ni espace, ni accent ni caractères spéciaux. Style : Combo.zip.
Je pense qu'après, tu obtiendras très vite une réponse.
 

Cougar

XLDnaute Impliqué
Bonsoir Robert, bonsoir le forum,

Tel que demandé un fichier zippé est disponible.

Pour faire une recherche, les combobox ont accès aux données dans la feuille Données et agir comme si cela était un filtre.

Merci [file name=Combo.zip size=13962]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Combo.zip[/file]
 

Pièces jointes

  • Combo.zip
    12.3 KB · Affichages: 27
  • Combo.zip
    12.3 KB · Affichages: 31
  • Combo.zip
    12.3 KB · Affichages: 30

Robert

XLDnaute Barbatruc
Repose en paix
Bonjour Cougar, Jacou, bonjour le forum,

Difficile de filtrer sur le peu de données que tu donnes. Je pense que ce que tu veux c'est que quand tu affiches une donnée dans l'une des trois ComboBoxes, les données correspondantes s'affichent dans les deux autres. Si c'est ça, ton fichier modifié en pièce jointe fera l'affaire. J'ai juste rajouté du code sur l'événement Change de chaque ComboBox qui utilise la propriété ListIndex pour afficher la correspondance entre les ComboBoxes.
[file name=Combo2.zip size=13025]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Combo2.zip[/file]
 

Pièces jointes

  • Combo2.zip
    12.7 KB · Affichages: 43
  • Combo2.zip
    12.7 KB · Affichages: 41
  • Combo2.zip
    12.7 KB · Affichages: 42

Cougar

XLDnaute Impliqué
C'est très bien parti mais il y a des doublons. Comment pour qu'il y ait seulement une seule valeur.

Lorsque je sélection une valeur, toutes les options des autres combobox demeurent. Il faut que lorsque je sélectionne le nom de la pièce aaa le combobox numéro offre seulement bbb et le combobox presse offre 700 ou 1400 seulement.

J'inclus un fichier avec quelques valeurs supplémentaires pour tester.
[file name=Combo3.zip size=14842]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Combo3.zip[/file]
 

Pièces jointes

  • Combo3.zip
    14.5 KB · Affichages: 26
  • Combo3.zip
    14.5 KB · Affichages: 27
  • Combo3.zip
    14.5 KB · Affichages: 27

Robert

XLDnaute Barbatruc
Repose en paix
Bonsoir le fil, bonsoir le forum,

Cougar je me suis permis de changer le nom des ComboBoxes car je trouvais que c'était très chiant à taper. Elles s'appellent maintenant Cmb1 pour le Numéro, Cmb2 pour le nom et Cmb3 pour la presse.

Pour pouvoir faire ce que tu demandais il fallait remplir les ComboBoxes par la méthode AddItem et non pas la propriétés RowSource. Ne t'étonnes donc pas de voir du code car pour éviter les doublons il faut tester chaque nouvelle entrée par rapport à toutes les autres.

Néenmoins je pense que ça fonctionne comme tu le désires. Pour éviter des bugs, j'ai bloquer (dans l'événement Initialize de l'UserForm) les ComboBoxes 2 et 3 à l'ouverture. Elles ne sont libérées que quand on choisi un Numero. J'espère que ça conviendra. Sinon on y arrivera mais le code sera plus long.

Bonne nuit.
[file name=Combo4.zip size=17104]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Combo4.zip[/file]
 

Pièces jointes

  • Combo4.zip
    16.7 KB · Affichages: 27

Cougar

XLDnaute Impliqué
Bonsoir Robert, le forum,

Excellent, mais si je veux commencer mon tri par une presse alors le code ne fonctionne pas. J'ai activé le Cmb2 et Cmb3 pour tester mais sans effet.

Donc, en résumé tout est OK si je filtre les données à partir du numéro de la pièce mais pas si le filtre début par un des deux autres combobox. Solution ?

Merci énormément pour ton aide. :)
 

Robert

XLDnaute Barbatruc
Repose en paix
Bonjour le fil, bonjour le forum,

Heu ! dans la série de quoi j'mamelle... Tu dors des fois toi ???

Bon je m'en doutais que ça n'irait pas mais hier je n'avais plus le force de développer les deux autres comboboxes. Ce soir je m'y colle... ou peut-être avant si le boulot m'en laisse le temps.
 

Robert

XLDnaute Barbatruc
Repose en paix
Bonjour le fil, bonjour le forum,

Cougar voici la version 5 en pièce jointe. Ça marche correctement mais si tu fais une première sélection sur les trois ComboBoxes et que tu continues de modifier tu peux arriver a des incohérences. L'idéal serait de bloquer les ComboBoxes après modification de chacune d'entre elle. Je ne l'ai pas fait mais j'ai rajouter un bouton Nouvelle pour lancer une nouvelle recherche si la première n'a pas été satisfaisante. Ce bouton ferme et réouvre l'Userform.
[file name=Combo5.zip size=28438]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Combo5.zip[/file]
 

Pièces jointes

  • Combo5.zip
    27.8 KB · Affichages: 36

Robert

XLDnaute Barbatruc
Repose en paix
Bonsoir le fil, bonsoir le forum,

Cougar, je pense que ce doit être plus simple en réalité. Je suis sûr que si un des balèzes de forum mettait le nez dans mon code il le trouverait très mal fait. Mais je fais ce que j'ai pu...
 

Discussions similaires

Réponses
28
Affichages
1 K

Statistiques des forums

Discussions
312 330
Messages
2 087 351
Membres
103 526
dernier inscrit
HEC