Make a VB6- or VBA-IDE environments related reference in IDE Add-In?
我在VB6中成功创建了对Microsoft " Visual Basic 6.0可扩展性"的引用的VB6_IDE_Add_In。但是,要在VBA IDE(Excel,Access)中使用此加载项,我必须制作VB6_IDE_Add_In项目的副本,将其重命名为VBA_IDE_Add_In,重命名其属性,等等,主要是,将提到的引用更改为" Microsoft Visual Basic适用于应用程序扩展性5.3 "。
最后我有两个dll-一个用于VB6,第二个-用于VBA。我必须都将它们都放在" regsvr32 "并从VB6项" [HKCU \\\\\\\\\\ Software \\\\\\\\ Microsoft \\\\\\\\ Visual Basic \\\\\\"中手动移动VBA-IDE-Add-In注册表项6.0 \\\\\\\\ Addins] "插入VBA密钥[HKCU \\\\\\\\ Software \\\\\\\\ Microsoft \\\\\\\\ VBA \\\\\\\\ VBE \\\\\\\\ 6.0 \\\\\\\\\\ Addins] ... 是否可以使用条件编译或命令行参数来编译单个dll,从而对该VB6或VBA环境使用正确的引用? 很遗憾,这是我的第一个插件,在这件事上我的经验不足... 我怀疑您是否可以在VB6中为VB6和VBA编译单个加载项,因为这两个库共享相同的名称 明智的做法是跟随领导,并使用.NET开发解决方案。 32位和64位主机可以使用MZ工具或Rubberduck VBA之类的.NET解决方案,并通过从VBIDE类型库创建自己的Interop程序集(并嵌入其类型),可以创建单个dll。适用于VB5,VB6和VBA。
Rubberduck VBA尚未添加对VB6的支持,但我们正在努力:
具有OnConnect和OnDisconnect处理功能的共享VB6和VBA可扩展性插件