【发布时间】:2014-01-21 14:53:26
【问题描述】:
我在使用自动化从 Word 控制 Excel 时遇到问题,这应该可以通过 GetObject 函数实现。
我正在使用 Office 2011 for Mac。我的目标是从 Word 文档中获取信息,并在最近的此类条目之后将其插入到 Excel 工作簿中。 doc这个词是一个合同生成器。每个工作簿将包含大约 30 个相关合同的详细信息。我想使用的逻辑是允许用户输入工作簿的名称,然后 VBA 将获得完整的路径名和路径,然后就可以控制工作簿。但是,我无法制作更简单的案例。
首先,我什至无法控制当前存在的 excel 实例(尽管 CreateObject("Excel.Application") 确实有效。我尝试了早期绑定并得到了:
自动化错误 (91)
下面是产生它的代码:
Option Explicit
Sub WorkOnAWorkbook()
Dim Oxl As Excel.Application
Dim owB As Excel.Workbook
Set Oxl = GetObject(, "Excel.Application")
Set owB = Oxl.Workbooks.Open(fileName:="Macintosh HD:Users:User:Desktop:Test.xlsx")
End Sub
我也尝试过使用后期绑定,这给了我:
错误 424(需要对象)
下面是产生它的代码:
Option Explicit
Sub WorkOnAWorkbook()
Dim Oxl As object
Dim owB As object
Set Oxl = GetObject(, "Excel.Application")
Set owB = Oxl.Workbooks.Open(fileName:="Macintosh HD:Users:User:Desktop:Test.xlsx")
End Sub
我去了 tools->references 并添加了 Excel 对象,所以我不确定程序的这个简单部分是否行不通。
如果有人可以帮助我让这部分工作,我会很高兴,理想情况下,我的程序部分将允许我收集工作簿的名称(通过输入框,获取输入文件的完整路径名称然后控制该工作簿。其他一切都在我的程序中运行,但我无法让 word 和 excel 之间的这个关键桥梁发挥作用。
【问题讨论】:
-
谢谢。我尝试了一些新标签。
标签: excel vba macos export-to-excel excel-2011