我有一个名为ThisWorkbook的Excel对象和一个名为Module1的模块。在Module1中,我有一个名为function1的函数。 ThisWorkbook有一个名为sub1的私有子。当用户调用此函数时,我希望Excel首先执行sub1,如果没有错误,请执行该函数的其余部分。但是,当调用function1时,我无法处理sub1。
Excel对象 - ThisWorkbook
Private WithEvents App As Application
Public Sub sub1(some parameters)
...
If (condition) Then
Msgbox ()
End If
...
End Sub
Private Sub Workbook_Open()
Set App = Application
End Sub
Excel模块 - 模块1
Function function1(Add As String, some parameters) As String
ThisWorkbook.sub1(some parameters)
...
End Function
**经常更新以显示当前的代码状态
答案 0 :(得分:0)
由于Sub1
在ThisWorkbook
的范围内,而不是在全局模块中,因此您需要在通话中指明:
Call ThisWorkbook.Sub1
答案 1 :(得分:0)
如果您想引用ThisWorkbook
中的子广告,您应该参考ThisWorkbook
以及:
ThisWorkbook.sub1
代替Call sub1
。