我有Excel文件,是用Office 2016 32位创建的,今天我更新到Office 2016 64位版本。现在,我的文件与工作宏没有部分工作。我收到以下信息:
编译错误:找不到项目或库
iFileName = ThisWorkbook.Path & "\CV_" & ['Filling form'!F7] & "_" & ['Filling form'!F9] & ".xls"Excel 2016 64位不喜欢['Filling form'!F7]和['Filling form'!F9]
应该是什么?
发布于 2018-10-11 13:26:35
问题可能是您在VBA 32位中使用了一个对象库参考,它现在需要64位对象库引用。
将64位中的列表与32位参考列表进行比较。看看有没有遗漏的推荐信。

可能不存在32位对象库的64位版本.
在这种情况下,您的项目与64位Office不兼容,并且不可能将项目转换为64位Office,而不可能用其他解决方案替换此部分。
发布于 2018-10-11 13:22:21
不得不说,我从未在VBA中使用过这种形式的引用--不知道您也可以添加工作表引用。
尝试:
Sub Test()
Dim wrkSht As Worksheet
Dim iFileName As String
Set wrkSht = ThisWorkbook.Worksheets("Filling form")
iFileName = ThisWorkbook.Path & "\CV_" & wrkSht.Range("F7") & "_" & wrkSht.Range("F9") & ".xls"
End Sub发布于 2018-10-11 13:27:09
这可能是您在32位中使用的引用库在64位版本中不存在。在VBA窗口中,转到"Tools“->”Reference“,并检查是否缺少任何库:

我认为最好的方法是比较Excel 32位和64位版本的excel表。
https://stackoverflow.com/questions/52760864
复制相似问题