当前,我可以将excel数据输入到新表中,但是我想每次选择新的excel工作表时将新数据追加到表中吗?我现在使用的代码如下所示。
Option Compare Database
Option Explicit
Public Sub ImportExcelSpreadsheet(fileName As String, tableName As String)
On Error GoTo BadFormat
DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel12, "Sample",
fileName, True
Exit Sub
答案 0 :(得分:1)
链接表格:
DoCmd.TransferSpreadsheet acLink, …
然后创建一个追加查询,该查询使用此链接表作为源并将数据写入(追加)到Sample表中。
答案 1 :(得分:0)
如果打算将记录追加到表中,则应使用ImportExcelSpreadsheet
函数每次都将其导入到新的临时表中。
之后,您可以将临时表的所有内容附加到目标表,然后删除临时表:
' Import to temp table
ImportExcelSpreadsheet("filename.xlsx", "temp_table")
' Append to destination table
DoCmd.RunSQL "INSERT INTO destination_table SELECT * FROM temp_table"
' Remove temp table
DoCmd.DeleteObject acTable, "temp_table"