库参考问题,VBA Excel 16.0,项目14.0

时间:2018-12-17 15:58:06

标签: excel vba excel-vba microsoft-project-vba

我的客户最近从Office 365下的32位Excel 2016迁移到了64位Excel,并保留了32位MS Project Standard 2010。

我有MS Project Standard 2010固有的VBA代码,该代码通过早期绑定通过Excel 16.0对象库参考来操纵Excel 2016应用程序。将Excel迁移到Office365 64位版本后,对该库的引用(在MS Project Standard 2010中)将不再可用。它不是 MISSING ,只是在列表中不可用。它甚至不会由GUID加载。我没有管理员权限,无法检查或编辑注册表。我的IT支持人员解释说,这个问题可能是 ,因为我们正在混合使用32位和64位应用程序。

我通过将代码从“早期绑定”转换为“后期绑定”来解决该问题。我可能没有抓住所有东西(我在很多应用程序工具中创建了很多代码),并且我担心的是,我的代码的某些功能未正确转换可能会在一段时间内未被发现。 >

我的问题是,Project 2010应用程序(Project 14.0)是否能够引用Office365对象库下的64位Excel 16?如果是这样,请问我的IT支持人员应该如何解决该问题?

如果答案是否定的,我将不得不坚持后期绑定并进行一些广泛的测试。

在此先感谢

马尔科姆

1 个答案:

答案 0 :(得分:1)

您不能在同一主机中的64位库和32位库之间进行交叉引用。主机只能使用相同位数的库。在这种情况下,后期绑定不会为您提供帮助-在版本不匹配的情况下可以为您提供帮助,但是在位数不匹配时则不会为您提供帮助。

如果需要继续在Project和Excel之间进行自动化,则可能需要安装32位Excel,或者考虑安装64位Project。还有第三个选择,即使用VBScript或Powershell并使其在进程外运行,但这可能需要大量工作。