OVH Cloud OVH Cloud

Cellule active

3 réponses
Avatar
BEAUCHAND
Bonjour à tous,

Je travail avec Excel 2000 et j'utilise le code suivant pour colorer en
jaune la cellule active:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Cells.Interior.ColorIndex = xlNone
Target.Interior.ColorIndex = 6
End Sub

Le problème c'est que si une cellule est déjà colorée de la même couleur ou
d'une autre couleur, la couleur originale disparait lorsque cette cellule
n'est plus active.
Y -a-t-il un moyen de remettre la couleur originale lorsque la cellule n'est
plus sélectionnée?

Merci à l'avance!

3 réponses

Avatar
Rai
Bonjour à tous,

Je travail avec Excel 2000 et j'utilise le code suivant pour colorer en
jaune la cellule active:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Cells.Interior.ColorIndex = xlNone
Target.Interior.ColorIndex = 6
End Sub

Le problème c'est que si une cellule est déjà colorée de la même couleur ou
d'une autre couleur, la couleur originale disparait lorsque cette cellule
n'est plus active.
Y -a-t-il un moyen de remettre la couleur originale lorsque la cellule n'est
plus sélectionnée?

Merci à l'avance!

Bonjour,


Oui, il faut mémoriser ta couleur de cellule précédente.

Public Couleur As Integer
Public Adr As String

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Adr <> "" Then
Range(Adr).Interior.ColorIndex = Couleur
End If
Adr = Target.Address
Couleur = Target.Interior.ColorIndex
Target.Interior.ColorIndex = 6
End Sub

Cela convient ?

Cordialement

Rai

Avatar
BEAUCHAND
Merci Rai, ça fonctionne à merveille.

"Rai" wrote:

Bonjour à tous,

Je travail avec Excel 2000 et j'utilise le code suivant pour colorer en
jaune la cellule active:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Cells.Interior.ColorIndex = xlNone
Target.Interior.ColorIndex = 6
End Sub

Le problème c'est que si une cellule est déjà colorée de la même couleur ou
d'une autre couleur, la couleur originale disparait lorsque cette cellule
n'est plus active.
Y -a-t-il un moyen de remettre la couleur originale lorsque la cellule n'est
plus sélectionnée?

Merci à l'avance!

Bonjour,


Oui, il faut mémoriser ta couleur de cellule précédente.

Public Couleur As Integer
Public Adr As String

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Adr <> "" Then
Range(Adr).Interior.ColorIndex = Couleur
End If
Adr = Target.Address
Couleur = Target.Interior.ColorIndex
Target.Interior.ColorIndex = 6
End Sub

Cela convient ?

Cordialement

Rai




Avatar
BEAUCHAND
Bonjour Rai,
Le code que tu m'as donné fonctionne très bien lorsque la feuille n'est pas
protégée.
Si je protège la feuille tout en laissant des cellules non-protégées, je
reçois un message d'erreur lorsque je clique sur une cellule non-protégée.
"Run-time error 1004"
"Unable to set the color property of the interior class"

Merci à l'avance!

"Rai" wrote:

Bonjour à tous,

Je travail avec Excel 2000 et j'utilise le code suivant pour colorer en
jaune la cellule active:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Cells.Interior.ColorIndex = xlNone
Target.Interior.ColorIndex = 6
End Sub

Le problème c'est que si une cellule est déjà colorée de la même couleur ou
d'une autre couleur, la couleur originale disparait lorsque cette cellule
n'est plus active.
Y -a-t-il un moyen de remettre la couleur originale lorsque la cellule n'est
plus sélectionnée?

Merci à l'avance!

Bonjour,


Oui, il faut mémoriser ta couleur de cellule précédente.

Public Couleur As Integer
Public Adr As String

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Adr <> "" Then
Range(Adr).Interior.ColorIndex = Couleur
End If
Adr = Target.Address
Couleur = Target.Interior.ColorIndex
Target.Interior.ColorIndex = 6
End Sub

Cela convient ?

Cordialement

Rai