VBA-002.双击指定区域单元格,自动产生“√”或“×"

1、需求:

在B2:B10区域中双击鼠标左键,产生“√”符号,再次双击,产生“×”符号,支持连续点击

2、思路分析:

1)鼠标双击单元格,自动产生相应符号,应选择事件,案例中是双击单元格,故应选择工作表的Worksheet_BeforeDoubleClick事件;

2)若只在B2:B10区域产生作用,需对鼠标双击的单元格进行判定是否在B2:B10区域中

3)鼠标双击单元格后,系统默认的功能是进入单元格编辑状态。如需支持连续点击,即需禁止进入单元格编辑状态,需将Cancel参数赋值为True

3、代码

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

'  判断Targe参数是否与[B2:B10]区域存在交集
    If Not Intersect(Range("b2:b10"), Target) Is Nothing Then
    '  取消双击鼠标之后的系统默认功能,即禁止单元格进入编辑状态
        Cancel = True
        If Target = "" Or Target = "×" Then
            Target = "√"
        Else
            Target = "×"
        End If
    Else
        Cancel = False
    End If
End Sub

/<code>


VBA-002.双击指定区域单元格,自动产生“√”或“×


分享到:


相關文章: