Coordonnée cellule avant changement

Boyboy

XLDnaute Nouveau
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
 

porcinet82

XLDnaute Barbatruc
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...
 

Nevil

XLDnaute Occasionnel
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
 

porcinet82

XLDnaute Barbatruc
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.

@+
 

Boyboy

XLDnaute Nouveau
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
 

Discussions similaires

Statistiques des forums

Discussions
312 245
Messages
2 086 571
Membres
103 247
dernier inscrit
bottxok