VBA代码显示“否则没有错误”
我一直在试图解决它,但无法,虽然这是一个非常小的代码:请帮助,它显示“否则如果”错误:
Private Sub Workbook_Open() Line2: Dim pass As String pass = InputBox("Enter Password") If pass = "hummer" Then GoTo Line1 Else GoTo Line2 End If Line1: End Sub
问题是你使用了one liner IF statement
。
尝试这个:
If pass = "hummer" Then GoTo Line1 Else GoTo Line2 End If
有3种方法来构造IF
语句。
其中之一就是我上面提到的One Liner Construct
,它不需要End If
来终止。
例:
If pass = "hummer" Then GoTo Line1 Else GoTo Line2
其次是End If Terminated Construct
。 这是我在上面发布的例子。
第三个是If-EsleIf-Else End If terminated constuct
有多个条件,则If-EsleIf-Else End If terminated constuct
。
例:
If pass = "hummer" Then GoTo Line1 ElseIf pass = "something_else" Then GoTo Line2 Else GoTo Line3 End If
希望这可以帮助。
您可以更简洁地做到这一点,避免使用GOTO
来控制程序的stream程(这通常是一个好主意),只需一个简单的循环;
Dim pass As String Do pass = InputBox("Enter Password") If pass = "hummer" Then Exit Do Loop