Excel 动态vba范围选择器的正确语法
我的动态范围选择器有一些问题 我已经找到了一些其他的实现方法,但为了清晰起见,我无法找到这种范围选择方法,我真的很好奇为什么它不起作用: 作为测试,我想更改范围Excel 动态vba范围选择器的正确语法,excel,vba,Excel,Vba,我的动态范围选择器有一些问题 我已经找到了一些其他的实现方法,但为了清晰起见,我无法找到这种范围选择方法,我真的很好奇为什么它不起作用: 作为测试,我想更改范围范围(B20:D25)的颜色 使用以下代码 Private Sub colortest() Dim ws as Worksheet: Set ws = Sheets("Sheet1") For i = 20 to 25 ws.Range("B" & i & &quo
范围(B20:D25)
的颜色
使用以下代码
Private Sub colortest()
Dim ws as Worksheet: Set ws = Sheets("Sheet1")
For i = 20 to 25
ws.Range("B" & i & ":D" & i).Interior.ColorIndex = RGB(166, 166, 166)
Next i
End Sub
基本上,我希望根据索引(实际代码中的动态行索引,因此使用for循环的算法,我需要逐行进行,因为可以跳过一些行),然后用颜色填充范围
因此,预期的结果将是
我得到以下错误:
我想这与我不正确地使用
.Range(“Bi:Di”)
选择器有关。选择器实际上工作正常
下标超出范围错误实际上是由于我试图将.ColorIndex
属性与RGB颜色编码相结合而导致的
这条线应该是这样的:
ws.Range(“B”&i&“:D”&i).Interior.ColorIndex=15
或
ws.Range(“B”&i&“:D”&i).Interior.Color=RGB(166,166,166)
Interior.Color
。。。你把语法弄混了ColorIndex
不使用RGB。该死的,你是对的,实际上超出范围的错误是由我使用RGB颜色编码引起的。所讨论的算法/语法是有效的。也许作为一个附带问题,有没有一种方法可以在.ColorIndex
属性中使用RGB颜色?没有,但是为什么要使用颜色?啊,好的。我假设.Color
属性的工作原理与css中的类似(换句话说就是字体颜色)。此页面可能不是完全最新的,但有很多示例