Поставщик Microsoft.ACE.OLEDB.12.0 не зарегистрирован на локальном компьютере. Microsoft Excel 2016 - PullRequest
0 голосов
/ 03 сентября 2018

У меня установлена ​​Visual Studio 2017 с Microsoft Office 2016 (64-разрядная версия) в моей системе. У меня возникает следующая проблема. Поставщик «Microsoft.ACE.OLEDB.12.0» не регистрируется на локальном компьютере при попытке прочитать данные из файла .xlsx

Я заметил, что у меня есть 32-разрядный драйвер Microsoft Access, доступный по адресу C: \ Windows \ SysWOW64 \ odbcad32.exe

Я не уверен, что 32-разрядный драйвер Microsoft Access не совместим с Microsoft Office 2016 (64-разрядная версия).

Я пытался установить 1) https://www.microsoft.com/en-in/download/details.aspx?id=13255 2) https://www.microsoft.com/en-in/download/details.aspx?id=23734

Но ничего не помогает

код

var connectionString = @ "Provider = Microsoft.ACE.OLEDB.12.0; Источник данных =" + filePath + ";" + "Расширенные свойства =" Excel 12.0; HDR = YES; '";

            using (var excelConnection = new OleDbConnection(connectionString))
            {
                excelConnection.Open();
                var dataTable = new DataTable();
                var dataAdapter = new OleDbDataAdapter("SELECT * FROM [Sheet1$]", excelConnection);
                dataAdapter.Fill(dataTable);
                excelConnection.Close();
            }
...