bonsoir
j'ai essayé de commenter la procédure , mais je ne suis pas sur d'etre tres clair dans mes indications
comme le faisait justement remarquer Coco , tu pourras aussi avoir d'autres infos interessantes en utilisant la touche F1
je joins aussi une liste de description des differentes variables
Private Sub UserForm_Initialize() 'initialisation de l'Userform lors de son chargement
'Dim val As String ' variable sans utilité ... je devais encore avoir la tete ailleurs...
Dim W As Integer 'variable pour le numero de ligne du classeur dans la boucle
Dim X As Byte ' variable pour incrementer le tableau dynamique
Dim Z As Byte ' variable pour le nombre de lignes total à recuperer
Dim Myarray() 'tableau dynamique pour recuperer les données
'Le nombre de colonnes dans la listbox est défini dans les propriétés
' ( ColumnCount ) = 2 dans l'exemple
Label1.Caption = "Liste des C.A. : " ' texte dans Label1
Label2.Caption = Sheets(1).Cells(1, 1) 'texte de la cellule A1dans Label2 ANNEE
Label3.Caption = Sheets(1).Cells(1, 2) 'texte de la cellule B1 dans Label3 CHIFFRE D'AFFAIRE
Z = Sheets(1).Range("A65536").End(xlUp).Row - 1 'definit le nombre de lignes dans le tableau
' -1 pour enlever la 1ere ligne qui ne correspond pas à un chiffre d'affaire
ReDim Myarray(2, Z) ' redimensionnement (REDIM) du tableau dynamique
'2=nombre colonnes et Z le nombre de lignes
'particularité des tableaux dynamiques : Myarray(Colonne ,Ligne), avec "l'index" de la premiere ligne
' et de la premiere colonne =0
' par exemple Myarray(0,X) pour le remplissage de la premiere colonne
For W = 2 To Z + 1 ' boucle de la ligne 2 , à la derniere ligne non vide , pour remplir le tableau dynamique
Myarray(0, X) = Sheets(1).Cells(W, 1)
Myarray(1, X) = Sheets(1).Cells(W, 2)
X = X + 1
Next
'*************************************************************************
'en me relisant , une autre version sans utiliser la variable X
'For W = 2 To Z + 1
' Myarray(0, W - 2) = Sheets(1).Cells(W, 1)
' Myarray(1, W - 2) = Sheets(1).Cells(W, 2)
'Next
'**************************************************************************
ListBox1.Column() = Myarray 'remplissage de la Listbox à partir du tableau dynamique
End Sub
bonne soirée
michel