【问题标题】:Import Excel data in Access在 Access 中导入 Excel 数据
【发布时间】:2012-08-08 14:06:04
【问题描述】:

我的 Access 应用程序中有一个表格,需要用一堆 Excel 文件中的数据填充。我试过这段代码:

DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel8, strTable, strExcelpath, True

但它每次都会覆盖我的访问表中的数据而不是附加它,并且它绝对无法控制发送的内容。

我需要找到一种方法来简单地将 Excel 文件中的数据附加到我的 Access 表中,这两个文件具有相同的结构,所以我想知道是否有一种方法可以在不指定列的情况下逐行导入它.但是,出于个人知识和对用户使用的恐惧,考虑到行和列,我也想知道如何导入它。

谢谢!

编辑:在 Excel 文件上选择代码:

Dim cn As ADODB.Connection
Dim strQuery As String

Set cn = New ADODB.Connection
With cn
    .Provider = "Microsoft.Jet.OLEDB.4.0"
    .ConnectionString = "Data Source=" & Application.CurrentProject.Path & "\Excel\test.xls;" & _
                        "Extended Properties=Excel 8.0;"
    .Open
End With

strQuery = "INSERT INTO tblClients " & _
        "SELECT * FROM [Excel 8.0;HDR=YES;DATABASE =" & Application.CurrentProject.Path & "\Excel\test.xls].[tblImport$]"
DoCmd.RunSQL strQuery

【问题讨论】:

    标签: vba ms-access


    【解决方案1】:

    您还可以在查询中引用 Excel 工作表或范围:

    INSERT INTO Table1 ( ADate ) 
    SELECT SomeDate FROM [Excel 8.0;HDR=YES;DATABASE=Z:\Docs\Test.xls].[Sheet1$a1:a4]
    

    或者

    INSERT INTO Table1
    SELECT * FROM [Excel 8.0;HDR=YES;DATABASE=Z:\Docs\Test.xls].[Sheet1$]
    

    在一个过程中:

    Sub RunThisQuery()
        strQuery = "INSERT INTO tblClients " & _
           "SELECT * FROM [Excel 8.0;HDR=YES;DATABASE=" _
           & Application.CurrentProject.Path & "\Excel\test.xls].[tblImport$]"
    
        CurrentDB.Execute strQuery, dbFailOnError
    End Sub
    

    请注意,您的代码中 DATABASE 后面有一个空格。必须是DATABASE=,没有空格。

    【讨论】:

    • 请考虑我的 Excel 文件目前有接近 200 列...我可以执行 SELECT * 吗?这部分是否有任何文档 [Excel 8.0;HDR=YES;DATABASE=Z:\Docs\Test.xls]。[Sheet1$a1:a4] 谢谢!
    • 可以,只要顺序一致就可以用*,但绝对不推荐。您将在 support.microsoft.com/kb/257819 获得一些信息,并在 Stackoverflow 中获得更多信息。
    • 您在哪里运行查询?以上用于查询设计窗口。您应该发布修改后的代码以适合您的应用程序。
    • 几乎所有这些都不是必需的。我会在上面发帖。
    猜你喜欢
    • 2010-12-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-09
    • 2014-11-19
    • 1970-01-01
    • 2012-11-24
    • 1970-01-01
    相关资源
    最近更新 更多