Bonjour,

Voila j'ai un UF avec une listbox
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Option Explicit
 
'************************
' Constantes             *
'************************
Const Titre_UF As String = ".:: Bookmakers & transactions "
 
'************************
' Variables             *
'************************
Dim deb_book As Range
Dim plage_book As Range
'
 
Private Sub UserForm_Activate()
    Set deb_book = Range("B17")
    Me.Caption = Titre_UF
    Me.OB_book.Value = True
    If Test_Tabvide(deb_book) Then
        'MsgBox " Liste BOOKMAKERS vide "
    Else
        'MsgBox " Liste BOOKMAKERS au moins 1 éléments "
        Set plage_book = Init_Plage(deb_book)
        Init_DataLB Me.LB_listes, plage_book
        'MsgBox plage_book.Rows.count
        Init_ColumnLB Me.LB_listes, True, 2, "20;60"
    End If
End Sub
un module pour mes fonctions & procédures
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
' Tableau vide
Function Test_Tabvide(ByVal cell_dep As Range) As Boolean
    Dim Plage As Range
    Set Plage = cell_dep.CurrentRegion
    MsgBox "Test_Tabvide : " & Plage.Rows.count
    If Plage.Rows.count = 1 Then
        Test_Tabvide = True
    End If
End Function
 
' Init Plage
Function Init_Plage(ByVal cell_dep As Range) As Range
    Set Init_Plage = cell_dep.CurrentRegion
End Function
et un module pour mes controles
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Option Explicit
 
'************************
'     ListeBox          *
'************************
 
Sub Init_DataLB(ByVal Name_LB As MSForms.ListBox, ByRef Plage As Range)
    With Plage
        Set Plage = .Offset(1).Resize(.Rows.count - 1)
            'MsgBox "Init_DataLB : 1 lig en-tete + " & plage.Rows.count
    End With
    Init_RowSourceLB Name_LB, Plage
End Sub
 
Sub Init_RowSourceLB(ByVal Name_LB As MSForms.ListBox, ByVal Plage As Range)
    With Name_LB
        .RowSource = Plage.Address(external:=True)
        '.ListIndex = -1
    End With
End Sub
 
Sub Init_ColumnLB(ByVal Name_LB As MSForms.ListBox, ByVal En_Tete As Boolean, ByVal Nb_Col As Integer, ByVal Taille_Col As String)
    With Name_LB
        .ColumnHeads = En_Tete
        .ColumnCount = Nb_Col
        .ColumnWidths = Taille_Col
    End With
End Sub
Je 'ai pas d'erreur de code mais je n'arrive pas a afficher les en-tete de colonnes ?
Les données s'affiche correctement.

Merci de votre aide