0

一旦问卷参与者提供了数据,我正在尝试找到将报告从 Access 提取到 Excel 并更新 Access 的最佳方法。

Access 中的数据非常复杂且庞大(包含在一个主表中 - 50+ 列和 200K+ 行) - 这并不容易让人眼前一亮。

我想从 Access 中提取报告(本质上是数据的一个子集 - N 中的 M 列)。该报告将由个人更新(即更新的值),并且需要反馈到 Access。

我正在寻找实现上述目标的最用户友好的方法。有没有人有任何想法?

Ps 明显的答案欢迎,我是一个完整的 Access/Excel 菜鸟 - 但有 MySQL、SQL Server 的背景。

4

1 回答 1

0

据我所知,没有单一的工具可以做到这一点,如果您想创建自己的工具,我建议您使用任何 .NET 语言、ADO.NET 和 Interop 从 Excel 读取数据并将数据读取到 Excel 中。如果您不想进行一些 .NET 编程,有一个名为DBxtra的报告工具,它以 Excel、Access 和许多数据库作为输入,并允许您将数据导出到 Excel(静态或动态)和其他格式。路线将是这样的:

1.- 从 DBxtra 中的 Access 数据库创建查询

2.- 将结果导出到 Excel(链接或静态工作表)

3.- 让您的用户更新 Excel 中的数据

4.- 使用 Excel 宏更新 Access 数据库中的数据。

要更新访问数据库,您需要在 Excel 文件中放入这样的宏:

Sub appProb()

    On Error GoTo 1

    Dim XLTable As TableDef

    Set Db = OpenDatabase(mdbFile)
    Set XLTable = Db.CreateTableDef("tblProbTemp")

    XLTable.Connect = "Excel 5.0;DATABASE=" & xlsFile
    XLTable.SourceTableName = "tblXLProb"
    Db.TableDefs.Append XLTable

    strSQL = "Insert into tblProb Select * FROM tblProbTemp"
    Db.Execute strSQL

1:
    Err.Clear
    On Error Resume Next
    Db.TableDefs.Delete "tblProbTemp"
    Db.Close

End Sub

唯一值得注意的tblXLProb是命名范围。

注意:这个宏是从这里复制的:http ://www.mrexcel.com/forum/microsoft-access/51157-update-access-records-excel.html

于 2013-03-08T15:47:35.517 回答