ComboBox, Range and... doublons

C

Cyril

Guest
Bonjour,

Avant de rentrer dans le vif du sujet, je tiens à exprimer mon émerveillement devant le florilège de questions traitées avec toujours autant d'enthousiasme !!! (cf élection syndicale)

Pour en revenir à mon nombril ;-) mon problème porte sur l'affichage d'une plage de cellule dont je voudrais supprimer les doublons lors de l'affichage dans une ComboBox. En effet, j'ai trouvé des solutions pour trier et filtrer les doublons mais avec une étape "copie" vers un autre emplacement. Des doutes s'emparent de moi : est-ce possible ?
Pour essayer de préciser, j'ai travailler sur Access et me souviens de la commande SELECT DISTINCT des requêtes SQL.

Le but de la comboBox est de restreindre la liste affichée dans une ListBox qui correspond au critère de la ComboBox.

Merci de votre attention et de votre aide (je croise les doigts)

J'espère que les précisions dans le fichier exemple "recherche.xls" joint et mon début de code seront suffisant
 

Pièces jointes

  • recherche.zip
    12.6 KB · Affichages: 38
  • recherche.zip
    12.6 KB · Affichages: 36
  • recherche.zip
    12.6 KB · Affichages: 36
M

mDF

Guest
Bonsoir Cyril,

Tu trouveras ci-joint ton exemple modifié pour répondre à peu près à ce que tu souhaites je crois.

Pour remplir le ComboBox sans doublon, je me suis servi d'une astuce de John WalkenBack (<http://j-walk.com/ss/>) dans la procédure Private Sub UserForm_Initialize.

Cordialement.
Didier
 

Pièces jointes

  • RechercheCyril.zip
    16.9 KB · Affichages: 87
  • RechercheCyril.zip
    16.9 KB · Affichages: 84
  • RechercheCyril.zip
    16.9 KB · Affichages: 90
C

Cyril

Guest
Bonjour à tous et particulièrement à Didier

Merci de m'avoir mis sur le bon chemin pour mettre à jour correctement ma ListBox selon le choix de la ComboBox. J'ai récupéré le fichier ce matin vers 8h00 et viens enfin de réussir à modifier la mise à jour de la ListBox pour accepter d'afficher les 2 colonnes liées. Après des essais avec BounbColumn, Column et quelques uns avec List, j'ai trouvé un exemple dans l'aide de VBA d'excel (si, si ;-) ,

le résultat est le suivant :

(le but est d'afficher dans une LixtBox, à partir d'une feuille excel sous forme de table, les colonnes correspondantes à la sélection effectuée dans une ComboBox... je sais pas si c'est tout à fait clair !?)

' identifie la colonne de référence (ne semble pas fonctionner si il n'est pas initialiser directement dans le code)
LBEquipement.BoundColumn = 1

' Ajoute une ligne dans la LixtBox "LBEquipement" : place la valeur TempTab(Ligne "L", colonne "2") dans la colonne identifiée implicitement par BoundColumn (indéxée 0)
LBEquipement.AddItem TempTab(L, 2)

' Complète la deuxième colonne (indexée 1) de la ligne (indéxée L-1) de la ListBox "LBEquipement" avec la valeur de la 3ème colonne de TempTab, même ligne
LBEquipement.List(L - 1, 1) = TempTab(L, 3)

Pour le fonctionnement globale du fichier, il suffit de le récupérer :p

J'espère que ma modeste présentation sera utile aux futurs utilisateurs et utilisatrices de VBA.

Bonne programmation et merci encore.

Cyril
 

Pièces jointes

  • RechercheCyril.zip
    15.7 KB · Affichages: 89
  • RechercheCyril.zip
    15.7 KB · Affichages: 84
  • RechercheCyril.zip
    15.7 KB · Affichages: 84

Statistiques des forums

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