您的位置:首页 > 其它

Excel中实现鼠标指向哪个单元格那个单元格就变色

2008-02-20 16:57 369 查看
在工作薄中的任意工作表中添加两个窗体按钮控件,将指定其设置宏 分别指定为为ChangeColor 和 StopChange。其供示范之用

效果图:



模块中代码:

Option Explicit

Declare Function GetCursorPos _

Lib "user32" ( _

lpPoint As POINTAPI) _

As Long

Type POINTAPI

X As Long

Y As Long

End Type

Dim ChangeOn As Boolean

Dim OldRange As Range

Dim OldColorIndex As Integer

Dim blnStop As Boolean

Sub StopChange()

On Error Resume Next

If Not blnStop Then

blnStop = True

End If

End Sub

Sub ChangeColor()

Dim LngCurPos As POINTAPI

Dim NewRange As Range

On Error Resume Next

blnStop = False

If ChangeOn Then

Exit Sub

Else

ChangeOn = True

End If

Do

If blnStop = True Then Exit Do

GetCursorPos LngCurPos

On Error Resume Next

Set NewRange = ActiveWindow.RangeFromPoint(LngCurPos.X, LngCurPos.Y)

If Err <> 0 Then

OldRange.Interior.ColorIndex = OldColorIndex

Else

If NewRange.Address <> OldRange.Address Then

If OldRange Is Nothing Then

Else

OldRange.Interior.ColorIndex = OldColorIndex

End If

OldColorIndex = NewRange.Interior.ColorIndex

NewRange.Interior.ColorIndex = 3

End If

Set OldRange = NewRange

End If

On Error GoTo 0

DoEvents

Loop

ChangeOn = False

End Sub
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: