XL 2019 VBA Userform Remplir une combobox

alexane

XLDnaute Occasionnel
Bonjour à tous,
D'après ce que je sais, il est possible de remplir une combobox en utilisant des valeurs saisies dans une feuille en utilisant soit RowSource soit AddItem. Laquelle des 2 méthodes est la plus efficace ? Y a t il d'autres méthodes ?
En fait je cherche à comprendre dans quelles circonstances il faut privilégier l'une ou l'autre des méthodes ?
Merci
 

alexane

XLDnaute Occasionnel
Ok.
Si je comprends bien, List a pour avantage d'éviter de remplir en utilisant une boucle
VB:
For j = 1 To lim
    ComboBox1.AddItem .Cells(j, 1).Value
Next j
Je vais regarder ça de plus près, c'est moins lourdeau ! Encore merci
 

Staple1600

XLDnaute Barbatruc
Re

Exact. Avec List pas de boucle
Et on peut aussi varier les plaisirs ;)
VB:
Private Sub UserForm_Initialize()
With Sheets(1).Cells(1).Resize(, 13)
    .Formula = "=COLUMN()"
    ComboBox1.List = Application.Transpose(.Value2)
End With
End Sub
 

alexane

XLDnaute Occasionnel
Ah , je comprenais pas pourquoi tu me passais ce bout de code mais oui, le transpose pour récupérer les données à l'horizontal, ça peut tjs être utile ! Et puis j'avais jamais utilisé un value2
Merci beaucoup pour toutes ces infos
 

Staple1600

XLDnaute Barbatruc
Re

Cells(1) c'est A1 ;)
Et toujours pour varier les plaisirs ;)
VB:
Sub k()
Dim a$, b$, c$, d$, e$, f$
a = [A1].Address
b = Cells(1).Address
c = Cells(1, 1).Address
d = Cells(1, "A").Address
e = ActiveSheet.UsedRange.Item(1).Address
f = Range("A1").Address
MsgBox a & vbCr & b & vbCr & c & vbCr & d & vbCr & e & vbCr & f, vbExclamation, "Aie,Caramba!"
End Sub
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 108
Messages
2 085 371
Membres
102 876
dernier inscrit
BouteilleMan