在 Access MDB 中应用或包含 Excel 工作表模板

在 Access MDB 中应用或包含 Excel 工作表模板

我的一位同事使用 MSAccess 组织她的数据。她输出表格并将其粘贴到 excel 文件中(相同的标题/列,,,,)。然后 excel 表进行一些计算并输出汇总表。

有没有办法使这个过程自动化?

答案1

有两种方法可以解决这个问题:1) 在 Access 中创建一个可以完成 Excel 所做所有事情的报告。这有点不费脑筋,所以我假设没有这样做是有原因的。

另一种方法是建立从 Excel 到 mdb 文件的 ODBC 连接。这将允许 Excel 直接使用 Access 表(如果需要,可以实时使用)。我这样做是因为在 Excel 中格式化报告比在 Access 中更容易。

此 Microsoft 链接具有概述http://office.microsoft.com/en-us/excel/HP052747511033.aspx

使用此方法需要您将数据库设置为数据源。这个过程并不困难。

找到“数据/导入外部数据/新数据库查询”菜单项,然后选择“新数据源”。将“数据源”命名为“选择 Microsoft Access (*.mdb)”驱动程序,然后单击“连接”。单击“选择”按钮以选择数据库,然后单击“确定”。然后在数据库中选择表。然后系统会询问您要包括哪些列。您可以选择所有列。单击“下一步”、“下一步”和“完成”。选择数据的左上角位置,您就大功告成了。

答案2

您可以在 VBA 中轻松创建一个可以插入到工作表中的查询:

如果您想使用模板:

Set xlApp = CreateObject("Excel.Application")

xlApp.Visible = False

Set xlWorkbook = xlApp.Workbooks.Open(sTemplate_Full_Folder_Path_and_Template_File_Name, False, xlReadWrite)

打开记录集:

rs.Open Some_Query_Name , CurrentProject.Connection, adOpenKeyset, adLockReadOnly

将记录集的结果放在 Excel 中。我喜欢为单元格使用名称。

xlSheet.Range("SomeCellNameInExcel).CopyFromRecordset rs

您可以将标题添加到模板中的列

相关内容