VBA如何在一个模块中引用另一个模块的函数

VBA如何在一个模块中引用另一个模块的函数,第1张

我试了,在同一个念芹文件中,只要另一个模块中的函数前不要加

Private

之类的限制词,就可以直接调用,或者前面加模块名再加函数名来调用。比如(我用仔凯毕的Call方式调用,其他方式应该也行的吧):

Call

模块2.DealMerge(

ActiveCell

)

或者

Call

DealMerge(ActiveCell)

模块2中的孙哗过程是这样的:

Function

DealMerge(Target

As

Range)

Dim

tmpRange

As

Range

Set

tmpRange

=

Cells(Target.Row(),

1).MergeArea

'......

End

Function

GoodLuck!

将按链誉段钮事件的private sub commmandbutton2_click

改成public sub commandbutt......

然后

call 窗棚誉体虚晌.commandbutton2_click

在模块的最顶上,用 Public 声明,然后在所有的模块、窗体、sheet中都可以直接使用

例如下面的3个模块使用的是同一腔誉个变量aStr,在任何一个模块的做帆sub、function中都可以改变 aStr 的值,

所以无论点击sheet中的按钮伍胡段,还是form中的按钮,都会使 aStr 的字符串不断加长

模块1:

-----------

'一个公共变量

Public aStr

--------------

form1的代码:

------------

Private Sub CommandButton1_Click()

aStr=aStr &"abcd"

MsgBox aStr

End Sub

----------------

sheet1的 按钮1 的代码:

-------------

Private Sub CommandButton1_Click()

aStr=aStr &"abcd"

MsgBox aStr

End Sub

--------


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8273820.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-14
下一篇 2023-04-14

发表评论

登录后才能评论

评论列表(0条)

保存