2015-03-10 3 views
2

У меня возникли проблемы с пониманием ошибки в коде VB. Я пытаюсь создать ElseIf statement, но я всегда получаю ошибку при каждом ElseIf, что она должна быть предварительно принята If statement.Заявление ElseIf В VB

Мой код по линии:

If Value1= 5 then Variable1 = 4 
ElseIf Value1= 4 then Variable2 = 5 
ElseIf Value1= 3 then Variable2 = 6 
End If 

Так у меня есть, если заявление предшествующему в ElseIf statement, но он все равно не будет компилироваться. Любая идея почему?

+1

Синтаксис не соответствует действительности. https://msdn.microsoft.com/en-us/library/752y8abs.aspx –

ответ

2

Try:

If Value1 = 5 Then 
    Variable1 = 4 
ElseIf Value1 = 4 Then 
    Variable2 = 5 
ElseIf Value1 = 3 Then 
    Variable2 = 6 
End If 
1

Ваш первый If statement является один лайнер и не нуждается в End If прекратить.
Это в порядке самоограничениеIf statement и, таким образом, ваш следующий ElseIf's плавают.
Один вкладыш If statements не применяется на ElseIf contructs.
Вы можете попробовать, что Tui отправил, что является правильным синтаксисом.
Или вы можете написать свои условия, как показано ниже:

If Value1= 5 then Variable1 = 4 
If Value1= 4 then Variable2 = 5 
If Value1= 3 then Variable2 = 6 

Недостатком является то, вы не можете проверить для Else заявление, но он будет работать так же, как и то, что отправил туи. Хотя это не связано с вопросом, вы также можете попробовать использовать Select Case statement. НТН.

Select Case Value1 
Case 5: Variable1 = 4 
Case 4: Variable2 = 5 
Case 3: Variable2 = 6 
End Select 
Смежные вопросы