excel里,我想设置个按钮,点一下,就让某部分区域或单元格背景色变红色,再次点击就恢复成原来的状态
我想看vba里怎么写的。。单击一次可以通过录制宏来实现,再点击恢复,我就不会了
excel里,我想设置个按钮,点一下,就让某部分区域或单元格背景色变红色,再次点击就恢复成原来的状态
答案:5 悬赏:30 手机版
解决时间 2021-02-04 10:19
- 提问者网友:世勋超人
- 2021-02-04 01:25
最佳答案
- 五星知识达人网友:不想翻身的咸鱼
- 2021-02-04 02:58
假如你要改变颜色的区域是M122:O133,原来底色为白色,那么运行一下VBA代码,就会在白色和红色之间切换
Sub Color_Change()
Range("M122:O133").Select
If Selection.Interior.Color = 255 Then
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.ThemeColor = xlThemeColorDark1
.TintAndShade = 0
.PatternTintAndShade = 0
End With
Else
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 255
.TintAndShade = 0
.PatternTintAndShade = 0
End With
End If
Range("L134").Select
End Sub
Sub Color_Change()
Range("M122:O133").Select
If Selection.Interior.Color = 255 Then
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.ThemeColor = xlThemeColorDark1
.TintAndShade = 0
.PatternTintAndShade = 0
End With
Else
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 255
.TintAndShade = 0
.PatternTintAndShade = 0
End With
End If
Range("L134").Select
End Sub
全部回答
- 1楼网友:有你哪都是故乡
- 2021-02-04 07:33
这样的操作是无法完成的。
双击单元格后即进入单元格编辑,而你复制的是多个单元格,excel无法让你这样粘贴,当然将按钮按掉。
如果确实需要将多个单元格的内容放到一个单元格,可以考虑用公式,将各个单元格的值放到一个单元格。
如果只是复制到另一个文件,单击单元格后直接粘贴。
- 2楼网友:蓝房子
- 2021-02-04 05:55
用VBA设置
- 3楼网友:往事隔山水
- 2021-02-04 04:45
使用vba可实现第一个功能,自行录制宏参考下吧;至于第二个有点困难,得先判断区域颜色后恢复原色
- 4楼网友:患得患失的劫
- 2021-02-04 04:37
Private Sub CommandButton1_Click()
If Range("A1").Interior.Color = vbRed Then
Range("A1").Interior.ColorIndex = xlNone
Else
Range("A1").Interior.ColorIndex = 3
End If
End Sub
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯