Microsoft 365 filtre sur un tabstrip depuis un combobox

troki74

XLDnaute Nouveau
Bonjour,
Je souhaite faire un filtre sur un tabstrip depuis un combobox voir deux (en cascade) mais si c'est déjà un ce serait super.
J'arrive à filtrer sur le nombre de tabs, mais impossible de renommer les tabs et encore moins de modifier les éléments des pages tabs
Voici mon code :
VB:
Private Sub FiltreAxe_Change()
 
 
Me.TabStrip1.Value = -1                                        'tabstrip no index start
    Do While TabStrip1.Tabs.Count > 1
        TabStrip1.Tabs.Remove (1)                           'remove all but first tab
    Loop
 
For i = 0 To Cells(Rows.Count, 1).End(xlUp).Row - 1 'boucle 1  = boucle sur tous les projets de la liste
If Sheets("Liste projet").Cells(i + 1, 2).Value = FiltreAxe Then
With GestionProjet.TabStrip1
              .Tabs.Add
              .Tabs(i).Caption = Sheets("Liste projet").Cells(i + 1, 4).Value
End With
Axestrat = Sheets("Liste projet").Cells(i + 1, 2).Value
Thème = Sheets("Liste projet").Cells(i + 1, 3).Value
NomRéduit = Sheets("Liste projet").Cells(i + 1, 5).Value
Réferent = Sheets("Liste projet").Cells(i + 1, 6).Value
Datedébutprojet = Sheets("Liste projet").Cells(i + 1, 9).Value
Datefinprojet = Sheets("Liste projet").Cells(i + 1, 10).Value
End If
Next i
 
End Sub
Le début c'est pour effacer les tabs, car on est pas obligé de passer par les filtres, donc lors de l'initialize toute la bdd est affichées.
J'ai donc un bug sur le caption (ligne 13), et les données des contrôles ne se modifie pas lors du changement de tabs (ligne 15 à 20), on a à chaque fois la première valeur issue du filtre.
Sauriez-vous me conseiller?
Cordialement.
 

Pièces jointes

  • TableauSubvention.xlsm
    41 KB · Affichages: 7

troki74

XLDnaute Nouveau
En fait je souhaite afficher les différents projets qui se rattachent soit à un axe soit à un chef de projet. Comme les contrôles sont identiques pour chaque occurrence, le tabstrip semblait pertinent. Dans votre proposition, on ne voit qu'un seul projet à la fois, non?
 

troki74

XLDnaute Nouveau
Re
Effectivement je n'ai sûrement pas compris lol
Avec le "Tabstrip1" tu peux tout voir en même temps , alors que moi non c'est un par un selon le choix dans les combobox .
De plus les combobox sont indépendant l'un de l'autre , rien ne les lie !
Je n'ai pas du comprendre ceux ci ! Excuses!

Bonne continuation
Jean marie
Je te remercie d'avoir passé du temps sur cette proposition, ça aurait été top de pouvoir mixer les deux comme tu proposais
 

youky(BJ)

XLDnaute Barbatruc
Hello,
je viens de faire avec des listbox.
Par contre je comprend pas bien ce que tu veux mixer.
Voici une autre version sur un autre user
Je sais pas ou tu veux en venir?
Bruno
 

Pièces jointes

  • TableauSubvention (4).xlsm
    50.7 KB · Affichages: 3

troki74

XLDnaute Nouveau
Hello,
je viens de faire avec des listbox.
Par contre je comprend pas bien ce que tu veux mixer.
Voici une autre version sur un autre user
Je sais pas ou tu veux en venir?
Bruno
Sympa avec les list box, je n'y avait pas pensé. Pour le tabstrip, c'était pour pouvoir modifier les différents contrôles et les répércuter dans le tableur via un bouton de commande. Et il y a aussi un multipage dedans avec plusieurs financeurs (avec le plan de financement du projet).
Mais ça va me servir Je pensais justement faire un module avec des list box, pour pouvoir imprimer la liste des projets. Dans cette configuration, je mettrais plutôt plusieurs colonnes sur le listbox 1 .
Sinon, je souhaiterais (en bonus) que si on met un filtre sur les deux combobox, cela ne ressorte que les projets qui répondent aux deux critères, si on choisi axe 1 et référent 1 cela ne me sort que projet 1 + projet 2
Un peu comme si on cochait les deux dans un tableau classique. Désolé si j'ai pas exprimé mon besoin clairement.
 
Dernière édition:

youky(BJ)

XLDnaute Barbatruc
Bonjour,
Vu le temps autant être sur le PC.
J'ai ajouté pour afficher le montant et les dates afin de pouvoir les modifier.
Il suffit de clicker sur une ligne de la listbox.
On modifie dans les 3 textbox et on valide
Ce fichier répond bien à la demande.
Bruno
 

Pièces jointes

  • TableauSubvention (5).xlsm
    61.3 KB · Affichages: 3

troki74

XLDnaute Nouveau
Bonjour,
Vu le temps autant être sur le PC.
J'ai ajouté pour afficher le montant et les dates afin de pouvoir les modifier.
Il suffit de clicker sur une ligne de la listbox.
On modifie dans les 3 textbox et on valide
Ce fichier répond bien à la demande.
Bruno
Bonjour,
Merci à vous deux pour toutes ces propositions
Youki, c'est parfait, je peux mettre un multipage en dessous pour les éléments d'extraction. Donc cela répond bien à ma demande. J'essaye de l'adapter à mon fichier source (le nom du référent est en colonne 6 au lieu de 5)
Sauriez vous m'indiquer ce que cela signifie ? :
ListBox1.List(ListBox1.ListCount - 1, 5) = k
 

youky(BJ)

XLDnaute Barbatruc
Salut,
La ListBox1 a 6 colonnes
La dernière en columnWidths est à 0 donc invisible
J'y stock la ligne qui est la variable k
ceci explique ListBox1.List(ListBox1.ListCount - 1, 5) = k
5 est la 6ème colonne (on commence à 0) et k le N° de la ligne c'est bien plus facile
ensuite quand on Valide on retrouve direct la ligne.
Sur ton fichier pense à bien mettre les propriétés columnWidths et columncount=6
Bruno
 

troki74

XLDnaute Nouveau
Salut,
La ListBox1 a 6 colonnes
La dernière en columnWidths est à 0 donc invisible
J'y stock la ligne qui est la variable k
ceci explique ListBox1.List(ListBox1.ListCount - 1, 5) = k
5 est la 6ème colonne (on commence à 0) et k le N° de la ligne c'est bien plus facile
ensuite quand on Valide on retrouve direct la ligne.
Sur ton fichier pense à bien mettre les propriétés columnWidths et columncount=6
Bruno
Bonjour Youky,
Merci pour ta réponse. J'ai ajouté des axes (j'en ai sept dans mon fichier source)
Je constate un bug, lors du passage d'un axe à l'autre, il arrive que la liste soit vierge. Cela arrive plutôt vers les axes 2 et 3. Par ailleurs, en changeant certains axes, le combobox référent filtre est déjà rempli. Sauriez-vous m'aider à résoudre ce bug?
BUG.jpg
 

Pièces jointes

  • TableauSubvention listbox - Copie.xlsm
    65.6 KB · Affichages: 1
Dernière édition:

troki74

XLDnaute Nouveau
Hello, pour l'heure tout fonctionne parfaitement, j'ai quelques valeurs qui sont assez longue donc pas affichées en totalité dans la listbox,
Du coup, j'aurais aimé renvoyer à la ligne certaine ligne du listbox mais je n'ai pas réussi à appliquer des exemples (création d'une ligne fictive) :
Youki est ce que vous maitriseriez la solution proposées?
Après je veux pas être trop exigeant le resultat est déjà top grâce à vos différentes propositions.
 

youky(BJ)

XLDnaute Barbatruc
Salut bien,
Sans faire de retour à la ligne on peut se passer des axes dans la listbox
Cela fait 1 colonne en moins , les Axes sont mis dans le combobox
Voir le fichier joint
Si tu préfères avoir une seule fois L'Axe tu me dit je l'ai fait c'est facile mais je n'en vois aucun intérêt.
Bruno

PS: il est possible de modifier le columnwidth=.....
ceci dans les propriétés du listbox.
Aussi la colonne qui est grande(je sais pas laquelle)
En macro la placer à la fin et mettre plus en columnwidth
Ainsi une barre scroll se fera il suffira de tirer si besoin.
 

Pièces jointes

  • TableauSubvention listbox - Copie2.xlsm
    72.4 KB · Affichages: 3
Dernière édition:

troki74

XLDnaute Nouveau
Salut bien,
Sans faire de retour à la ligne on peut se passer des axes dans la listbox
Cela fait 1 colonne en moins , les Axes sont mis dans le combobox
Voir le fichier joint
Si tu préfères avoir une seule fois L'Axe tu me dit je l'ai fait c'est facile mais je n'en vois aucun intérêt.
Bruno

PS: il est possible de modifier le columnwidth=.....
ceci dans les propriétés du listbox.
Aussi la colonne qui est grande(je sais pas laquelle)
En macro la placer à la fin et mettre plus en columnwidth
Ainsi une barre scroll se fera il suffira de tirer si besoin.
Bonjour Youki,
Lors de l'initialise, j'ai mis toute la liste car l'idée est de pouvoir exporter (PDF ou Excel) soit toute la liste, soit la liste filtrée. Les contrôles n'apparaissent que si l'on clique sur une ligne du listbox.
L'userform sert aussi à modifier la BDD. Donc, pour la largeur de colonne, il s'étend progressivement sur la droite en fonction des besoins de modification (j'en suis à 1250,25 en largeur) et ça risque de prendre toute la page de l'écran. Je vais essayer de réorganiser un peu pour gagner de la place et étendre le listbox.
Merci encore pour cette nouvelle proposition.
 

Discussions similaires

Statistiques des forums

Discussions
312 198
Messages
2 086 153
Membres
103 137
dernier inscrit
Billly