Macro qui s'execute sur un clic

Résolu
shad -  
 shad -
Bonsoir,

j'aimerai créer une macro qui s'execute en cliquant sur une cellule mais je n'y arrive pas ..
j'ai deux listes déroulantes dans deux cellules différentes. je veux en cliquant sur une cellule, la macro efface l'affichage de la deuxième cellule sans changer le contenu de la liste

merci d'avance.

4 réponses

  1. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    bonjour

    en cliquant sur une cellule

    Il faut utiliser la macro événementielle "selectionchange" en gérant les cellules concernées.

    Si tu pouvais nous mettre un exemple sans éléments personnels mais avec la structure des données sur https://www.cjoint.com/ puis nous mettre le lien généré ici ce serait plus facile.
    0
    1. shad
       
      merci pour la réponse, voici le lien vers le fichier

      http://cjoint.com/?BBiwOfbQsWr
      0
  2. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
     
    Salut le fil,

    deux codes à tester et à coller dans les propriétés de la feuille, clic droit sur l'onglet de feuille/Visualiser le code
    le premier se déclenche sur un double clic et le second sur un clic droit au choix

    Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    If Not Intersect(Target, Union([F4], [F6])) Is Nothing Then
    If ActiveCell.Address(0, 0) = "F4" Then [F6].ClearContents
    If ActiveCell.Address(0, 0) = "F6" Then [F4].ClearContents
    End If
    End Sub

    Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
    If Not Intersect(Target, Union([F4], [F6])) Is Nothing Then
    If ActiveCell.Address(0, 0) = "F4" Then [F6].ClearContents
    If ActiveCell.Address(0, 0) = "F6" Then [F4].ClearContents
    End If
    End Sub
    0
    1. shad
       
      merci c'est sympa..

      j'ai un petit souci..c'est que celui qui vient après moi ne sais pas forcement qu'il doit faire un click droit ou un double click

      y a un moyen d'éviter ça ? cad exécuter la macro avec un click de selection simple ?

      merci
      0
  3. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    bonjour Mike, shad,

    Ou bien si j'ai compris correctement la question, comme ceci :

    Private Sub Worksheet_SelectionChange(ByVal sel As Range)
        If Not Intersect(sel, [F4]) Is Nothing Then [F6].ClearContents
    End Sub
    
    0
  4. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
     
    Re,

    comme cela

    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Not Intersect(Target, Union([F4], [F6])) Is Nothing Then
    If ActiveCell.Address(0, 0) = "F4" Then [F6].ClearContents
    If ActiveCell.Address(0, 0) = "F6" Then [F4].ClearContents
    End If
    End Sub
    0
    1. shad
       
      :) merci Mike-31

      ça maaarche !!! c'est cool

      merci bien
      0