Filtre avec plusieurs combobox

  • Initiateur de la discussion Initiateur de la discussion OUIZEMANN
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

OUIZEMANN

XLDnaute Junior
Bonjour à tous,

Je suis à la recherche d'une macro qui me permet d'affiner les filtres d'une combobox par rapport aux autres.

Je m'explique, le résultat filtré de la 1ère combo1 doit me permettre de filtrer la combo2 puis la combo3.

En effet, j'ai trouvé le moyen de filtrer ma liste, mais les combobox me remettent toute la liste sans tenir compte du filtre de la précédente combo.

Dans mon exemple si je sélectionne PARIS dans la combo 1, je dois voir que 75 dans la combo2 et ainsi de suite et non toute la liste.

Ensuite je veux pouvoir visualiser sur la listbox le résultat.

Je vous adresse en pièce jointe un exemple de ce que je recherche.

Merci par avance de votre aide.
 

Pièces jointes

Re : Filtre avec plusieurs combobox

Bonjour.
J'ai pu ré-ouvrir ma pièce jointe aussi. Qu'est-ce que je peux faire ? C'était fait à partir du vôtre. Voulez vous que je copie tout dans un nouveau classeur ?

Le code de l'userform:
VB:
Option Explicit
Dim WithEvents CBC As ComboBoxCasc

Private Sub UserForm_Initialize()
Dim N As Long
Set CBC = New ComboBoxCasc
CBC.Plage Feuil1.Rows(2).Resize(Feuil1.[A65536].End(xlUp).Row - 1)
For N = 1 To 6: CBC.Add Me.Controls("ComboBox" & N), N: Next N
CBC.Actualiser
End Sub

Private Sub CBC_Bingo(Lignes() As Long)
Dim T() As Variant, N As Long, L As Long, C As Long
Me.ListBox1.Clear
T = CBC.PlgTablo.Resize(, 6).Value
For N = 1 To UBound(Lignes)
   L = Lignes(N)
   Me.ListBox1.AddItem T(L, 1)
   For C = 2 To 6: Me.ListBox1.List(N - 1, C - 1) = T(L, C): Next C
   Next N
End Sub

Private Sub CBC_Défait()
Me.ListBox1.Clear
End Sub
Et je joins les modules à importer.
Ajoutez aussi la référence "Microsoft Scripting Runtime"
À +
 

Pièces jointes

Dernière édition:
Re : Filtre avec plusieurs combobox

Bonjour,
Merci beaucoup, j'ai fait tout ce que vous m'avez indiqué mais j'ai une erreur en lançant l'userform ("erreur 70, Permission refusée").
Je vous renvoi le fichier qui tient compte de vos remarques.
Pouvez-vous me dire ce qui ne va pas ?
Merci par avance pour votre aide.
A +
 

Pièces jointes

Re : Filtre avec plusieurs combobox

Exact, j'ai oublié de préciser: nettoyez les propriétés RowSource dans la fenêtre de propriété pour tous les ComboBox et la ListBox aussi d'ailleurs.
À +
 
Dernière édition:
Re : Filtre avec plusieurs combobox

Cela fonctionne à merveille.
Merci beaucoup pour le temps que vous m'avez consacré et bravo pour le travail accompli, car je ne pensais pas que la macro état aussi complexe pour faire çà.
A bientôt et bon week-end.
 
Re : Filtre avec plusieurs combobox

Si le choix en ordre quelconque vous intéresse (mais j'ai bien relu la demande plusieurs fois, ça ne semblait pas être le cas), j'ai aussi un module de classe ComboBoxLiés. La programmation dans l'userform changerait fort peu. Un bouton pour effacer tous les ComboBox serait cependant souhaitable (méthode Nettoyer)
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
40
Affichages
1 K
Réponses
5
Affichages
182
Réponses
16
Affichages
947
Retour