2016-01-26 3 views
0

Хорошо, вероятно, легко один, но я только начинаю использовать этот язык, и в этом фрагменте кода:VBA: Выход Хотя в случае

While DATA.Cells(1, i).value & "" <> "" 
    If InStr(DATA.Cells(1, i).value, columnName) > 0 Then 
     column = i 
     Exit While 
    End If 
    i = i + 1 
Wend 

Похоже, что это не так, как использовать Выход Хотя ? Как мне это сделать?

+0

Это дублируется, но имя вопроса легко найти кого-то еще. @duDE –

+0

Ваше состояние в заявлении While меня озадачивает. Не могли бы вы попытаться описать, что он должен делать? – jkpieterse

+0

Пока CELL.value не является пустой строкой. –

ответ

1

While/Wend можно выйти только преждевременно с GOTO или путем выхода из внешнего блока (Exit sub/function/another exitable loop)

Изменения к Do петле Intead

Do While DATA.Cells(1, i).value & "" <> "" 
If InStr(DATA.Cells(1, i).value, columnName) > 0 Then 
    column = i 
    Exit Do 
End If 
i = i + 1 
Loop 

оригинального ответа от @Alex K. Break out of a While...Wend loop in VBA

Смежные вопросы