奇怪的输出在简单的function – Excel的VBA
我在Excel VBA中有这个简单的function。
Public Function ubi() As Integer Dim i As Integer For i = 7 To 10 If IsNumeric(Cells(35, i).Value) Then ubi = i End If Next ubi = i End Function
正如你所看到的, i
的价值应该是7
或8
或9
或10
。 但是,当我在Excel工作表中testing函数时,我发现ubi()=11
。
那么,什么可能是我的代码中的错误的来源?
从For...Next
循环的外部移除ubi = i
代码继续执行,而这是真的: For i = 7 To 10
每当你点击Next
它是增量的。 当我增加到11,循环退出 – 但我已经设置为11。