Bonjour

j'ai un UserForm avec le code suivant
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
35
36
 
Private Sub CommandButton2_Click()
UserForm1.Hide
End
End Sub
 
Private Sub ListBox1_Change()
 
End Sub
 
Private Sub UserForm_Initialize()
 
Dim i As Integer
Dim k As Integer
Dim titre As String
Dim varspec As Integer
 
ListBox1.ListStyle = fmListStyleOption
ListBox1.MultiSelect = fmMultiSelectMulti
 
    'ListBox des Entités
    ListBox1.AddItem "TOUS"
    For i = 1 To Sheets.Count
    If Sheets(i).Name <> "Instructions" And Sheets(i).Name <> "exception 1" And Sheets(i).Name <> "Exception2" And Sheets(i).Name <> "TOUS" Then
    ListBox1.AddItem UCase(Sheets(i).Name)
    End If
    Next i
    If ListBox1.ListStyle = fmListStylePlain Then
      ListBox1.Text = "TOUS"
    Else
      ListBox1.Selected(0) = True
    End If
 
CheckBox2.Value = 1
 
End Sub
(J'ai aussi d'autres controles que je n'ai pas mis pour ne pas allonger le code)

Dans la listebox1, je voudrais que
-en sélectionnant TOUS, ca décoche tous les autres optionbuttons
-en sélectionnant une autre entité, cela décoche l'entité TOUS
J'ai beau faire je n'y arrive pas.
Déjà List_click a l'air d'etre désactivé des qu'on passe en multiselect
Ensuite, comme la listbox est initialisée, avant même que le userform ne s'affiche, le programme détecte déjà le list_change. Ca encore, je me dis que je pourrais m'en tirer
Mais surtout, mes tentatives de code dans le listchange on toutes abouti à une fonction récursive à l'infini. Mes différentes tentatives d'utilisation de Application.EnableEvents n'ayant pas abouti

bref....
Je suis pas rendu
Help?