VBA-编译错误:预期:如果或选择或子或函数或属性或类型或带有或枚举或语句结尾

时间:2019-02-25 18:01:43

标签: vba ms-access while-loop access-vba compiler-warnings

请原谅我的菜鸟问题。在VBA中工作不是我的正常工作。

我得到标题中列出的错误。令人讨厌的代码是这样的:

While index <= 10
    index = index + 1
End While

我无法想象这是怎么回事,看到它是直接从文档中复制的:https://docs.microsoft.com/en-us/dotnet/visual-basic/language-reference/statements/while-end-while-statement

看到代码不是问题,我认为问题一定是在上下文中,但是在我放入此代码块之前,它工作正常。

此代码块是一个简单的私有子例程的一部分,该子例程声明一个变量,为该变量分配一个值,然后将其写入文件,如下所示:

Private Sub btnExpAll_Click()
Dim sFldr As String
sFldr = BrowseFolder("Where do you want to export the files?") 
If sFldr = "" Then Exit Sub                                    
DoCmd.Hourglass True

Dim sListLocal As String
Dim index As Integer

Dim strInputFileNameLocal As String

sListLocal = ""

index = 0

While index <= 10
    index = index + 1
End While

strInputFileNameLocal = sFldr & "\list-local.html"

Open strInputFileNameLocal For Output As #1
Print #1, sListLocal
Close #1

DoCmd.Hourglass False

End Sub

我们的想法是根据某些条件在while循环中向文件中添加更多文本-但由于我什至无法获取while循环进行编译...

1 个答案:

答案 0 :(得分:2)

所涉及的链接是VB.net示例,该示例与VBA相似,在一些简单示例中,很容易混淆。将End While替换为Wend或使用Do … Loop结构。

评论:https://excelmacromastery.com/vba-while-loop/