錯誤描述: 在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版本
這裡根據我電腦的配置(win10+VS2010(32bit))選擇對應的版本