如题

解决方案 »

  1.   

    '1、sSheetName:要导出资料的资料表名称 (Sheet name),例如 Sheet1
    '
    '2、sExcelPath:要导出资料的 Excel 文件路径名称 (Workbook path),例如 C:\book1.xls
    '
    '3、sAccessTable:要导入的 Access Table 名称,例如 TestTable
    '
    '4、sAccessDBPath:要导入的 Access 文件路径名称,例如 C:\Test.mdbPrivate Sub ExportExcelSheetToAccess(sSheetName As String, sExcelPath As String, sAccessTable As String, sAccessDBPath As String)Dim db As DatabaseDim rs As RecordsetSet db = OpenDatabase(sExcelPath, True, False, "Excel 5.0")db.Execute("Select * into [;database=" & sAccessDBPath & "]." & sAccessTable & " FROM [" & sSheetName & "$]")End Sub
      

  2.   

    没测试,自己试试看是否可以,如果不行那只好读取EXCEL,然后将数据填入ACCESS表中
    insert into openrowset('Microsoft.Jet.OLEDB.4.0', 
    'x:\A.mdb';'admin';'',A表) 
    SELECT * 
    FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0', 
    'Data Source="c:\test.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...xactions
      

  3.   

    此一模組共有四個參數:1、 sSheetName :要匯出資料的資料表名稱 (Sheet name),例如 Sheet1 
    2、 sExcelPath :要匯出資料的 Excel 檔案路徑名稱 (Workbook path),例如 C:\book1.xls 
    3、 sAccessTable :要匯入的 Access Table 名稱,例如 TestTable 
    4、 sAccessDBPath :要匯入的 Access 檔案路徑名稱,例如 C:\Test.mdb 
    在宣告區中加入以下宣告:Private Sub ExportExcelSheetToAccess(sSheetName As String, _
    sExcelPath As String, sAccessTable As String, sAccessDBPath As String)
      Dim db As Database
      Dim rs As Recordset
      Set db = OpenDatabase(sExcelPath, True, False, "Excel 5.0")
      Call db.Execute("Select * into [;database=" & sAccessDBPath & "]." & _
              sAccessTable & " FROM [" & sSheetName & "$]")
      MsgBox "Table exported successfully.", vbInformation, "Yams"
    End Sub使用範例如下:將 C:\book1.xls 中的 Sheet1 匯入 C:\Test.mdb 成為 TestTableExportExcelSheetToAccess "Sheet1", "C:\book1.xls", "TestTable", "C:\Test.mdb"
      

  4.   

    这样的话,只能汇入一个EXCEL文件,我现在有很多个EXCEL表要汇入到同一ACCESS数据库里啊