У меня была точно такая же проблема, когда я пытался получить данные из файла Excel 2007 .xlsx.
Обычно надежные драйверы "Microsoft.ACE.OLEDB.12.0" просто отказывались подключаться, выдавая ту же ошибку " Не удалось найти устанавливаемую ISAM ", с которой вы столкнулись.
В конце концов я нашел этот код, который работал:
SELECT * FROM OPENROWSET('MSDASQL',
'DRIVER=Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb);
DBQ=D:\Sample.xlsx', 'SELECT * FROM [Sheet1$]')
Надеюсь, это поможет!
(адаптировано из окончательной публикации в этой теме: SQLTeam.com )
Чуть позже ...
Теперь неожиданно моя исходная строка подключения работает . Раньше это не удавалось (до того, как я успешно подключился, используя приведенную выше строку MSDASQL), но теперь успешно работает.
SELECT * FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0',
'Excel 12.0;Database=D:\Sample.xlsx;HDR=NO;IMEX=1',
'SELECT * FROM [Sheet1$]')
Странно, очень странно.