Access VBA中的Microsoft Outlook对象库

Gra*_*ant 2 dll ms-access office-2003 access-vba office-2010

我已经在这里提到了关于后期绑定的帖子,但我不确定它是否已经回答了我的问题.我不得不使用Access VBA在XP的Office 2003和Win 7的Office 2010之间切换.如果我在2010年编辑,则2003无法打开该文件,因为"无法加载.dll"并且与Office 2003中缺少的Microsoft Outlook 14.0对象库有关.

如果我正在进行后期绑定,是否有任何理由让对象库被检查?或者它是否仍然需要检查,我将永远需要在2003年编辑?

提前致谢!

Gor*_*son 5

不,如果您使用后期绑定,则不需要在VBA项目中"勾选"参考.

通常我会做的是

  • 使用早期绑定构建我的代码,因此IntelliSense将帮助我避免打字错误并帮助我恢复内存:方法/属性名称,参数等,然后

  • 将代码转换为后期绑定(或多或少)完成后

这就是为什么在我的一些示例代码中你会看到类似的东西

Dim fso as Object  '' FileSystemObject
...
Set fso = CreateObject("Scripting.FileSystemObject")  '' New FileSystemObject
Run Code Online (Sandbox Code Playgroud)

comments('')中的项目是原始的早期绑定声明,然后我用ObjectCreateObject()调用(后期绑定)替换它们,但是如果我想要将它们更改回来,请将原始文本保留为注释.

并且,正如您发现的那样,我还必须记住删除 VBA项目的引用,否则它可能会导致不同机器上的问题(并且在这些情况下避免这些问题是后期绑定的全部要点).