Chargement de Userfom

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Re : Chargement de Userfom

bonjour , dans le code de l'initialisation, il faut modifier l'origine de la combobox:
ComboBox1.RowSource = "Feuil1!A1:A2"
comme cela par exemple pour les cellules A1 à A2 de la feuille 1
 
Re : Chargement de Userfom

Hello,

Juste pour commencer, on n'écrit pas
Code:
[COLOR="Red"][B]Range(a1)[/B][/COLOR]
mais
Code:
[COLOR="Green"][B]Range("A1")[/B][/COLOR]
ou pas
Code:
[COLOR="Red"][B]Range(A1, A2)[/B][/COLOR]
mais
Code:
[COLOR="Green"][B]Range("A1:A2")[/B][/COLOR]
Pour le RowSource, dans VBA, tu sélectionnes la ComboBox et dans la fenêtre des propriétés, dans RowSource tu mets A1:A2.

Mais le mieux est de mettre par exemple ce bout de code
Code:
Private Sub UserForm_Initialize()

    With Sheets("Feuil1")
        ComboBox1.List = .Range("A1:A" & .Range("A65000").End(xlUp).Row).Value
    End With

End Sub
De cette manière, la ComboBox est dynamique, dès que tu rajoutes un nom en colonne A, il apparaîtra dans la ComboBox.

Espérant t'avoir aidé un peu.

Cdt, Hulk.

EDIT : Bj et pardon Pou pouille et le requin.
 
Re : Chargement de Userfom

Bonjour le fil, bonjour le forum,

parce que Hulk est un malin... il aurait pu écrire :
Code:
ComboBox1.List = [COLOR=red]Sheets("Feuil1")[/COLOR].Range("A1:A" & [COLOR=red]Sheets("Feuil1")[/COLOR].Range("A65000").End(xlUp).Row).Value
End With
mais finalement il a gagné 3 caractères avec With et End With...

J'ai dit malin mais j'aurais pu tout aussi bien pu dire flemmard...
 
Re : Chargement de Userfom

Re,

Pour te répondre Adilprodigy, si tu n'as qu'une seule feuille ou si tu appelles toujours l'Usf depuis la même feuille, oui tu peux très bien écrire
Code:
Private Sub UserForm_Initialize()

    ComboBox1.List = .Range("A1:A" & .Range("A65000").End(xlUp).Row).Value

End Sub
mais si tu as plusieurs feuilles et que tu veux appeler l'Usf depuis une autre feuille, il faut toujours référencer la feuille où se trouve ta liste !... Comme ci-dessous.
Code:
Private Sub UserForm_Initialize()

    With Sheets("Feuil1")
        ComboBox1.List = .Range("A1:A" & .Range("A65000").End(xlUp).Row).Value
    End With

End Sub

'Ou

Private Sub UserForm_Initialize()

    ComboBox1.List = Sheets("Feuil1").Range("A1:A" & Sheets("Feuil1").Range("A65000").End(xlUp).Row).Value

End Sub
Voilà l'utilité de mettre un With Sheets... ou Sheets...

Cdt, Hulk.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
1
Affichages
156
Retour