欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

C#读取excel文件提示未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序

程序员文章站 2022-04-09 10:17:58
错误描述: 在VS2010执行读取excel文件时,报错“未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序” 业务代码: 报错原因: 没有安装数据访问组件,需要安装相应版本的数据访问组件(AccessDatabaseEngine) 解决方法: 下载安装”Microso ......

错误描述:

在vs2010执行读取excel文件时,报错“未在本地计算机上注册“microsoft.ace.oledb.12.0”提供程序”


业务代码:

       //下面代码是基于窗体button来做的,如果使用需要转为控制台
private void btnopen_click(object sender, eventargs e) { dataset myds = new dataset(); openfiledialog openfiledialog1 = new openfiledialog(); openfiledialog1.filter = @"microsoft excel 2007 文件(*.xlsx)|*.xlsx|microsoft excel 97/2000/xp/2003 文件(*.xls)|*.xls";//打开2003或者2007excel文件 openfiledialog1.showdialog(); txt_path.text = openfiledialog1.filename; if (txt_path.text != "") { myds = getdataset(txt_path.text);//将excel数据读取并转换为dataset dgvdata.datasource = myds.tables[0];//将数据绑定到datagridview //int numb=5; int numb = this.dgvdata.rows.count; for (int i = 0; i < numb;i++ ) { combobox1.items.add(this.dgvdata.rows[i].cells[(0)].value); } }

报错原因:

没有安装数据访问组件,需要安装相应版本的数据访问组件(accessdatabaseengine

解决方法:

下载安装”microsoft access database engine redistributable

根据自己vs2010的版本选择对应版本版本,可以通过任务管理器(ctrl+alt+delete)来查看vs版本

C#读取excel文件提示未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序

这里根据我电脑的配置(win10+vs2010(32bit))选择对应的版本

C#读取excel文件提示未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序