在Excel中单击鼠标更改单元格的颜色

时间:2014-01-04 00:43:23

标签: excel vba

我正在尝试创建一个工作表,我们的员工可以单击一个单元格来突出显示它正在处理任务,然后在完成任务后再次单击它,如果需要则第三次单击它清除亮点。到目前为止,我已经提出了下面的内容,除了我必须再次单击另一个单元格并再次返回到同一个单元格或者它将尝试编辑单元格之外。我只想要一次单击颜色更改,另一次单击相同的单元格颜色更改2,另一次单击相同的单元格颜色更改3.有没有办法做到这一点?

Private Sub Worksheet_SelectionChange(ByVal Target As Range)    
  'If the target cell is clear
     If Target.Interior.ColorIndex = xlNone Then

        'Then change the background to the specified color
        Target.Interior.ColorIndex = 6

        'But if the target cell is already the specified color
        ElseIf Target.Interior.ColorIndex = 6 Then

        'Then change the background to the specified color
        Target.Interior.ColorIndex = 3

        'But if the target cell is already the specified color
        ElseIf Target.Interior.ColorIndex = 3 Then

        'Then clear the background color
        Target.Interior.ColorIndex = xlNone

    End If    
End Sub

1 个答案:

答案 0 :(得分:4)

使用此代码在同一张表中添加BeforeDoubleClick事件:

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

    Cancel = True
    Worksheet_SelectionChange Target

End Sub