Bonjour,

Je reviens vers vous car il m'arrive quelque chose d'un peu tordu.
Mon code est celui-ci :

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
29
30
31
32
33
34
Private Sub UserForm_Initialize()
Dim i As Integer, n As Integer
n = 0
Select Case RecapChoix
Case "Position"
    Me.CheckBox1.Caption = "Toutes les positions d'activité"
    'Remplir la 1ère ligne avec les différentes positions d'activité
    With Sheets(RecapJour).Range("RECAP")
    For i = 2 To .Columns.Count
        If .Cells(1, i).text <> "" Then
            Me.ListBox1.AddItem .Cells(1, i).text
            n = n + 1
        End If
    Next
End With
Case "Personnel"
    Me.CheckBox1.Caption = "Tous les personnels"
    'Récupère la variable NbPers
    NbPers = Feuil2.Range("TGR").End(xlDown).Row
    'Remplir la 1ère colonne avec les différents trigrammes
    With Sheets(RecapJour).Range("RECAP")
    For i = 2 To NbPers
        If .Cells(i, 1).text <> "" Then
            Me.ListBox1.AddItem .Cells(i, 1).text
            n = n + 1
        End If
    Next
    End With
End Select
'Mon problème se trouve ici :
MsgBox n 
UserForm1.ListBox1.Height = UserForm1.ListBox1.Height * n
UserForm1.Height = UserForm1.Height + UserForm1.ListBox1.Height
End Sub
Mon problème est celui-ci : la hauteur de la listbox1 reste tout le temps à 15, sauf lorsque je rajoute "MsgBox n" juste avant UserForm1.ListBox1.Height.
Je ne comprends pas pourquoi et je n'ai aucune envie de garder le msgbox dans ma macro.

Pouvez-vous m'éclairez svp ?