繁体   English   中英

VBA宏可在选定单元格时更改范围内单元格的颜色

[英]VBA macro to change color of cells in range when a cell is selected

我正在尝试编写代码,当用户在一个范围内选择一个单元格时,它将更改该范围内所有单元格的颜色。 运行下面发布的代码时,出现错误“对象不支持此属性或方法”。 我注意到,如果我编辑代码以仅在所有单元格中粘贴“ 1”,那么它就可以正常工作。 我做错了什么?

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.range)

    If Not Intersect(Target, range("G1:I5")) Is Nothing Then
        For Each cell In range("G1:I5")
        cell.interier.ColorIndex = 10
        Next
    End If
End Sub

您应该意识到,不必遍历单元格:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Dim r As Range
    Set r = Range("G1:I5")
    If Intersect(r, Target) Is Nothing Then Exit Sub
    r.Interior.ColorIndex = 10
End Sub

错误只是Interior的错字

...
cell.Interior.ColorIndex = 10
'#         ^  
...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM