无论如何都要在脚本完成之前终止。
例如:
Sub Macro1()
Range("A1").Select
If ActiveCell.Value Like "1" Then ActiveCell.Value = "0"
' Put some sort of termination of script here
If ActiveCell.Value Like "0" Then ActiveCell.Value = "1"
End Sub
如果[A1]确实包含“1”,则将其更改为“0”。但是,由于第二个if语句将“0”更改为“1”,这将首先恢复第一个语句的作用。
我要做的是在第一个语句后终止(如果它返回true)。如果不遵循第二个陈述......
我尝试过“Else”,但我似乎无法让它工作......
对不起我的天真,我对Visual Basic没有多少经验
编辑:我已根据建议使用ElseIf语句修复了它。
Sub Macro1()
Range("A1").Select
If ActiveCell.Value Like "1" Then
ActiveCell.Value = "0"
ElseIf ActiveCell.Value Like "0" Then
ActiveCell.Value = "1"
End If
End Sub
答案 0 :(得分:2)
您可以使用Exit Sub
提前停止,但它认为您想要的是:
If ActiveCell.Value Like "1" Then
ActiveCell.Value = "0"
ElseIf ActiveCell.Value Like "0" Then
ActiveCell.Value = "1"
End If
答案 1 :(得分:1)
您可以使用Exit Sub完全退出子。但是在你的例子中,也许不是第二个If语句,你可以使用Else If或Else?