连接Access数据库以更新Excel电子表格

时间:2013-12-17 15:50:44

标签: excel ms-access interface

我们的部门每月都会保留几个Excel电子表格,其中包括许多电子表格,包括图表和图表。每个月,使用在不同部门Access数据库中编写的报告为这些电子表格收集数据。

显然,维护/更新这些电子表格需要做很多工作,并且对人为错误持开放态度。我想要创建的是一个Access数据库,通过更新这些电子表格本身可以使这个过程变得更加容易。用户将打开此数据库,选择电子表格,数据库将从其他部门数据库中提取数据,以便为用户生成电子表格。

我遇到的问题是尝试决定如何将此电子表格更新数据库与其他部门数据库联系起来。虽然它们是我们部门内的数据库,但我希望以一种不会给它们带来新工作的方式对它们进行连接。换句话说,我不想在这些数据库中创建或修改任何查询,报告,表等。我对链接任何表格都有点犹豫,因为我不想冒任何数据修改的风险。我只是希望我的数据库向其他数据库询问他们的数据,然后使用该数据来更新spreadhseets。请记住,所有这些数据库都在Access中,所有电子表格都在Excel中。

1 个答案:

答案 0 :(得分:1)

由于您不希望链接到其他Access数据库中的表,因此您可以使用包含源数据库的完整路径的查询。

SELECT am.*
FROM AssetMovements AS am
    IN 'C:\share\Access\Assets.mdb';

根据需要优化查询,并将其另存为命名查询。然后,您可以将该查询名称用作DoCmd.TransferSpreadsheet TableName 选项。

DoCmd.TransferSpreadsheet TransferType:=acExport, _
    SpreadsheetType:=acSpreadsheetTypeExcel9, _
    TableName:="qryAssets", _
    FileName:="C:\share\Access\Assets_20131217.xls", _
    HasFieldNames:=True