Détection d'un click

AdM

XLDnaute Nouveau
-
Bonjour tout le monde.

Comment, dans une macro, scruter en permanence un bloc de cellules en attendant que l'utilisateur ait cliqué sur l'une d'elles, et comment repérer l'adresse de celle-ci.
J'ai essayé avec des Target, des Button etc, mais je ne trouve pas la syntaxe correcte.

Merci de vos réponses.

Bonne journée.

AdM
 

ChTi160

XLDnaute Barbatruc
Re : Détection d'un click

Salut AdM

peut être une piste
en utilisant Intersect via la procèdure événementielle Clic
Option Explicit
Dim Var As Variant
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
  
If Not Intersect(Target, Range("C4:E10")) Is Nothing Then
    MsgBox "Adresse modifiée  :" & Target.Address & Chr(13) & _
                 "Nouvelle Valeur de la Cellule  :" & Target.Value & Chr(13) & _
                   "Ancienne Valeur de la Cellule  :" & Var
End If
End Sub

Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Not Intersect(Target, Range("C4:E10")) Is Nothing Then Var = Target.Value
End Sub
Le Fichier :

Bonne Journée et Bienvenue
 

Gorfael

XLDnaute Barbatruc
Re : Détection d'un click

AdM à dit:
-
Bonjour tout le monde.

Comment, dans une macro, scruter en permanence un bloc de cellules en attendant que l'utilisateur ait cliqué sur l'une d'elles, et comment repérer l'adresse de celle-ci.
J'ai essayé avec des Target, des Button etc, mais je ne trouve pas la syntaxe correcte.

Merci de vos réponses.

Bonne journée.

AdM
Salut
Il faut que tu sois dans le module lié à la feuille
Clic-droit sur onglet>>Visualiser le code
Case de gauche Worksheet
ça crée directement la macro changement de sélection
Code:
[LEFT]Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Not Intersect(Target, Range("C4:E10")) Is Nothing Then 
          msgbox(target.address(0,0))
    end if
End Sub
ChTi160 t'a fourni du code que j'ai un peu modifié, mais sinon, à part refaire la même chose, pas de solution sans explications complémentaires

A+[/LEFT]
 

AdM

XLDnaute Nouveau
Re : Détection d'un click

Bonsoir tout le monde.

Je suis désolé, je suis une vieille bourrique ! J'ai essayé vos macros. Elles fonctionnent parfaitement mais je n'arrive pas à les adapter à mon besoin. C'est de ma faute, j'ai mal expliqué au début ce que je voulais faire !
Je cherche à détecter un clic sur une cellule pour en récupérer l'adresse et traiter ensuite en fonction.

Voici plus de détails :

J'ai 9 cellules dans une feuille.
Séparées entre elles par une ligne et une colonne.
Exemple : A1 - C1 - E1
-------- : A3 - C3 - E3

-------- : A5 - C5 - E5


Les 6 cellules du haut (sur 2 lignes), A1 - C1 - E1 - A3 - C3 et E3 sont remplies en Rouge.

Dans les 3 cellules du bas, A5 est remplie en Vert, C5 est remplie en Bleu et E5 est remplie en Rouge.
Ce sont les cellules de commande.

Je dois scruter ces cellules dans l'attente d'un clic sur l'une des 3 cellules de commande.
Si je clique sur les 6 du haut, il ne doit rien se passer.

Si je clique sur A5 (vert) puis sur une autre des 6 cellules du haut, cette cellule passe en vert.
Je peux aussi cliquer sur chacune des 5 autres. Celles qui auront été cliquées passeront en vert.

Quand j'aurais terminé mon choix, je peux continuer l'opération en revenant en bas sur C5 (bleu) et refaire la même opération sur les 6 cellules du haut, les vertes ou les rouges devenant bleues à chaque clic.

Quand cette seconde opération est terminée (même si elle n'a pas eu lieu après la première), le fait de cliquer sur E5 (rouge) remettra les 6 cellules du haut en rouge (comme à l'origine).

Je dois lancer la macro par un bouton "Start" (scrutation permanente) et la terminer par un "Stop" (fin de la séquence de contrôle).

Pour l'instant, je n'obtiens que des collisions ferroviaires (mais sans blessés) !
Pas facile de gérer un réseau de trains pour les petits enfants !

Merci de votre aide et pardon pour la mauvaise explication du début.
J'espère n'avoir pas été trop confus ce coup-ci et n'avoir pas trop pris de place.

Cordialement

-
 
Dernière édition:

dixit

XLDnaute Impliqué
Re : Détection d'un click

bonsoir à tous,
voici une proposition
ps : le classeur joint est une nouvelle version comportant des explications (remplacement fait le 30/5 à 8:57)
 

Pièces jointes

  • ED76328bevides-indexetequiv.xls
    22 KB · Affichages: 80
  • ED76328bevides-indexetequiv.xls
    22 KB · Affichages: 85
  • ED76328bevides-indexetequiv.xls
    22 KB · Affichages: 83
Dernière édition: