在Excel中当光标点到任一单元格,该单元格所以行可以变成指定颜色??谢谢高手指教哈
问题是:在指定的行内(如第11行以后的所有行),点击任一单元格,该单元格所在行的底色都变成指定的颜色,离开该行的单元格后,该行颜色又恢复原装(即以前是什么底色,还是什么底...
问题是:在指定的行内(如第11行以后的所有行),点击任一单元格,该单元格所在行的底色都变成指定的颜色,离开该行的单元格后,该行颜色又恢复原装(即以前是什么底色,还是什么底色)。该想法的主要目的是,在表格很长时,可以比较清楚地知道选定的是哪一行。请恢复到:wen-zhi510@qq.com谢谢!中
展开
3个回答
展开全部
程序中 A:D 是需要修改颜色的列区域; [G1] 是参数,希望能给予帮助
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim My_a
My_a = Target.Row
Range("A:D").Interior.ColorIndex = xlNone '选定区域全部取消底色
With Range("A" & My_a & ":D" & My_a).Interior
.ColorIndex = [G1] '修改 [G1] 单元格的数值即可,也可将 [G1] 直接修改为数值
.Pattern = xlSolid
End With
End Sub
'默认的参数值如下
'2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56
补充: [G1] 为参数的下拉菜单元格 ,可即时改变参数
1、先将所有参数值复制到不影响操作的列(本工作表)
2、建立下拉菜单:光标放在建立菜单的单元格。如:G1
3、执行:数据 → 有效性 → 允许处选择(序列) → 输入参数值(“,”隔离)或选取参数所在列的相应区域
4、改变菜单的值,即可改变不同的颜色。
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim My_a
My_a = Target.Row
Range("A:D").Interior.ColorIndex = xlNone '选定区域全部取消底色
With Range("A" & My_a & ":D" & My_a).Interior
.ColorIndex = [G1] '修改 [G1] 单元格的数值即可,也可将 [G1] 直接修改为数值
.Pattern = xlSolid
End With
End Sub
'默认的参数值如下
'2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56
补充: [G1] 为参数的下拉菜单元格 ,可即时改变参数
1、先将所有参数值复制到不影响操作的列(本工作表)
2、建立下拉菜单:光标放在建立菜单的单元格。如:G1
3、执行:数据 → 有效性 → 允许处选择(序列) → 输入参数值(“,”隔离)或选取参数所在列的相应区域
4、改变菜单的值,即可改变不同的颜色。
追问
朋友这个做好后,第一他是黑色的,我想用粉红色的可以改吗,在那改?谢谢请指导哈
第二单元格原有颜色在选种后,原有点颜色就没有了,我想当光标点在那时改变成指的颜色,移开后以前的颜色不改变,谢谢指导哈~~
第三我想光标选在第一个单元格不变,其他的都改变
朋友这个不能复制了呢~~~我想几个单元格一起复制,就用不起了~~~~
展开全部
光标定在哪个单元格,窗口的左上角会显示单元格名,行号会窗口的左边也能看到啊,而且选中的单元格也会有个边框似的状态,我不懂你的意思,为什么要设置颜色呢。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim mRng As Range, mR%, mC%, mPwd$
Set mRng = Range("D5:S50") '此处指定范围
mPwd = "1234" '此处指定工作表保护密码
If Selection.Cells.Count > 1 Or Intersect(mRng, Target) Is Nothing Then Exit Sub
ActiveSheet.Unprotect mPwd
mRng.Interior.ColorIndex = xlNone
Intersect(mRng, Rows(Target.Row)).Interior.Color = vbYellow
Intersect(mRng, Range("a1", Target), Columns(Target.Column)).Interior.Color = vbYellow
ActiveSheet.Protect mPwd
End Sub
Dim mRng As Range, mR%, mC%, mPwd$
Set mRng = Range("D5:S50") '此处指定范围
mPwd = "1234" '此处指定工作表保护密码
If Selection.Cells.Count > 1 Or Intersect(mRng, Target) Is Nothing Then Exit Sub
ActiveSheet.Unprotect mPwd
mRng.Interior.ColorIndex = xlNone
Intersect(mRng, Rows(Target.Row)).Interior.Color = vbYellow
Intersect(mRng, Range("a1", Target), Columns(Target.Column)).Interior.Color = vbYellow
ActiveSheet.Protect mPwd
End Sub
追问
这个基本上实现我说的,但是还有个问题是:1我说的是当光标点任意单元格在该行指定区域变颜色,比如点G28,在A28到D28这个行里的颜色是指定的,2,你这个不紧是行变色,列也变色了,3,你这个是黄色的我想改在其他颜色,在那改~~~我是菜鸟请高手说细点,谢谢~
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询