Bonjour
J'ai un userform avec plusieurs champs et une listbox qui s'initialise sur
une plage d'une feuille x par la proporété rowsource.
Cette plage est sujet à des modifications ajout de données. Je souhaite que
ma listbox se mette à jour à chaque fois que les données s'ajoute sans avoir
à un loader l'userfor (pour info les données s'ajoute en cliquant sur un
bouton de commande).
Merci de votre aide
H
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
IMER09
Bonsoir omh Si ta listbox ne contient qu'une seule colonne !
une plage d'une feuille x
le code suivant devrait fonctionner a addapter Il copie ta liste en AA vers BB la trie et la met par ordre alph cette liste sera ta liste de textbox si ta liste a plusieur ligne: ta liste = B2:B... si ta liste n'a qu'1 seul ligne: ta liste = B2 Puis efface la liste en BB
-- Private Sub CommandButton1_Click() "le code de ton bouton" TextBox1.Clear Sheets("Feuilx").Select Dim B As Range Range("A1", Range("A65536").End(xlUp)).AdvancedFilter _ Action:=xlFilterCopy, CopyToRange:=Range( _ "B1"), Unique:=True Range("B2:B65536").Select Selection.Sort Key1:=Range("B2"), Order1:=xlAscending, Header:=xlNo, _ OrderCustom:=1, Orientation:=xlTopToBottom For Each B In Range("B2", Range("B65536").End(xlUp)) If Range("B3") <> "" Then Me.TextBox1.AddItem B End If If Range("B3") = "" Then Me.TextBox1 = Range("B2") End If Next B [B:B].ClearContents End Sub
IMER09
"omh" wrote:
Bonjour J'ai un userform avec plusieurs champs et une listbox qui s'initialise sur une plage d'une feuille x par la proporété rowsource. Cette plage est sujet à des modifications ajout de données. Je souhaite que ma listbox se mette à jour à chaque fois que les données s'ajoute sans avoir à un loader l'userfor (pour info les données s'ajoute en cliquant sur un bouton de commande). Merci de votre aide H
Bonsoir omh
Si ta listbox ne contient qu'une seule colonne !
une plage d'une feuille x
le code suivant devrait fonctionner a addapter
Il copie ta liste en AA vers BB la trie et la met par ordre alph
cette liste sera ta liste de textbox
si ta liste a plusieur ligne: ta liste = B2:B...
si ta liste n'a qu'1 seul ligne: ta liste = B2
Puis efface la liste en BB
-- Private Sub CommandButton1_Click()
"le code de ton bouton"
TextBox1.Clear
Sheets("Feuilx").Select
Dim B As Range
Range("A1", Range("A65536").End(xlUp)).AdvancedFilter _
Action:=xlFilterCopy, CopyToRange:=Range( _
"B1"), Unique:=True
Range("B2:B65536").Select
Selection.Sort Key1:=Range("B2"), Order1:=xlAscending,
Header:=xlNo, _
OrderCustom:=1, Orientation:=xlTopToBottom
For Each B In Range("B2", Range("B65536").End(xlUp))
If Range("B3") <> "" Then
Me.TextBox1.AddItem B
End If
If Range("B3") = "" Then
Me.TextBox1 = Range("B2")
End If
Next B
[B:B].ClearContents
End Sub
IMER09
"omh" wrote:
Bonjour
J'ai un userform avec plusieurs champs et une listbox qui s'initialise sur
une plage d'une feuille x par la proporété rowsource.
Cette plage est sujet à des modifications ajout de données. Je souhaite que
ma listbox se mette à jour à chaque fois que les données s'ajoute sans avoir
à un loader l'userfor (pour info les données s'ajoute en cliquant sur un
bouton de commande).
Merci de votre aide
H
Bonsoir omh Si ta listbox ne contient qu'une seule colonne !
une plage d'une feuille x
le code suivant devrait fonctionner a addapter Il copie ta liste en AA vers BB la trie et la met par ordre alph cette liste sera ta liste de textbox si ta liste a plusieur ligne: ta liste = B2:B... si ta liste n'a qu'1 seul ligne: ta liste = B2 Puis efface la liste en BB
-- Private Sub CommandButton1_Click() "le code de ton bouton" TextBox1.Clear Sheets("Feuilx").Select Dim B As Range Range("A1", Range("A65536").End(xlUp)).AdvancedFilter _ Action:=xlFilterCopy, CopyToRange:=Range( _ "B1"), Unique:=True Range("B2:B65536").Select Selection.Sort Key1:=Range("B2"), Order1:=xlAscending, Header:=xlNo, _ OrderCustom:=1, Orientation:=xlTopToBottom For Each B In Range("B2", Range("B65536").End(xlUp)) If Range("B3") <> "" Then Me.TextBox1.AddItem B End If If Range("B3") = "" Then Me.TextBox1 = Range("B2") End If Next B [B:B].ClearContents End Sub
IMER09
"omh" wrote:
Bonjour J'ai un userform avec plusieurs champs et une listbox qui s'initialise sur une plage d'une feuille x par la proporété rowsource. Cette plage est sujet à des modifications ajout de données. Je souhaite que ma listbox se mette à jour à chaque fois que les données s'ajoute sans avoir à un loader l'userfor (pour info les données s'ajoute en cliquant sur un bouton de commande). Merci de votre aide H