这会导致任何问题吗?
iCarli = 1
Do While .SelectSingleNode("//ROWSET/ROW/VENDORPARTNUM" & CStr(iCarli)).Text <> EMPTY_STRING
'Statements here for setting up array and its assignment
iCarli = iCarli + 1
Loop Until iCarli = 10
这里的要点是我需要使用这两个条件,节点不为空且计数器不能超过9而不会抛出一些无法预料的错误。
(我知道我可以使用If iCarli = 10 Then Exit Do
)。
思想?
由于
答案 0 :(得分:1)
是的,会导致问题。 IDE不会将其接受为有效语法。你可以选择Do While / Until或Loop While / Until,但不能同时使用。但是你可以在循环底部进行测试以退出:
Sub WillNotWork()
Dim i As Long
i = 1&
Do While i > 1&
i = i + 1&
Loop Until i > 10&
End Sub
Sub InsteadUse()
Dim i As Long
i = 1&
Do While i > 1&
i = i + 1&
If i > 10& Then
Exit Do
End If
Loop
End Sub