我试图找出如何结束我的宏,如果你要按否。但是,在宏结束之前,我想运行代码。如果用户按“是”,则代码应该正常进行。这是我的代码:
Sub main()
Call GriffinC_ISM_Table ' This Macro will create the pivot tables
If MsgBox("Have you run this macro before", vbYesNo) = vbNo Then Call Spark_Table End Sub
Call Extraps
End Sub
从这段代码中可以看出,如果用户按下no,我想运行代码“Spark_Table”,然后结束sub。但是,如果用户按“是”,我想运行代码“Extraps”。任何帮助将不胜感激。
谢谢,
答案 0 :(得分:3)
试,
dim m as long
m = MsgBox("Have you run this macro before", vbYesNo)
if m = vbNo Then
Call Spark_Table
Exit Sub
elseif m = vbyes then
Call Extraps
else
'????? cancelled out of msgbox
end if
答案 1 :(得分:2)
把它分成这样的行(我很震惊甚至编译......)(如果你想提前终止,那就是Exit Sub
。)(你真的不需要使用{{1 ()我向你的Call
添加了一个“问题”图标
MsgBox
...并确保测试用户点击Sub main()
GriffinC_ISM_Table ' This Macro will create the pivot tables
If MsgBox("Have you run this macro before?", vbYesNo + vbQuestion) = vbNo Then
Spark_Table
' put some code here to automatically send an email to the person who can help
Exit Sub
End IF
Extraps
End Sub
会发生什么情况,因为它可能会返回Close X
或vbYes
以外的其他内容