如何在Word VBA中退出多个子系统
我正在使用VBA。我有一个Word文档,它在打开时启动一个用户表单。用户表单接受来自用户的输入(通过文本框、组合框、复选框和列表框),然后单击用户表单底部的命令按钮。然后,执行的代码从userform获取所有输入,处理信息,并将适当的数据填充到文档中的几个书签中 我通常不太注意纠错,如果我没有把每件事都做好,我的宏就会崩溃(我只是个下班后做个人项目的呆子)。我正在尝试实现最佳实践,因此我想构建一些错误处理代码。特别是,我希望在userform上的数据字段被跳过时通知用户,并停止对脚本的处理 我可以检测是否有遗漏,并用消息框通知用户,然后退出立即子例程。我不知道如何退出两个子例程。我不包括实际的代码,因为我希望有人能在概念上为我指出正确的方向,而不是为我编写代码 我现在的流程是这样的: 单击Command按钮,子例程遍历userform中的每个输入字段。对于每个输入字段,它调用另一个子例程从输入字段中获取值。然后,该子例程调用另一个子例程来更新相应的书签。然后控制返回到由命令按钮调用的主子程序,并处理下一个输入字段 我在获取字段值的第二个子例程中检查空字段/省略响应。如果有空值,我可以使用If语句启动消息框并退出sub。但这只存在于次级潜艇上;单击命令按钮时启动的主sub将继续运行并处理剩余的输入字段。我也想停止这个过程,这样用户在修复错误后必须再次单击命令按钮。我不想执行terminal-end命令,因为这将清除userform,我必须从头开始。如何在不关闭整个程序的情况下停止两个子例程的运行如何在Word VBA中退出多个子系统,vba,ms-word,subroutine,Vba,Ms Word,Subroutine,我正在使用VBA。我有一个Word文档,它在打开时启动一个用户表单。用户表单接受来自用户的输入(通过文本框、组合框、复选框和列表框),然后单击用户表单底部的命令按钮。然后,执行的代码从userform获取所有输入,处理信息,并将适当的数据填充到文档中的几个书签中 我通常不太注意纠错,如果我没有把每件事都做好,我的宏就会崩溃(我只是个下班后做个人项目的呆子)。我正在尝试实现最佳实践,因此我想构建一些错误处理代码。特别是,我希望在userform上的数据字段被跳过时通知用户,并停止对脚本的处理 我可
提前感谢,您可以将第二个子例程更改为一个函数,该函数在成功或失败时返回布尔值,如果失败,则在主例程中退出。您可以将第二个子例程更改为一个函数,该函数在成功或失败时返回布尔值,然后在主例程中退出(如果失败)。您可以将第二个子例程更改为一个函数,该函数返回一个bool值表示成功或失败,然后在主例程中退出(如果失败)。谢谢@trashrobber!我将研究如何使用函数。我只使用过子程序。但是你的建议听起来是个不错的解决办法。@trashrobber你的解决办法效果很好,谢谢!我只能看到标记您的回答或回答我自己问题的按钮。如果有什么方法可以给你信用,我愿意。如果你愿意接受的话,我添加了我的评论作为回答。很高兴这个建议对您有效。您可以将第二个子例程更改为一个函数,该函数返回bool值表示成功或失败,然后在主例程中退出(如果失败)。谢谢@trashrobber!我将研究如何使用函数。我只使用过子程序。但是你的建议听起来是个不错的解决办法。@trashrobber你的解决办法效果很好,谢谢!我只能看到标记您的回答或回答我自己问题的按钮。如果有什么方法可以给你信用,我愿意。如果你愿意接受的话,我添加了我的评论作为回答。很高兴这个建议对你有用。