Bonjour,
Je suis toujours sur mon formulaire sur feuille Excel. Je m'échine à essayer d'y insérer ou non des listes déroulantes différentes selon la valeur d'une autre liste déroulante.Cela doit s'effectuer à 6 reprises dans la feuille. J'ai opté (à tort ???) pour la boucle For .. Each après avoir nommé les arguments de la 1ère liste (SitFam). Le code fonctionne pour le 1er nom trouvé puis ... plus rien, car à priori la variable Sit (=range("SitFam")) conserve la première valeur choisie. De plus, il semble que mon code ne teste pas toutes les cellules nommées "SitFam".
Ou est l'erreur ? En vous remerciant par avvance.


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
Option Explicit
 
 
Private Sub Worksheet_Change(ByVal Target As Range)
 
Dim SitFam As String
Dim ligne As Integer
Dim Sit As Variant
 
 
Application.EnableEvents = False
 
ligne = Range("SitFam").Row
'Sit = Range("SitFam").Value
 
MsgBox Sit
 
For Each Sit In Sheets("Formulaire").Range("SitFam")
 
Set Sit = Range("SitFam")
MsgBox Sit 'pour vérifier la valeur de Sit
 
If Sit Is Nothing Then Exit For
 
    If Sit = "Marié(e)*" Then
       Call Module2.InsérerListeMariage
    Else
        If Sit = "Pacs*" Then
           Call Module2.InsérerListePACS
        Else
          Call Module2.SupprimerListeDéroulante
        End If
    End If
 
Sit = ""
 
Next
 
Application.EnableEvents = True
 
End Sub