VBA - Ошибка компиляции: Ожидается: If или Select или Sub или Function или Property или Type или With или Enum или конец оператора - PullRequest
0 голосов
/ 25 февраля 2019

Простите за вопрос нуба.Работа в 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 голосов
/ 25 февраля 2019

Ссылка, о которой идет речь, является примером VB.net, который имеет сходство с VBA и в некоторых простых примерах легко запутывается.Замените End While на Wend или используйте структуру Do … Loop.

Отзыв: https://excelmacromastery.com/vba-while-loop/

...