gpt4 book ai didi

vba - 从 word 宏访问 Excel 文件

转载 作者:行者123 更新时间:2023-12-04 21:54:01 25 4
gpt4 key购买 nike

我正在尝试从 Word 宏打开一个 excel 文件,并访问 Excel 文件中的数据。但是,我只能定义 exWb 并且遇到上面的错误。我的代码是:

Sub mySub()

Dim objExcel As Object
Set objExcel = CreateObject("Excel.Application")

Dim exWb As Excel.Workbook
'Dim exWb As Object
'Set exWb = CreateObject("Excel.Workbook")

...

End Sub

问题在于
Dim exWb As Excel.Workbook

我得到错误:
Compile error: User-defined type not defined

或者
Dim exWb As Object
Set exWb = CreateObject("Excel.Workbook")

我得到错误:
Run-time error '429':
ActiveX component can't create object

PC 上安装了 Excel 2007,我添加了对 Microsoft Office 12.0 对象库和 Microsoft ActiveX 数据对象 6.1 库的引用,但这并没有帮助。

有没有人有什么建议?

最佳答案

你可以做两件事中的任何一件。
1:
添加对 excel 对象库的引用(请参阅@DisplayName 的答案),并稍微重写您的代码:

Dim exApp As New Excel.Application
Dim exWb As Excel.Workbook
Set exWb = exApp.Workbooks.Add

这是早期绑定(bind)。优点是更容易编写代码,因为智能感知正在帮助您。缺点是如果有人试图在不同的 Office 版本(例如 Excel 2013)中运行它,它将无法工作。

2:
不要添加引用,并使用此代码:
Dim exApp As Object
Set exApp = CreateObject("Excel.Application")

您正在尝试创建一个 Excel 应用程序。在此应用程序中,您要创建一个工作簿 ( Set exWb = exApp.Workbooks.Add ) 等。

这是后期绑定(bind),在编码时会给您带来困难,但无论 Excel 版本如何,它都能正常工作。

我通常在早期绑定(bind)中编码,然后在完成后将代码重写为后期绑定(bind)。

关于vba - 从 word 宏访问 Excel 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48626533/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com