我知道这是一个不太可能的事情,但是由于“选项私有(private)模块”的限制,甚至更糟糕的“私有(private)子/函数”的限制,有谁知道是否有一种方法可以从 Excel 应用程序隐藏 VBA 过程,而不是从 Excel 应用程序隐藏 VBA 过程其他项目?
我有一个 XLAM,其中包含可重用功能的子集,我喜欢在新的 Excel 项目中包含和引用这些功能,但是使用“选项私有(private)模块”会阻碍这一点,如果我忽略它,则会出现一堆无法使用或模糊的函数和子函数对应用程序可见且可用。
最佳答案
- 将 XLAM 中的标准模块转换为类模块(设置为 公共(public)不可创建);
- 创建一个返回实例的附加类模块(带有 一些额外的工作,每个此类模块的实例);和
- 创建一个标准模块,其中一个属性返回主类入口模块的实例。
1级:
Option Explicit
Public Sub IAmInvisible()
End Sub
模块条目:
Option Explicit
Private mClass As New Class1
Public Property Get TheClass() As Class1
Set TheClass = mClass
End Property
关于vba - 从 Excel 应用程序隐藏 VBA 过程,但不从其他项目隐藏 VBA 过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24713301/