告诉楼主一个不幸的消息,点击任意单元格,更改背景色可以做,但程序会进入死循环,因为每次更改某个单元格的颜色时,相当于又触发了一次点击单元格的事件。
如果是输入某个值,或更改某个值,相同的值的单元格变色,这个可以做。
Private Sub Worksheet_Change(ByVal Target As Range)
Dim strX As String
Dim X, Y, I, J, C As Long
On Error GoTo Err
Randomize
C = Int(Rnd() * 56) + 1
X = ActiveCell.SpecialCells(xlLastCell).Row
Y = ActiveCell.SpecialCells(xlLastCell).Column
strX = Target.Value
For I = 1 To X
For J = 1 To Y
If Cells(I, J) = strX Then Cells(I, J).Interior.ColorIndex = C
Next J
Next I
Exit Sub
Err:
End Sub
温馨提示:答案为网友推荐,仅供参考