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

时间:2013-12-27 19:20:04

标签: excel-vba vba excel

我正在尝试编写代码,当用户选择某个范围内的单元格时,会更改该范围内所有单元格的颜色。运行下面发布的代码时,我收到错误“对象不支持此属性或方法”。我注意到,如果我编辑代码只是在所有单元格中粘贴“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

2 个答案:

答案 0 :(得分:1)

您应该知道您不必遍历单元格:

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

答案 1 :(得分:0)

错误只是Interior

的错字
...
cell.Interior.ColorIndex = 10
'#         ^  
...