出于某种原因,我无法在没有收到此消息的情况下运行简单的For循环。
这是我在sub中编写的一个简单代码,每次尝试运行它时都会得到Application定义的或对象定义的错误消息。但是,如果我将(i,2)切换到像(5,2)这样的设定单元格,它可以工作:
Dim i As Integer
For i = 0 To 10
MsgBox Cells(i, 2).Value
Next i
为什么它不允许我使用" i"?
答案 0 :(得分:0)
当你的循环经历第一次迭代时,xul.color("getColor")
等于i
。没有这样的0
。因此,您会收到错误。
执行Cell(0,2)
或将msgbox行更改为For i = 1 to 10
。
不知道你有什么其他代码,我真的不能说哪一个更好。但对于你所展示的循环,它们是等价的。
如果您要添加到该循环,或在其他地方使用MsgBox Cells(i + 1, 2).Value
,可能会使用i
,这样您就不会搞砸任何其他内容。
答案 1 :(得分:0)
因为单元格(0,2).value无效,这是你在循环中用于i的第一个值。
答案 2 :(得分:0)
这是因为你试图访问不存在的Cell(0,2),下面的代码应该可以工作
Dim i As Integer
For i = 1 To 10
MsgBox Cells(i, 2).Value
Next i