下面的代码是Excel的VBA。我正在使用Excel 2007随附的视觉基本编辑器。
Dim counter As Integer
counter = 1
While counter < 20
counter = counter + 1
end while '<- the compiler is complaining about this statement
代码不编译。在代码上方我只有声明。根据MSDN这应该有效,但事实并非如此。
答案
While
构造不是用End While
但是有一个Wend
。
While counter < 20
counter = counter + 1
Wend
请注意,该信息在文档中很容易获得;只是按F1。您链接到的页面涉及Visual Basic .NET,而不是VBA。虽然(不打算)vba和vb.net之间的语法有一定程度的重叠,但一个人不能只是假设一个文档可以直接应用于另一个文档。
也在VBA帮助文件中:
Tip 这
Do...Loop
声明提供了一种更具结构化和灵活的方法来执行循环。