Plage associative dans une ListBox
Bonjour,
Question de gain de temps dans les routines VBA.
Je souhaite charger une listbox le plus rapidement possible. J'entends par 'le plus rapidement possible', avec le moins de traitements de code possible (il est vrai, qu'un informaticien doit être un peu fénéant, cela l'oblige à optimiser son code).
si...
Code:
1 2
|
UserForm.ListBox.Rowsource = "laFeuille!A1:B2" |
est connu, et fonctionne,
Code:
1 2
|
UserForm.ListBox.Rowsource = "laFeuille!A1:B2" & "laFeuille!C1:D2", |
ne fonctionnant pas. Existe-t-il une méthode qui s'assimilerait à cette forme associative de plages pour charger une listbox ? Je cherche à minimiser les lignes de code.
Merci, si avis ou piste.
Danbo52
listbox chargement plages associatives
Fvandermeulen, merci, mais je connais bien cela.
Je pense à un constructeur pour réaliser ce travail, constructeur qui serait de la forme
Code:
1 2
|
userform.listbox.Rowsource = "Plage A" & "Plage B" & "Plage C" |
...., qui éliminerait toutes les lignes au-delà de la plage à moindre lignes.
Exemple:
Code:
1 2
|
userform.listbox.Rowsource = "Plage!A1:B2" & "Plage!C1:D3" & "Plage!E1:F4" |
qui élimerait donc les parties au-delà de 2, car la plage l plus courte est plage!A1:B2
Elle renverrait un résultat
Code:
1 2
|
userform.listbox.Rowsource = "Plage!A1:B2" & "Plage!C1:D2" & "Plage!E1:F2" |
Si je parviens à me faire comprendre.
L'idée centrale c'est : moins de code !
Mon travail consiste à remplir et vider des listbox dans le cadre d'un gestionnaire de devis-factures avec clients, fournisseurs, articles, stocks.
Comme il y a de nombreuses routines pour remplir les listbox (toujours les mêmes), je réfléchisssais à cela en le soumettant aux neurones des praticiens.
Voilà, voilà !