如何将Excel中的数据导入C#?

时间:2015-06-03 08:35:16

标签: c# excel oledb

我有一个C#程序从Excel中获取一些数据并将其保存到SQL数据库中。当我打开Excel文件并运行程序时,它运行成功,但是如果我关闭Excel文件并尝试再次运行程序,则会出现如下错误:

  

“System.Data.OleDb.OleDbException”类型的未处理异常   发生在System.Data.dll和附加信息=表是   不是真的。

那我怎么解决这个问题呢?

以下是我的代码中出现错误的部分:

string conexcel = "Provider=Microsoft.Jet.OleDB.4.0;" + "Data Source=\kisiler.xlsx;" + "Extended Properties=Excel 8.0";

string cmd = "SELECT * FROM [Sayfa1$]";
OleDbDataAdapter adp = new OleDbDataAdapter(cmd, conexcel);
DataSet ds = new DataSet();
adp.Fill(ds);

adp.Fill(DS);是我的错误部分。

1 个答案:

答案 0 :(得分:0)

您要做的是打开xlsx文件,但使用旧版本的oledb提供程序。 试试这个:

"Provider=Microsoft.ACE.OLEDB.12.0;" + "Data Source=kisiler.xlsx;" + "Extended Properties=Excel 12.0 Xml";