Требуется объект ошибки времени выполнения 424 docmd для импорта таблицы - PullRequest
0 голосов
/ 14 октября 2018

Я сталкиваюсь с этой проблемой с кодом ниже:

    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

Все, что я пытаюсь сделать, чтобы импортировать лист в Sample.xlsx в базе данных доступа.Я просмотрел много сообщений, но не смог найти ответ, который решит эту проблему.

Я использую Excel 2016 и Access 2016.

Доступ к пути и имени БД - C: \ Report \База данных \ dbname.accdb

1 Ответ

0 голосов
/ 14 октября 2018

Вы пытаетесь работать с книгой XLSX, но acSpreadsheetTypeExcel9 (с разрешением 8) является спецификатором формата Microsoft Excel 2000 (XLS).Для книги .XLSX требуется либо acSpreadsheetTypeExcel12 (например, 9) для формата Microsoft Excel 2010, либо более предпочтительно acSpreadsheetTypeExcel12Xml (например, 10) для формата Microsoft Excel 2010/2013/2016 XML (.xlsx, .xlsm, .xlsb).

Перечисление AcSpreadSheetType

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...