1

您如何检查从哪里调用 Excel VBA Sub?按 CTRL+F 很容易找到代码中可能调用它的位置,但假设有一个隐藏的隐藏按钮调用 Sub。你怎么知道的?

4

2 回答 2

2

请安装插件mztools。它有一个选项Procedure Callers,它列出了调用该过程的所有位置。

下图显示了过程 a 的所有过程调用者。 在此处输入图像描述

于 2013-04-12T00:48:59.850 回答
0

即使您在 IDE 中使用 CTRL+F 也不会发现标准表单按钮设置为运行该宏的情况on action。此外,您的工作簿中的任何形状都可以on action设置为您的子。然后,您需要检查每一个。但是如果你需要在编译过程中检查这种情况,你可以使用类似的东西:

Debug.Print Application.Caller

如果您的 sub 将从标准按钮开始,那么您将获得信息Button 1,或者shape name是否从任何其他形状开始。重要的!如果您在从其他子调用您的子时使用该检查语法,则您将需要错误处理过程。

对于其他检查 Santosh 的想法,你的,最后你可以编写一些代码来搜索所有模块以找到你的子并列出它。

于 2013-04-12T06:44:50.637 回答