string excelPath = “”;//excel文件路径
string sheetname = “”;//sheet name
string strConn = “Provider=Microsoft.ACE.OLEDB.12.0;Data Source=” + excelPath + “;Extended Properties=Excel 8.0;”;
OleDbConnection conn = new OleDbConnection(strConn);
OleDbDataAdapter oada = new OleDbDataAdapter(“select * from [” + sheetname + “$]”, strConn);
DataTable dt = new DataTable();
try
{
oada.Fill(dt);//获得datatable
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
当使用C#语言连接Access数据库时,即使安装有64位版本的Office,也会出现“未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序。”
解决方法:
1、安装“Microsoft Access 2010 数据库引擎可再发行程序包 ”
下载地址:https://www.microsoft.com/zh-cn/download/details.aspx?id=13255
你是64位的Office,你就安装AccessDatabaseEngine_X64.exe。
你是32位的Office,你就安装AccessDatabaseEngine.exe。