excel 一次设置多个单元格的背景色

owfi6suc  于 2023-05-08  发布在  其他
关注(0)|答案(1)|浏览(145)

我正在尝试为选定的单元格设置值和背景。
设置值工作,设置颜色不工作。

Function InRange(Range1 As Range, Range2 As Range) As Boolean
    Dim InterSectRange As Range
    Set InterSectRange = Application.Intersect(Range1, Range2)
    InRange = Not InterSectRange Is Nothing
    Set InterSectRange = Nothing
End Function

Sub test()
    If InRange(ActiveCell, Range("A1:AA40")) Then
        Set selectedRange = Application.Selection        
        selectedRange.Value = "That Works!"
        selectedRange.Interior.ColorIndex = 1
    End If    
End Sub
kninwzqo

kninwzqo1#

InRange()的使用应该是您的问题。这不是Excel-VBA的本机函数;它将是自定义,因此会抛出错误。
您可以将Intersect()用于原生Excel-VBA,例如:

If Not Intersect(ActiveCell, Range("A1:AA40")) Is Nothing Then

另外一点,尝试在模块的顶部使用Option explicit,强制所有变量都是维度的。

相关问题