我正在使用以下代码来面对这个问题:
Dim strPathFile As String, strFile As String, strPath As String
Dim strTable As String
Dim blnHasFieldNames As Boolean
blnHasFieldNames = True
strPath = "C:\Report\ImportFile\"
strTable = "Ex_Table"
strFile = Dir(strPath & "*.xlsx")
strPathFile = strPath & strFile
Debug.Print strPathFile
DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, _
strTable, strPathFile, blnHasFieldNames
我正在尝试将其导入到Access数据库中Sample.xlsx中的表格。我浏览了很多帖子,但找不到解决该问题的答案。
我正在使用Excel 2016和Access 2016。
访问数据库路径和名称-C:\ Report \ Database \ dbname.accdb
答案 0 :(得分:1)
您正在尝试处理XLSX工作簿,但是acSpreadsheetTypeExcel9(解析为8)是Microsoft Excel 2000格式说明符(XLS)。 .XLSX工作簿需要Microsoft Excel 2010格式的acSpreadsheetTypeExcel12(例如9),或者更优选Microsoft Excel 2010/2013/2016 XML格式(.xlsx,.xlsm,.xlsb)的acSpreadsheetTypeExcel12Xml(例如10)。