[VB6 -> VBA] Comment afficher que certaines lignes dans une textbox [Résolu]

Signaler
-
 TITOU63200 -
Bonjour,

Je cherche comment afficher seulement certaines lignes de ma feuille excel, dans une textbox.

Dans mon premier choix j'affiche toute la feuille de la colonne a à k c'est ok ça marche:

If OptButton1 = True Then
UserForm3.Controls("ListBox1").RowSource = " feuille!a1:k100000"
End If

Mais dans mon deuxième choix je désire que sur la zone a1:k100000 de ma feuille n'afficher dans ma textbox que les lignes où dans la colonne H j'ai la valeur "Actif".

Comment je dois faire ? Merci pour votre aide

4 réponses

Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
220
Bonjour,
1) Tu es ici dans la section
Forum > Visual Basic 6

Prends s'il te plait dorénavant soin d'ouvrir tes discussions VBA dans la section Langages dérivés > VBA (important)
2) la propriété RowSource ne peut être utilisée que pour des cellules contigües.
Pour alimenter ta listbox avec des cellules d'une plage non continue, tu n'as d'autre choix que celui :
- de ne pas utiliser la propriété RowSource
- de parcourir en boucle ta colonne et de n'ajouter (par additem) à ta listbox que les valeurs répondant à ton critère.
3) fais gaffe à ton titre et aux 1ère et dernière phrases de ton message : ils ne correspondent pas à ton code !.

________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.

Bonjour,

Mais dans mon deuxième choix je désire que sur la zone a1:k100000 de ma feuille n'afficher dans ma textbox que les lignes où dans la colonne H j'ai la valeur "Actif".


Tu prends l'enregistreur de macros et tu te fais un filtre. Pour ma part, je dirais un filtre élaboré avec extraction sur une nouvelle feuille. Ensuite, tu fais comme pour ton autre feuille en adaptant la plage et le nom de la feuille.
merci beaucoup
Merci beaucoup je viens de terminer. Cette solution est simple à mettre en place pour moi étant donné mon niveau.