从 Access 2010 VBA 控制 Excel 工作簿

Posted

技术标签:

【中文标题】从 Access 2010 VBA 控制 Excel 工作簿【英文标题】:Controlling Excel workbook from Access 2010 VBA 【发布时间】:2013-04-11 20:15:30 【问题描述】:

我的情况和下面这个帖子很相似:

Access query to excel 2010 to create a graph via vba

在我的例子中,我导出了一个表格,但我想对 Excel 文件做更多的事情。

首先我想重命名 Excel 文件第一张表上的选项卡,因为它使用时髦的表名导出。因此,我想将其更改为“MyTable as of (add a date variable here)”而不是“tblThisIsMyTable”

其次,我需要创建一个数据透视表并在另一个选项卡上制作数据透视表的副本,以更改其中一个参数。

我的问题是,我可以在 Excel 中记录一个宏来执行基本步骤并将该代码放入我的 Access VBA 吗?

我希望我已经足够清楚了,感谢您提供的任何帮助。

【问题讨论】:

【参考方案1】:

我的问题是,我可以在 Excel 中记录一个宏来执行基本步骤吗 并将该代码放入我的 Access VBA 中?

是的,绝对的。

在 Access 中,您可能需要添加对 Microsoft Excel 库的引用。

然后,您需要对“已记录”宏进行一些更改,以便它创建 Excel.Application 的新实例,并打开所需的文件和工作表。例如,

Sub OpenExcel()
Dim xlApp as Excel.Application
Dim xlWB as Excel.Workbook
Dim xlSh as Excel.Worksheet

Set xlApp = New Excel.Application
Set xlWB = xlApp.Workbooks.Open("C:\Your filename.xlsx") '<modify as needed
Set xlSH = xlWB.Sheets("Sheet Name") '<modify as needed

'You can paste the recorded macro in here
'
'
'
'
'

xlWB.Save
xlWB.Close
xlApp.Quit
Set xlApp = Nothing

End Sub

【讨论】:

以上是关于从 Access 2010 VBA 控制 Excel 工作簿的主要内容,如果未能解决你的问题,请参考以下文章

使用 vba 在 Access 2010 中使用不同表单的 ID 打开表单

Access 2010 Web 数据库 - 从局部变量更新文本框值?

Access 2010中使用VBA创建动态表

Access 2010 VBA 不保存对字段的更改

从 Access 2000/2003 迁移到 Access 2010

使用 VBA 在 Microsoft Access 中创建表单