Problème Affichage données dans listbox avec Multi Critère

Le
Alex
Bonjour à tous,

Je viens à vous car je renconte un problème d'affichage de données
dans une listbox, suite à filtrage sur 5 critères. Je voudrais voir
dans mon listbox les données correspondants aux critères bien entendu
mais uniquement les 5 colonnes correspondant aux critères, et non
toutes les colonnes.

J'ai bien tenté de travailler sur ColumnWidths en metant des 0 quand
je ne voulais pas voir la colonne s'afficher, et une valeur numérique
lorsque je voulais voir les données, mais il apparait un message
"Erreur d'execution 2147352571 - Impossible de définir la propriété
ColumnWidths. Le type ne correspond pas."

Merci par avance pour vos réponses et suggestions pour ne faire
apparaître que mes Colonnes Immeuble, Genre, Type, Statut et Nom Loc
dans le listbox

J'ai mis mon fichier sur Cjoint.com http://cjoint.com/?1dznjR7MOoX

D'avance Merci
Alex
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
MichD
Le #23232331
Bonjour,

A ) utilise un filtre élaboré
IMPORTANT : POUR EFFECTUER ce qui suit, tu dois appeler la commande
Filtre élaboré lorsque la nouvelle feuille est celle qui est active, affiché à l'écran.

Évidemment, tout ce qui suit peut se faire par macro.

B ) Utilise une nouvelle feuille pour afficher le résultat
Dans cette nouvelle feuille, en première ligne par exemple,
tu copies (faire attention à la casse) les étiquettes de colonnes
de ton tableau qui t'intéresse dans l'ordre que tu désires. Il peut-être
différent de celui de ton tableau initial.

C ) Tu définis ta zone de critère pour le filtre élaboré et dans la fenêtre
du filtre élaboré, tu indiques que tu veux copier le résultat ailleurs et
dans la case appropriée, tu indiques la plage de cellule sur la ligne de
la feuille où tu as copié les étiquettes.

Et pour renseigner ta listbox :

With Worksheets("NomDeLaFeuilleContenantRésultatDuFiltre")
With .Range("A1:D" & .Range("A65536").end(xlup).row)
Userform1.Listbox1.List = .value 'Ton listbox peut aussi être dans une feuille !
End with
End With



MichD
--------------------------------------------
"Alex" a écrit dans le message de groupe de discussion :


Bonjour à tous,

Je viens à vous car je renconte un problème d'affichage de données
dans une listbox, suite à filtrage sur 5 critères. Je voudrais voir
dans mon listbox les données correspondants aux critères bien entendu
mais uniquement les 5 colonnes correspondant aux critères, et non
toutes les colonnes.

J'ai bien tenté de travailler sur ColumnWidths en metant des 0 quand
je ne voulais pas voir la colonne s'afficher, et une valeur numérique
lorsque je voulais voir les données, mais il apparait un message
"Erreur d'execution 2147352571 - Impossible de définir la propriété
ColumnWidths. Le type ne correspond pas."

Merci par avance pour vos réponses et suggestions pour ne faire
apparaître que mes Colonnes Immeuble, Genre, Type, Statut et Nom Loc
dans le listbox

J'ai mis mon fichier sur Cjoint.com http://cjoint.com/?1dznjR7MOoX

D'avance Merci
Alex
DanielCo
Le #23232491
Bonjour,
Le code suivant fonctionne :

With ActiveSheet.AutoFilter
txt = ""
For i = 1 To .Filters.Count
txt = txt & IIf(.Filters(i).On = True, "20 pt;", "0 pt;")
Next i
txt = Left(txt, Len(txt) - 1)
End With
Me.ListBox1.ColumnWidths = txt

Cordialement.
Daniel


Bonjour à tous,

Je viens à vous car je renconte un problème d'affichage de données
dans une listbox, suite à filtrage sur 5 critères. Je voudrais voir
dans mon listbox les données correspondants aux critères bien entendu
mais uniquement les 5 colonnes correspondant aux critères, et non
toutes les colonnes.

J'ai bien tenté de travailler sur ColumnWidths en metant des 0 quand
je ne voulais pas voir la colonne s'afficher, et une valeur numérique
lorsque je voulais voir les données, mais il apparait un message
"Erreur d'execution 2147352571 - Impossible de définir la propriété
ColumnWidths. Le type ne correspond pas."

Merci par avance pour vos réponses et suggestions pour ne faire
apparaître que mes Colonnes Immeuble, Genre, Type, Statut et Nom Loc
dans le listbox

J'ai mis mon fichier sur Cjoint.com http://cjoint.com/?1dznjR7MOoX

D'avance Merci
Alex
news.free.fr
Le #23232411
Bonjour,
Le code suivant fonctionne :

With ActiveSheet.AutoFilter
txt = ""
For i = 1 To .Filters.Count
txt = txt & IIf(.Filters(i).On = True, "20 pt;", "0 pt;")
Next i
txt = Left(txt, Len(txt) - 1)
End With
Me.ListBox1.ColumnWidths = txt

Cordialement.
Daniel


Bonjour à tous,

Je viens à vous car je renconte un problème d'affichage de données
dans une listbox, suite à filtrage sur 5 critères. Je voudrais voir
dans mon listbox les données correspondants aux critères bien entendu
mais uniquement les 5 colonnes correspondant aux critères, et non
toutes les colonnes.

J'ai bien tenté de travailler sur ColumnWidths en metant des 0 quand
je ne voulais pas voir la colonne s'afficher, et une valeur numérique
lorsque je voulais voir les données, mais il apparait un message
"Erreur d'execution 2147352571 - Impossible de définir la propriété
ColumnWidths. Le type ne correspond pas."

Merci par avance pour vos réponses et suggestions pour ne faire
apparaître que mes Colonnes Immeuble, Genre, Type, Statut et Nom Loc
dans le listbox

J'ai mis mon fichier sur Cjoint.com http://cjoint.com/?1dznjR7MOoX

D'avance Merci
Alex
Alex
Le #23232481
Bonjour MichD,

Merci pour ta réponse. .
Entre temps, j'avais tester autre chose, qui à l'air de fonctionner,
au lieu de mettre l'ensemble des 116 colonnes pour ma zone de critere
et ma zone d'estraction, je n'ai mis que les 5 colonnes qui
m'interessaient, et j'ai pu mettre columnswidths avec les valeurs qui
convenaient dans ma macro et j'ai mis à 5 ColumnsCount.

Je vais tester ta solution, car je préfererai comme meme avoir mon
extaction sur une feuile differente, et ainsi proteger ma feuille BDD.
Je remettrai un message si je n'arrive pas à mettre en place ta
solution.

Encore un grand Merci
Alex
Publicité
Poster une réponse
Anonyme