• Initiateur de la discussion Initiateur de la discussion mike24
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

mike24

XLDnaute Nouveau
Bonjour, j'aurais aimé savoir comment faire apparaitre la cellule ou est positionné le curseur d'une certaine couleur afin de le repérer rapidement sur un tableau. Lors du déplacement du curseur la case colorée suit celui-ci en fonction de la position ligne/colonne.
merci
 
Re : position du curseur

Bonjour

MFC sur la zone du tableau

=OU((CELLULE("ligne")=LIGNE());CELLULE("colonne")=COLONNE())
Tu choisis ta couleur etc .....

ensuite dans la procédure événementielle du classeur
Code:
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
Calculate
End Sub

Il y a surement plus simple
 
Re : position du curseur

bonsoir mike24, Banzaï64,
je ne sais pas si c'est plus simple que la proposition de Banzaï64.
Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
    ActiveSheet.Shapes("maCellule").Delete
On Error GoTo 0
    With Target
    ActiveSheet.Shapes.AddShape(msoShapeRectangle, .Left, .Top, .Width, .Height).Name = "maCellule"
    End With
    With ActiveSheet.Shapes("maCellule")
        .Fill.Visible = msoFalse
       ' .Fill.Transparency = 0#
        With .Line
        .Visible = True: .Weight = 3#: .ForeColor.SchemeColor = 12 'bleu
        End With
    End With
End Sub
Recopie le code (Ctrl C),
Clic droit sur l'onglet
Visualiser le code
Colle le code (Ctrl V)
Quitte VBA (Alt Q) ou retourne sur Excel (Alt F11)

Tu devrais avoir un rectangle bleu qui entoure ta cellule cliquée.

Pour le suivi du curseur, c'est je crois aussi possible mais beaucoup moins simple (utilisation des API windows).

Cordialement
fred65200
 
Re : position du curseur

Bonsoir,

Exact, il faut passer par les API, et ce ne doit pas être simple compte tenu du factor de zoom etc.

Par contre, si la cellule est effectivement active, l'évènement Woksheet.selection_change est tout à fait approprié.
 
Re : position du curseur

Bonsoir le fil
perso, la solution que je préfère est celle de Banzaï
les autres laisseront toujours des traces (fermeture de fichier intempestive, crash de macro, ....) et pour peu que le code :
"Cells.Interior.ColorIndex = xlNone" ne soit pas le retour idéal à la disposition initiale, bonjour les dégâts...
L'évènement "Private Sub Worksheet_SelectionChange(ByVal Target As Range)" pourrait être la solution, mais colorier la cellule qu'on vient de sélectionner, c'est pas un problème, la remettre à sa couleur initiale demande plus de code, de garde-fous, ....
M'enfin, ce n'est que mon avis...
 
Re : position du curseur

Bonjour à tous

pas sur d'avoir tout compris, mais peut être une autre solution comme ceci :

code à placer dans le module de la feuille concernée.
Code:
Dim dercell As Range
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not dercell Is Nothing Then dercell.Interior.ColorIndex = xlNone
Set dercell = Target
Target.Interior.ColorIndex = 3
End Sub

bonne journée
@+
 
Re : position du curseur

bonsoir à tous,

je suis d'accord avec bhbh, la solution de MFC de Banzaï64 est il me semble la plus efficace.
Je n'aime pas la solution "Interior.ColorIndex = xlNone" qui oblige à aucune mise en forme. Je trouve la solution d'ajouter une forme moins risquée.
Dans le code précédent, la ligne
Code:
      ' .Fill.Transparency = 0#
est en commentaire car elle donne un fond noir sur Excel 2007.
Je crois qu'il faut la "décommentée" pour avoir un fond transparent dans les versions antérieure.

Si la solution de Pierrot93 te convient, j'en suis ravi.

Cordialement
fred65200
 
Re : position du curseur

Re

@Fred
Si le "xlnone" te gêne et si tu as plusieurs formats de couleur, rien n'empêche de stocker cette couleur dans une variable public afin de réinitialiser la cellule quand tu quittes la selection.

bonnne soirée
@+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

  • Question Question
Microsoft 365 Tableau
Réponses
24
Affichages
1 K
Réponses
4
Affichages
272
Retour