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

Autres je ne suis pas curieux mais j'aimerais savoir....

G.David

XLDnaute Impliqué
Non en fait je suis curieux, je viens de rouvrir un bouquin de VBA (il s'est d'ailleurs si bien ouvert qu'il est en cours de restauration livre broché de 1032 pages ...gnn gnnn)
bon il était avec un cd d'exemples avec codes accessible pour "learner le VBA"
c'est de John Walkenbach 'bon et c'est pour vba 2002...(ça date)
VB:
Private Sub ListBox1_Click()
    If ListBox1.ListIndex <> -1 Then
        Rows(ListBox1.ListIndex + 2).Select
    End If
End Sub

Private Sub OKButton_Click()
    Unload Me
End Sub

Private Sub UserForm_Click()

End Sub

on ajoute juste un module avec userform1.show
alors ce que je ne comprends pas c'est comment le listbox se retrouve lié a la plage, et comment il est alimenté, j'ai tenté de rajoute une ligne elle n'est pas prise en compte, par contre si je change le texte oui, ,et pour le coup ,
J'Y PIGE QUE DALLE
 
Dernière édition:
Solution
Bonjour le fil, G-David, Chris24

C'est écrit dans le livre non?
(pages 472-473 dans la version Excel 2007)
1) Il faut renseigner la propriété RowSource
donc: A2:C12 et mettre ColumnHead sur True
2) Mettre ColumnCount sur 3
3) Et pour ColumnWidths: 100;40;30

PS: Je viens de faire le test.

NB: Il manque quelque dans le message#1, non ?
Tout au début...

Chris24

XLDnaute Impliqué
Bonjour G.David

Pour piger il faut chercher et regarder le code du formulaire

L'initialisation de la liste se trouve normalement dans la procédure UserFormInitialize

Si tu ajoutes une ligne et qu'elle nest pas prise en compte c'est certainement que la listBox est alimentée par une plage fixe.
 

G.David

XLDnaute Impliqué
tu as tout le code dans la fenetre de code (intégralité du code est copié, je n'ai pas mis le classeur , car il est lié au bouquin ...
 

Pièces jointes

  • multicolumn listbox.xls
    23.5 KB · Affichages: 8

Staple1600

XLDnaute Barbatruc
Bonjour le fil, G-David, Chris24

C'est écrit dans le livre non?
(pages 472-473 dans la version Excel 2007)
1) Il faut renseigner la propriété RowSource
donc: A2:C12 et mettre ColumnHead sur True
2) Mettre ColumnCount sur 3
3) Et pour ColumnWidths: 100;40;30

PS: Je viens de faire le test.

NB: Il manque quelque dans le message#1, non ?
Tout au début...
 
Dernière édition:

G.David

XLDnaute Impliqué
attendez le bouquin pour l'instant il est sous presse, je suis en pleinr restauration ( la colle pour les broché c'est pas l'idéal) donc je me replonge dans le bouquin dès qu'il est accessible
Stapple1600 et Chris24 je dois avouer que les propriétés ne se sont pas rappelées à moi (je vais regarder ça ...le VBA c'est pas comme le vélo
 

G.David

XLDnaute Impliqué
Bingo , le fait est aussi que c'est un truc cdonc je ne me servais pas pour avoir un accées modulable à alimentaion des listboxs...(ça m'apprendra)
 
Dernière édition:

patricktoulon

XLDnaute Barbatruc
Bingo , le fait est aussi que c'est un truc cdonc je ne me servait pas pour avoir un accées modulable à alimentaion des listboxs...(ça m'apprendra)
bonjour

rowsource a ces avantage et contraintes
l'avantage le plus flagrant (pas de code pour remplir la liste)
le désavantage le plus flagrant c'est en effet la modularité (mise ajour,suppression,etc...)impossible avec rowsource


 

G.David

XLDnaute Impliqué
bonjour

rowsource a ces avantage et contraintes
l'avantage le plus flagrant (pas de code pour remplir la liste)
le désavantage le plus flagrant c'est en effet la modularité (mise ajour,suppression,etc...)impossible avec rowsource


Salut, hé si c'est possible de rendre la propriété "rowsource" dynamique
Ti m'avait à l'époque de Vériti parlait d'utiliser les plages nomées, qui elles peuvent etre dynamique avec la fonction indirect c'est bateau mais bon ça marche
PS je ne trouve pas de bouton marquer comme solution
 

Pièces jointes

  • Rowsours_ecerie.xls
    23 KB · Affichages: 5

patricktoulon

XLDnaute Barbatruc
re
bonjour G.David
Salut, hé si c'est possible de rendre la propriété "rowsource" dynamique
tu te rends bien compte l’absurdité de la chose
a quoi sert d'utiliser rowssource en dynamique
et qui dit dynamique dit code
pour faire ça autant utiliser les outils dispo
listbox1.list=feuil1.[A1:C10]
 

G.David

XLDnaute Impliqué
oh mais juste pour le fun, de toutes manières, c'est pas un truc que j'utilise, mais juste pur tester le possible ( et c'est vrai que c'est plus long...et je ne connait opas tous les outils d'excel...sinon j'aurais plus rien à apprendre...ça serait c.. heu laxatif diroions nous
 
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…