Coordonnée cellule avant changement

  • Initiateur de la discussion Initiateur de la discussion Boyboy
  • 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 !

B

Boyboy

Guest
Bonjour @ tous !

j'ai un problème : comment connaitre les coordonnées "Target.Cells.Row" et "Target.Cells.Column" d'une cellule juste après l'avoir quitter?

en fait, je suis sur la cellule en A1, et la couleur de A2 est verte.
ce que je souhaite, c'est que quand je passe sur la cellule B1 alors la couleur de B2 devient verte et la couleur de A2 redevient bleu...

Je ne sais pas si je suis bien clair là...! 🙂

Merci d'avance pour vos réponses !

Boyboy
 
Re : Coordonnée cellule avant changement

Salut,

Pas sur d'avoir tout compris, mais je dirais peut etre quelque chose de ce genre (a mettre dans le module de la feuille concernée) :
Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Target.Column = 1 Then
    If Not Intersect(Target, Rows(1)) Is Nothing Then
        Target.Offset(1, 0).Interior.Color = vbGreen
        Target.Offset(1, -1).Interior.Color = vbBlue
    End If
End If
End Sub

@+

Edition : Salut Pascal, je vois qu'on a pas tout a fais compris la meme chose...
 
Re : Coordonnée cellule avant changement

salu tout la forum,

porcinet82 si tu utilise la macro que tu a faite, cela ne fonctionne pas comme ca:

If Not Target.Column = 1 Then
Else
If Not Intersect(Target, Rows(1)) Is Nothing Then

Les instructions doivent etre lues apres le "ELSE" et non pas le THEN comme "d'habitude". Donc dela donnerais:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Target.Column = 1 Then
Else
If Not Intersect(Target, Rows(1)) Is Nothing Then
Else
Target.Offset(1, 0).Interior.Color = vbGreen
'Target.Offset(1, -1).Interior.Color = vbBlue
End If
End If
End Sub

Avec tout de meme un erreur a "'Target.Offset(1, -1).Interior.Color = vbBlue pour ca qu'il est en instruction.

Voila
 
Re : Coordonnée cellule avant changement

re, salut Nevil,

Désolé de te contredire Nevil, mais mon code focntionne parfaitement, il ne fait peut etre pas ce que veux Boyboy, mais ce que j'ai compris de ca question.
Une petite précision sur mon code. Si j'ai mis If Not Target.Column = 1 Then c'est justement pour éviter l'erreur sur le offset(1,-1)

Par contre celui que tu proposes, je ne comprends pas tres bien ce qu'il fait.

@+
 
Re : Coordonnée cellule avant changement

Bonjour @ tous!

Merci beaucoup pour vos nombreuses réponses dont je me suis inspiré pour produire ce code :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If CellColonne <> "" Then
Range(Cells(4, CellColonne), Cells(5, CellColonne)).Interior.ColorIndex = 41
End If
CellColonne = Target.Cells.Column
Range(Cells(4, CellColonne), Cells(5, CellColonne)).Interior.ColorIndex = 12
End If
End Sub

avec CellColonne en variable gobale publique au document.

Encore merci @ tous!

Boyboy
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
8
Affichages
896
Réponses
7
Affichages
829
M
Réponses
5
Affichages
1 K
marcenana
M
Retour