Bonjour à tous,
J'ai un soucis avec mon programme vba.
En fait, je veux faire une saisie semi-automatique avec une de mes combo box (celle qui se nomme "Defaut")mais, lorsque je valide ma saisie, la liste déroulante reste apparente et ne se ferme pas avec mon Userform...
Quelqu'un pourrait il me dire comment faire pour que cette liste disparaisse svp?
Voici mon programme:
Merci d'avance
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50 Private Sub Defaut_Change() On Error Resume Next Dim Trouve As Boolean Dim i As Integer Dim j As Integer For i = Defaut.ListCount - 1 To 0 Step -1 Defaut.RemoveItem (i) Next i Trouve = False j = -1 For i = 1 To 34 If LCase(Left$(Worksheets("Tables_liste").Range("M" & i).Text, Len(Defaut.Text))) = LCase(Defaut.Text) Then Trouve = True j = j + 1 Defaut.AddItem Defaut.List(j, 0) = Worksheets("Tables_liste").Range("M" & i).Text End If Next i 'Mettre à jour la liste déroulante ouverte If Trouve = True Then Defaut.Enabled = False Defaut.Enabled = True Defaut.SetFocus Defaut.DropDown Else Defaut.Enabled = False Defaut.Enabled = True Defaut.SetFocus End If End Sub Private Sub UserForm1_Initialize() Dim i As Integer For i = 1 To 34 Defaut.AddItem Defaut.List(i - 1, 0) = Worksheets("Tables_liste").Range("M" & i).Text Next i Defaut.SetFocus End Sub
Rob's
Partager