Filtrer les lignes afficher dans un userform

pmfontaine

XLDnaute Occasionnel
Bonjour, Je ne sais pas si mon titre est bien clair car j'ai eu beau chercher sur le Net avec ces mots clés et bien d'autres, mais je n'ai rien trouvé.
1 - J'aurais besoins de votre aide pour filtrer les résultats dans les TextBox en fonction des sélections faites dans des ComboBox ?
2 - Et t'il possible de lire les données de la feuille en restant sur une autre feuille ?

Je pense que la lecture du fichier joint sera beaucoup plus explicite que mon texte.
Merci d'avance pour votre aide
Patrick
 

Pièces jointes

  • FiltrerTextBoxComboBox.xlsm
    30.7 KB · Affichages: 93

pmfontaine

XLDnaute Occasionnel
Bonjour,
Je reviens vers vous car mon fichier est maintenant opérationnel, j'ai donc commencé a l'utiliser, mais j'ai un petit soucis très aléatoire (2 fois sur 120 lignes saisies).
Voir copie écran joint (Mon fichier comporte maintenant beaucoup de Nom Propre et je ne peux pas le joindre dans l'état. Mais ce code est parfaitement identique a celui que vous (Dranreb) avez mis dans le fichier du 08/01)
J'ai refais la saisie sur l'espèce qui a crée l'erreur, mais la deuxième fois aucun problème.



Merci d'avance pour votre réponse
Patrick
 
Dernière édition:

Dranreb

XLDnaute Barbatruc
Bonsoir.
Très étrange.
Allez en débogage et mettez un espion sur L et un autre sur LBx.ListCount.
Parce qu'à mon avis ça ne peut se produire que si LBx.ListCount < L + 1
Si c'est le cas il faut voir par quelle suite de circonstances le UBound(TLgn) peut devenir en désaccord avec LBx.ListCount.
Notez qu'il pourrait y avoir un moyen de se passer de TLgn en rangeant les numéros de lignes dans une colonne supplémentaire de largeur nulle dans la LBx. Au moins comme ça ça ne pourrait plus arriver.
 

pmfontaine

XLDnaute Occasionnel
Bonsoir,
Merci Branreb pour votre réponse
Allez en débogage et mettez un espion sur L et un autre sur LBx.ListCount.
Ok, je ne connais pas les espions, mais j'ai vu comment les mettre en place.
Je suppose qu'une fois en place je fais des essais jusqu’à ce que ça bug et je regarde ?
Notez qu'il pourrait y avoir un moyen de se passer de TLgn en rangeant les numéros de lignes dans une colonne supplémentaire de largeur nulle dans la LBx. Au moins comme ça ça ne pourrait plus arriver.
Et bien, perso, il me semble que si ont a une solution pour éviter le bug ? Pourquoi sans priver ? Est-ce que vous pouvez le faire sur le fichier du 08/01 ? Car moi, vous vous doutez que je ne sais pas comment faire.
Ah j'ai un très fort soupçon: dans ma version j'ai dans la CBnEnreg_Click un LBx.Clear qui n'est pas suivi de ReDim TLgn(-1 To -1) pour vider logiquement TLgn.
Ou du moins ils y sont les deux sont plus bas, mais en commentaire…
Vous pensez qu'il faut remplacer
VB:
LBx.Clear:
CL.Nettoyer
Me.CBxDéjàObs = ""
Me.CBxSite = ""
Me.datedesobservations = ""
'LBx.Clear: ReDim TLgn(-1 To -1)
CBnEnreg.Enabled = False
Par
VB:
LBx.Clear:
CL.Nettoyer
Me.CBxDéjàObs = ""
Me.CBxSite = ""
Me.datedesobservations = ""
LBx.Clear: ReDim TLgn(-1 To -1)
CBnEnreg.Enabled = False
C'est ça ?
Je pense pouvoir faire des essais avec les espions demain.
Bonne soirée
Patrick
 

Dranreb

XLDnaute Barbatruc
Oui ça va aussi comme ça mais alors il n'y a plus lieu de laisser le 1er LBx.Clear non suivi de Redim TLgn(-1 To -1)

Les espions peuvent se mettre lors d'un arrêt, en débogage. Pas besoin de les mettre avant de tenter une exécution.
 

Discussions similaires

  • Résolu(e)
Microsoft 365 Code de tri
Réponses
22
Affichages
325
Réponses
2
Affichages
299

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 329
Messages
2 087 335
Membres
103 520
dernier inscrit
Azise