Restriction sur la liste en cascade

Résolu
Nathalie Dupuis Messages postés 5 Statut Membre -  
eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

J'utilise présentement un fichier excel avec une liste en cascade.
https://www.cjoint.com/?3ArpCMxh6YA
Sur cette liste, j'aimerais que lorsqu'on choisis un nouveau département (cellule A2) la liste de codification (cellule B2) sois en blanc automatiquement afin d'éviter le risque d'erreur.

Est-ce que vous pourriez m'aider à trouver la solution.

Merci beaucoup et bonne journée

4 réponses

  1. Nathalie Dupuis Messages postés 5 Statut Membre
     
    Bonjour,

    Est-ce que vous pourriez m'indiquer en détail ce que je dois faire (Je vais devoir reproduire la même fontion sur plusieur fichier).
    J'ai essayé de repreduire la même chose dans un fichier et je suis incapable même en copiant l'information. Voici mon fichier,https://www.cjoint.com/?3AruHhedUcZ Je voudrais mettre cette fonction sur la cellule C35.

    Un gros merci.
    0
  2. g Messages postés 1285 Statut Membre 578
     
    Bonsoir,

    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Not Application.Intersect(Target, [C34]) Is Nothing Then 'C34 modifiable
    [C35].ClearContents 'C35 modifiable
    End If
    End Sub

    D'une part il manque End if dans le code et d'autre part ce code ne peut pas être attribué à une cellule fusionnée.

    Bonne soirée.
    0
    1. g Messages postés 1285 Statut Membre 578
       
      Je reviens sur :
      D'une part il manque End if dans le code et d'autre part ce code ne peut pas être attribué à une cellule fusionnée.

      C'est vrai, mais pour y remédier il suffit de désigner les cellules fusionnées:

      Private Sub Worksheet_SelectionChange(ByVal Target As Range)
      If Not Application.Intersect(Target, [C34]) Is Nothing Then 'C34 modifiable
      [C35:E35].ClearContents 'C35 modifiable
      End If
      End Sub

      soit remplacer [C35] par [C35:E35]

      Bonne journée.
      0
  3. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    Bonjour à tous,

    g, je crains que tu n'aies pas testé ta proposition, c'est plutôt l'évènement Change qu'il faut utiliser.

    En code je mettrais :
    Private Sub Worksheet_Change(ByVal Target As Range) 
        If Target = [C34] Then [C35] = "" 
    End Sub 

    https://www.cjoint.com/c/CAsjxdLZSBz

    Et les fusions de cellules sont à fuir. Ici elles sont totalement inutiles.

    eric

    Jamais tu ne répondras à un mp non sollicité...
    Bon, ça c'est fait.
    0