Créer entêtes de listbox

Bonjour à tous,

ATTENTION: je souhaite passer par des ColumnHeads et non des Labels car mes entêtes peuvent être variables....

J'ai un petit soucis pour créer des entêtes à mes listbox.... En effet, ma source de données est un tableau (et non des cellules) pour stocker mes données... Par conséquent je ne peux pas utiliser Rowsources je présume, d'où ma question.....

N.B : J’alimente ma lisbox sans soucis avec ça:

Sub fabrique_listbox1()

    UserForm1.ListBox1.ColumnHeads = True
    UserForm1.ListBox1.ColumnCount = nb_colonnes
    UserForm1.ListBox1.List = tableau_géant 'mon tableau est crée ailleurs, c'est un tableau à 2 dimensions : tableau(x,y)

End Sub

Du coup voilà mon soucis: les 1ères valeurs de mon tableau sont situées en dessous des ColumnHeads ... Du coup comment puis faire ? ;(

yoev

Merci à vous pour votre aide

Bonne journée à vous,

Ced

Bonjour

Un essai à tester. Te convient-il ?

Bye !

113classeur1.xlsm (24.72 Ko)

Bonjour gmb,

Merci pour ta réponse

En revanche je ne souhaite pas passer par l'utilisations de Labels (comme dans ton fichier) mais par l'utilisation de ColumnHeads (car les entêtes seront variables).....

comme dans mon exemple plus haut et comme ceci en fait:

rx4e

N.B : et pas de soucis pour la source des mes données de mes listboxs, j'utilise un tableau (et ça marche nikel) et non des données provenant de cellules...

Joins un fichier, ce sera peut-être plus simple...

Bye !

Pas de soucis, le voici:

Nouvel essai

Bye !

Hum pardon gmb mais il n'y a toujours rien qui s'affiche dans les entêtes visiblement.... moi voici ce que j'obtiens en lançant ton programme modifié:

uv6k

Bonjour

il faut faire un .RowSource obligatoire pour avoir les titre

Private Sub UserForm_Initialize()
    With ListBox1
        .ColumnCount = 3
        .ColumnHeads = True
        .RowSource = "A2:C6"
    End With
End Sub

A+

Maurice

Bonjour Maurice,

Le problème c'est que je ne peux pas passer par un RowSource vu que ma source de donnée est un tableau (et non des cellules).... Raison pour laquelle je suis obligé de passer par des list pour alimenter ma listbox.

Bref je vais abandonner je crois, je vais faire des labels à la place...

ced

Bonjour

humm tu cherche pas beaucoup

Pour une ListBox évolutive

Private Sub UserForm_Initialize()
Nlig = Range("A" & Rows.Count).End(xlUp).Row
    With ListBox1
        .ColumnCount = 3
        .ColumnHeads = True
        .RowSource = "A2:C" & Nlig
    End With
End Sub

aller aux revoir

Maurice

Bonjour Archer,

Merci pour ta réponse. Euh en fait si, lis bien ma problématique, comme je l'ai bien précisé en ouvrant ce poste, la source de donnée n'est pas une plage de cellule mais un tableau, ce qui fait (qu'à priori) je ne peux pas utiliser la méthode RowSource pour rajouter des données....

Merci à toi pour ton aide c'est gentil

Ced

Rechercher des sujets similaires à "creer entetes listbox"