Vba excel affichage d'un sheet fitre userform
gomido
Messages postés
4
Statut
Membre
-
Mytå Messages postés 4246 Date d'inscription Statut Contributeur Dernière intervention -
Mytå Messages postés 4246 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
j'ai fais un filtre de donnees dans un worksheet et je fais affichagé dans un listbox via un userform ,
le worksheet est bien filtré mais quand il affiche le listbox ne filtre n'expas appliqué
bref, mon problème est de rechercher des données dans un worksheet et l'afficher dans un userform pour que l'utilisateur puisse sélectionner la donné désirées.
j'ai fais un filtre de donnees dans un worksheet et je fais affichagé dans un listbox via un userform ,
le worksheet est bien filtré mais quand il affiche le listbox ne filtre n'expas appliqué
bref, mon problème est de rechercher des données dans un worksheet et l'afficher dans un userform pour que l'utilisateur puisse sélectionner la donné désirées.
A voir également:
- Vba excel affichage d'un sheet fitre userform
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Trier un tableau excel - Guide
- Si ou excel - Guide
- Excel compter cellule couleur sans vba - Guide
3 réponses
Salut le forum
Pour remplir une ListBox multi-colonnes avec une plage filtrée
Mytå
Quelle prétention de prétendre que l'informatique est récente
Adam et Eve avaient déjà un Apple ! [MsProject 2003(FR), Excel 2003-2007(FR)]
Pour remplir une ListBox multi-colonnes avec une plage filtrée
Private Sub UserForm_Initialize()
Dim Cel As Range, Cpt As Integer
Cpt = 0
For Each Cel In Range("A2:A" & Cells(Rows.Count, 1).End(xlUp).Row).SpecialCells(xlCellTypeVisible)
Me.ListBox1.AddItem
Me.ListBox1.List(Cpt, 0) = Cel ' 1ere colonne
Me.ListBox1.List(Cpt, 1) = Cel.Offset(, 1) ' 2eme colonne
Cpt = Cpt + 1
Next Cel
End Sub
Mytå
Quelle prétention de prétendre que l'informatique est récente
Adam et Eve avaient déjà un Apple ! [MsProject 2003(FR), Excel 2003-2007(FR)]
Bonjour,
Pour l'exemple, j'ai utilisé l'événement Initialize de l'Userform, mais tu peux metttre le code dans un bouton ou tout autre événement :
Pour l'exemple, j'ai utilisé l'événement Initialize de l'Userform, mais tu peux metttre le code dans un bouton ou tout autre événement :
Private Sub UserForm_Initialize()
Dim Wsh As Worksheet, lig As Long, drlig As Long, Crit
Crit = "X" '---> A ADAPTER = ton critère
Set Wsh = Sheets("Feuil1") '---> A ADAPTER = Nom de ta feuille
With Wsh
drlig = .Columns(1).Find("*", , , , xlByColumns, xlPrevious).Row
For lig = 2 To drlig
'---> A ADAPTER : F = colonne à filtrer contenant ou pas le critère Crit,
'C = colonne contenant les données à transférer dans la listbox
If .Range("F" & lig).Value = Crit Then ListBox1.AddItem .Range("C" & lig).Value
Next
End With
Set Wsh = Nothing
End Sub
Bonsoir,
j ai vu ta reponse
la ligne:drlig = .Columns(1).Find("*", , , , xlByColumns, xlPrevious).Row
ne fonctionne pas ,j ai un message incompatibilité de type
donc j ai du faire ceci:
set drlig = .Columns(1).Find("*",lookin:=xlvalues ,lookat:=xlpart ,searchOder:=xlByColumns)
au fait la ligne listbox1.additem(sheet17.range("A"&lig).value me donne qu'une colonne ce qui est normale comment faire pour avoir toute les colonnes affiché?
merci pour tous
j ai vu ta reponse
la ligne:drlig = .Columns(1).Find("*", , , , xlByColumns, xlPrevious).Row
ne fonctionne pas ,j ai un message incompatibilité de type
donc j ai du faire ceci:
set drlig = .Columns(1).Find("*",lookin:=xlvalues ,lookat:=xlpart ,searchOder:=xlByColumns)
au fait la ligne listbox1.additem(sheet17.range("A"&lig).value me donne qu'une colonne ce qui est normale comment faire pour avoir toute les colonnes affiché?
merci pour tous