First of all you need to name the list-boxes as Listbox1, Listbox2.... Listbox40

then change your code like this:
Dim i as integer
dim j as integer
dim lrow as integer

For j = 1 to 40
lrow = Sheets("Listboxes").Cells(Sheets("Listboxes").Rows.Count, 1).End(xlUp).Row
    Userform1.Controls("Listbox" & j).Clear
    For i = 2 To lrow
    With Userform1.Controls("Listbox" & j)
        .AddItem Sheets("Listboxes").Cells(i, 1)
    End With
    Next i
Next j