Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Alimenter un ListBox avec des données sur une ligne

  • Initiateur de la discussion Initiateur de la discussion blord
  • Date de début Date de début

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 !

blord

XLDnaute Impliqué
Bonjour à tous,

Est-il possible d'alimenter un listbox avec des données contenues sur une ligne au lieu d'une colonne ?

Exemple :

première donnée en C1
deuxième donnée en D1
troisième donnée en E1
etc...

Le nombre de données étant variable ?

Merci à tous !
 
Re : Alimenter un ListBox avec des données sur une ligne

Bonjour Spitnolan, Stapple

je prends le fil en cours, pas tout lu, suis peut être à coté, mais si vous cherchez les equivalences des constantes "xlcelltype", voir tableau ci dessous issu de l'aide vba :


bon week end
@+
 
Re : Alimenter un ListBox avec des données sur une ligne

Re

je ne suis pas du tout sur que tu puisses renvoyer dans une variable ces types de constantes...

Elles correspondraient à quoi d'ailleurs, puisque utilisées dans des instructions...

Ci dessous liste des constantes "xldirection"

Constante Valeur
xlDown -4121
xlToLeft -4159
xlToRight -4161
xlUp -4162

@+
 
Re : Alimenter un ListBox avec des données sur une ligne

Re

->Pierrot93:

Ce que je veux dire : c'est comment faire pour avoir la valeur de la constante

Dans la fenetre d'exécution?

Comment Spinolan08 sait-il que xlToLeft lui renvoie la valeur :-4159?
 
Re : Alimenter un ListBox avec des données sur une ligne

Re,
Salut Pierrot,

Comment Spinolan08 sait-il que xlToLeft lui renvoie la valeur :-4159?
En fait je le fais à la vieille méthode : J'arrête l'exécution de la macro sur la ligne de l'instruction recherchée et en passant la souris sur la constante, il s'affiche en commentaire sa valeur... Fastidieux mais bon...

Cordialement
 
Re : Alimenter un ListBox avec des données sur une ligne

Re

Merci Spitnolan08 pour ta réponse
(j'étais pas loin)


Comme on ne sait toujours pas pourquoi la syntaxe que j'ai utilisé fonctionne
alors qu'elle ne devrait pas, je repose la question aux autres forumeurs.

Qui aura l'explication ?
Code:
Private Sub UserForm_Initialize()
ListBox1.List = Application.Transpose(Rows(1).Cells.SpecialCells(7).Offset(, -1).Value)
[B]'Cells.SpecialCells(7) fonctionne[/B]
End Sub

Code:
Private Sub UserForm_Initialize()
Dim R as Range
Set R=Sheets("Feuil1").Range([A1], [IV1].End(1))
[B]'End(1))[/B] fonctionne
ListBox1.List = Application.Transpose(R)
End Sub
 
Re : Alimenter un ListBox avec des données sur une ligne

Salut Stapple & MsgBox " et aux autres",

Code:
Dim li1&, li2&, li3&, li4&

Sub dis_nous()

li1 = Range("A1").End(xlDown).Row
MsgBox "xlDown " & xlDown
li2 = Range("A1").End(xlUp).Row
MsgBox "xlUp " & xlUp
li3 = Range("A1").End(xlToLeft).Row
MsgBox "xlToLeft " & xlToLeft
li4 = Range("A1").End(xlToRight).Row
MsgBox "xlToRight" & xlToRight

End Sub
 
Re : Alimenter un ListBox avec des données sur une ligne

Merci Excel_lent (et bonjour)

En testant avec ton code
Code:
Sub dis_nous()
li1 = Range("B2").End(4).Address
MsgBox "xlDown " & xlDown & Chr(13) & li1
li2 = Range("B2").End(3).Address
MsgBox "xlUp " & xlUp & Chr(13) & li2
li3 = Range("b2").End(1).Address
MsgBox "xlToLeft " & xlToLeft & Chr(13) & li3
li4 = Range("b2").End(2).Address
MsgBox "xlToRight" & xlToRight & Chr(13) & li4
End Sub

Cela fonctionne

mais ca ne devrait pas non?
 
Re : Alimenter un ListBox avec des données sur une ligne

Re à tous, Bonjour Excel Lent

a priori on peut utiliser soit le nom, soit la valeur ou soit l'index d'une constante, mais attention cela peut poser problème si l'on a 2 constantes differentes, l'une en index 3 et une autre dont la valeur est 3...

Cela n'engage que moi, je n'ai rien trouvé dans l'aide à ce sujet confirmant ce propos. Perso j'utilise généralement les noms des constantes.

bon après midi
@+
 
Re : Alimenter un ListBox avec des données sur une ligne

Re tous,

Comme Pierrot, j'utilises toujours le nom des constantes VBA en clair : Ce n'est pas beaucoup plus long à écrire et c'est beaucoup plus compréhensible.
Le VBA n'est pas une course de vitesse d'écriture, mais une question d'organisation et de clareté pour pouvoir retrouver ses petits lors de nécessaires mises à jour ultérieures... Et déjà que ce n'est pas toujours facile de tout bien ordonner pour s'y retrouver, alors s'il faut en plus passer du temps à identifier les constantes saisies en abrégé...😱

Cordialement
 
- 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
17
Affichages
931
Réponses
40
Affichages
1 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…