entete dans une listbox

G

Gérard

Guest
Je tente despérément de faire apparaitre des titre dans des colonnes d'une listbox j'ai activé en true la commande ColumnHeads mais je ne sais comment renseigner et afficher les titres dans mon code. Quelqu'un peut il venir à mon secours??? merci d'avance (en pièce jointe un fichier test)
 

Pièces jointes

  • Test.xls
    31 KB · Affichages: 316
  • Test.xls
    31 KB · Affichages: 334
  • Test.xls
    31 KB · Affichages: 347
G

Gérard POEZEVARA

Guest
VICTOIRE!!
Bonjour à tous voici une solution:

données sur les colonnes C:D, titres sur la 1ère ligne (classique)

Le code:

Private Sub UserForm_Initialize()
Dim NoLigne As Integer
NbLigne = WorksheetFunction.CountA(Columns("C:C"))
ListBox.ColumnCount = 2
ListBox.ColumnWidths = "50 pt;45 pt"
ListBox.ColumnHeads = True
ListBox.RowSource = Sheets("Feuil1").Range(Cells(2, 3), Cells(NbLigne, 4)).Address
End Sub

fichier joint
Bonne journée à tous
Gérard
 

Pièces jointes

  • ListBoxAvecTitreColonnes.xls
    33.5 KB · Affichages: 1 570
@

@+Thierry

Guest
Salut Gérard,

J'ai regardé ton truc, c'est vrai que ce n'est pas évident... On dirait que la propriété ColumnHeads est ignorée quand une listbox est remplie par un tableau...

J'ai essayé un autre moyen avec un tableau bcp plus simple en une seule dimension mais rien n'y fait... sans résultat non plus...

Private Sub UserForm_Initialize()
Set R = Sheets(1).Range("C1", [C65535].End(xlUp))
ReDim TabListBox(0 To R.Count - 1)
For Each Cell In R
TabListBox(i) = Cell.Value
i = i + 1
Next
FormuleTableau.List() = TabListBox
FormuleTableau.ColumnHeads = True
End Sub

Donc j'en conclus que la propriété ColumnHead ne fonctionne pas en cas de définition d'un Tableau par une boucle... Mais qu'il lui faut des donnée en "dûr"...

Partant de cette supposition... Alors je suis passé par RowSource.... Là aucun Soucis !!!!
Voir Fichier ci-joint... Je pense que tu seras content Gérard...

Bon après midi
@+Thierry
 

Pièces jointes

  • ListBoxRowSource.zip
    9.6 KB · Affichages: 1 443
@

@+Thierry

Guest
Re Gérard...

Tiens! pendant que j'analysais ton problème tu as trouvé ta solution tout seul !! Alors que je cherchais et cherchais pendant toute ma pose déjeuner !!

C'est sympa en tous cas d'en faire partager les amis ...

Et tu vois on est arrivé à la même conclusion... ROWSOURCE !!!

De plus c'est marrant, on voit bien dans ces deux fichiers comment chacun a son style dans l'écriture du VBA... on arrive exactement à la même chose en employant la même propriété sur la même array... mais on a pas du tout la même approche d'initialisation de variables...

Et tu as fait plus simple que moi, donc c'est mieux ! (moi la VarDerLigne, c'est une deformation, car dans 90% des cas je fais l'inverse... Je reporte des textbox/listbox vers des cellules.. et il me faut la dernière ligne !!!

Sur ce, je te souhaite plein de belle listbox avec des bells têtes de colonnes partout !!

Bon aprèm
@+Thierry
 
G

Gérard POEZEVARA

Guest
Merci Thierry pour avoir planché sur mon problème,

Je faisais apparaitre mais titre par une seconde listbox mais c'était nul,
maintenant c'est plusse mieux.

Marrant en effet qu'on soit arrivé au même résultat.

Bonne fin de journée Gérard
 

Discussions similaires

Statistiques des forums

Discussions
312 229
Messages
2 086 426
Membres
103 206
dernier inscrit
diambote