首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >带有文件名的Excel宏在Office 2016 64位中不工作

带有文件名的Excel宏在Office 2016 64位中不工作
EN

Stack Overflow用户
提问于 2018-10-11 13:08:16
回答 3查看 867关注 0票数 1

我有Excel文件,是用Office 2016 32位创建的,今天我更新到Office 2016 64位版本。现在,我的文件与工作宏没有部分工作。我收到以下信息:

编译错误:找不到项目或库

代码语言:javascript
复制
iFileName = ThisWorkbook.Path & "\CV_" & ['Filling form'!F7] & "_" & ['Filling form'!F9] & ".xls"

Excel 2016 64位不喜欢['Filling form'!F7]['Filling form'!F9]

应该是什么?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2018-10-11 13:26:35

问题可能是您在VBA 32位中使用了一个对象库参考,它现在需要64位对象库引用。

  • 从“工具”菜单中,选择“引用”以显示“引用”对话框。

将64位中的列表与32位参考列表进行比较。看看有没有遗漏的推荐信。

可能不存在32位对象库的64位版本.

在这种情况下,您的项目与64位Office不兼容,并且不可能将项目转换为64位Office,而不可能用其他解决方案替换此部分。

票数 1
EN

Stack Overflow用户

发布于 2018-10-11 13:22:21

不得不说,我从未在VBA中使用过这种形式的引用--不知道您也可以添加工作表引用。

尝试:

代码语言:javascript
复制
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
票数 3
EN

Stack Overflow用户

发布于 2018-10-11 13:27:09

这可能是您在32位中使用的引用库在64位版本中不存在。在VBA窗口中,转到"Tools“->”Reference“,并检查是否缺少任何库:

我认为最好的方法是比较Excel 32位和64位版本的excel表。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52760864

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档