Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 EXCEL code VBA pour réinitialiser les listes déroulantes en cascades

jmayaud

XLDnaute Nouveau
Bonjour ,
J'ai créer des listes déroulantes en cascades sur la feuille "fiche séance". (composantes, sous-composantes, attendus, compétences associées)
Je voudrais un code VBA pour que mes listes suivantes se réinitialisent si on change les données en amont.
Merci beaucoup de votre aide !!
 

Pièces jointes

  • FICHE SEANCE MODELE cycle 2 - français.xlsx
    55.5 KB · Affichages: 7

fanch55

XLDnaute Barbatruc
Bonjour,
Mettez le code ci-dessous dans le module de la feuille "fiche séance" et voyez s'il vous convient .
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim IsChanged As Boolean, I As Integer
Dim Valist As Variant:  Valist = Array("$A$8", "$D$8", "$A$10", "$A$12")
Dim Zone As Range:      Set Zone = Range(Join(Valist, ","))

    If Target.Count = 1 And Not Intersect(Target, Zone) Is Nothing Then
        Application.EnableEvents = False
        For I = 0 To UBound(Valist)
            Select Case True
                Case IsChanged: Range(Valist(I)) = ""
                Case Target.Address = Valist(I): IsChanged = True
            End Select
            Application.EnableEvents = True
        Next
    End If

End Sub
 

Discussions similaires

Réponses
8
Affichages
594
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…