我在组织CATIA宏时遇到问题,找不到适合的解决方案。
目前,我有一个大型项目,该项目从较小的项目逐渐发展而来。它是1万行,写在一个模块中。我想通过创建多个注释模块来使其更易于阅读和修改/导航。我有“主”模块和可以调用其他模块的GUI。 问题是CATIA使得我创建的每个模块都可以用作宏。我不希望这样,因为我希望用户为我的主模块创建快捷方式。 我不需要隐藏我的代码,但是如果新用户在导入一个项目时得到20个宏,将很难解释新用户他/她将使用哪个宏。
我尝试使用“选项专用模块”,甚至使用密码,但无法减少该列表中可用宏的数量。我能想到的唯一解决方案(这很疯狂)是将每个过程/函数放在单独的类中。
欢迎您对这个问题有任何经验或想法。
提前谢谢! :)
答案 0 :(得分:1)
关于将您的过程代码重构为类模块,绝对没有什么是 crazy 的。实际上,我什至会称其为最佳做法。
您的宏都可以看起来像这样:
Public Sub DoSomething()
With New MyAwesomeMacro
.Execute
End With
End Sub
Public Sub DoAnotherThing()
With New SomeOtherMacro
.Execute
End With
End Sub
'...
因此,您有一个带有MyAwesomeMacro
过程的Execute
类模块(可以根据需要接受参数):
Option Explicit
Public Sub Execute()
'the old macro code here...
End Sub