EXCELVBA出现运行时错误:

2025-06-22 21:46:48
推荐回答(2个)
回答1:

应该是这样:
Sub 填充颜色()
Dim i As Integer
For i = 0 To 19
Range("E1").Offset(i).Interior.Color = RGB(Range("B1").Offset(i).Value, Range("C1").Offset(i).Value, Range("D1").Offset(i).Value)
Next
End Sub

我也不是很懂VBA,所以可以最浅显地帮你解释一下。
在Excel中,OFFSET函数的功能为以指定的引用为参照系,通过给定偏移量得到新的引用。这个offset的含义百度下就有,嘿嘿。
你原来代码的问题主要是Range( )这种里面没有加引号。加上就好了,用法问题。
另外如果想要E列都填充的话,偏移值应该从0开始。就是For i = 0 To 19,不知道你为什么原来是For i = 2 To 19,如果这样定义的话,E1和E2是没有颜色的。

顺便再补充一下,你原来的代码多定义了G和B,但是下面完全没有用到,我看没啥意义就删了。

回答2:

excel帮助文件里没有相关信息吗,像office帮助文件很多,可以从里面看看