EXCEL用vba如何在表中,当点击任意一个单元格,这个表中与点击单元格内容相同的所有单元格的背景色改变。

 我来答
Excel开发
2011-04-26 · TA获得超过2912个赞
知道大有可为答主
回答量:1989
采纳率:53%
帮助的人:995万
展开全部
告诉楼主一个不幸的消息,点击任意单元格,更改背景色可以做,但程序会进入死循环,因为每次更改某个单元格的颜色时,相当于又触发了一次点击单元格的事件。
如果是输入某个值,或更改某个值,相同的值的单元格变色,这个可以做。
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
百度网友eb22e2f
2011-04-26 · TA获得超过1435个赞
知道小有建树答主
回答量:1099
采纳率:100%
帮助的人:975万
展开全部
简单代码如下:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Cells.Interior.Color = xlNone
Set Arr = Target
If Target.Count = 1 Then
Target.Interior.Color = vbYellow
If Target.Value <> "" Then
For Each Rng In Sheet1.UsedRange
If Rng.Value = Target.Value Then Set Arr = Union(Arr, Rng)
Next
Arr.Interior.Color = vbYellow
End If
End If
End Sub

详细操作可以关注我的百度空间!
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
cnh011
2011-04-26 · TA获得超过348个赞
知道小有建树答主
回答量:566
采纳率:27%
帮助的人:165万
展开全部
用vba配合条件格式再加一个辅助单元格。
当点击一个单元格时会产生SelectionChange事件,写代码使辅助单元格的数值与被选单元格数值相同,然后在需变色区域设置条件格式,当与辅助单元格数值相同那么就可以变色了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式