Voici la solution qui m'a était donnée.
Private Sub UserForm_Initialize()
Dim onglet As Worksheet
Dim derniere_ligne As Long
Dim Tableau_plage_listbox1 As Variant
Dim arr_data As Range Dim area As Range Dim i&
Set onglet = Worksheets(3)
derniere_ligne = onglet.Cells(Rows.Count, 1).End(xlUp).Row If derniere_ligne > 1 Then
Set arr_data = onglet.Range(onglet.Cells(2, 1), onglet.Cells(derniere_ligne, 2)).SpecialCells(xlVisible).Cells
With ListBox1 .ColumnCount = 2 .ColumnWidths = "20;250"
For Each area In arr_data.Areas
For i = 1 To area.Rows.Count
.AddItem area.Cells(i, 1): .List(.ListCount - 1, 1) = area.Cells(i, 2)...