Excel VBA模块子程序未被参数选取

Rod*_*ddy 4 excel vba excel-vba

在新的Excel电子表格中,我插入了一个新模块并输入了一个公共子模块.尝试测试时,除非我删除参数,否则子列表不会出现在宏列表中.

这种行为是奇怪的,我找不到任何对它的引用作为一个问题,我读过的所有内容都声明子程序(或函数,也尝试过)可以有参数.

Public Sub RetrieveSIR()  <-- Can be found
Public Sub RetrieveSIR( SIRNumber as Integer)  <-- Cannot be found
Run Code Online (Sandbox Code Playgroud)

它试图解决这个问题,这让我绕过弯道.如果有人可以提供帮助,我们将不胜感激.

Sil*_*xor 9

由于您不能简单地使用vba编辑器屏幕中的参数运行sub,因此带有参数的Subs不会显示在宏列表中.它们只能通过代码调用,因此可以输入所需的参数.

编辑:如果由于某种原因你真的需要你的宏在宏列表中,你应该将该参数作为宏中的变量并使用输入框来指定它.这样,当用户单击宏时,将提示他们输入,然后宏可以相应地运行.

关于函数,你可以使用带参数的函数并将其用作excel中的公式,但据我所知它们也不会出现在宏列表中.