我一直在尝试修复它但是无法修复它,尽管它是一个非常小的代码: 请帮助,它显示“否则没有if”错误:
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
答案 0 :(得分:2)
您可以更简洁地执行此操作,并避免使用GOTO
通过简单的循环来控制程序的流程(通常这是一个好主意);
Dim pass As String
Do
pass = InputBox("Enter Password")
If pass = "hummer" Then Exit Do
Loop
答案 1 :(得分:0)
问题是您使用了one liner IF statement
试试这个:
If pass = "hummer" Then
GoTo Line1
Else
GoTo Line2
End If
有三种方法可以构建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 pass = "hummer" Then
GoTo Line1
ElseIf pass = "something_else" Then
GoTo Line2
Else
GoTo Line3
End If
希望这有帮助。