Code feuille pour colorer en vert (B) ou décoloré et effacer par double clic (C ou D)

anthoYS

XLDnaute Barbatruc
Bonjour,

En fait, si double clic en C, coloré B en fond vert (Interior.color=4) et si double clic en D, alors effacer contenu de la cellule B et décolorer le fond vert en aucun fond.



Merci par avance.

à+
 

brunosc

XLDnaute Occasionnel
Re : Code feuille pour colorer en vert (B) ou décoloré et effacer par double clic (C

bonsoir, pour la couleur en double clic :
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Selection.Interior.ColorIndex = 4 Then
Selection.Interior.ColorIndex = xlNone
Else
Selection.Interior.ColorIndex = 4
End If
End Sub
 

anthoYS

XLDnaute Barbatruc
Re : Code feuille pour colorer en vert (B) ou décoloré et effacer par double clic (C

Oui bonsoir et merci. Je tenterai ça plus tard.

Mais cela devrait me suffire pour l'approfondir si ça n'est pas tout à fait sa.
Sinon je reviendrai ici.

à+
 

anthoYS

XLDnaute Barbatruc
Re : Code feuille pour colorer en vert (B) ou décoloré et effacer par double clic (C

Re,


En fait, ton fichier fait que par double clic on colore la cellule en vert.

Mais ce que je souhaite, n'est pas tout à fait ça. Mais merci pour ton code.

En effet, je souhaite colorer de vert B, si C est double cliqué. Et si c'est D, alors effacer la coloration en B.


à+
 

anthoYS

XLDnaute Barbatruc
Re : Code feuille pour colorer en vert (B) ou décoloré et effacer par double clic (C

ça ressemblerai plus à ça pour la coloration :


Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    If Not Application.Intersect(Target, Range("C:C")) Is Nothing And IsEmpty(Target) Then
    Cells(Target.Row, 2).Interior.ColorIndex = 4
    End If
End Sub
Pour Décolorer B et effacer le contenu par double clic sur D, je ne sais pas...

à+
 

Efgé

XLDnaute Barbatruc
Re : Code feuille pour colorer en vert (B) ou décoloré et effacer par double clic (C

Bonjour anthoYS, brunosc,
Sans fichier et juste les indications, je propose ceci:

VB:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Cancel = True
If Target.Column = 3 And IsEmpty(Target) Then Target.Offset(0, -1).Interior.ColorIndex = 4
If Target.Column = 4 And IsEmpty(Target) Then
    With Target.Offset(0, -2)
        .Interior.ColorIndex = xlNone
        .ClearContents
    End With
End If
End Sub
Cordialement
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 348
Messages
2 087 508
Membres
103 568
dernier inscrit
NoS