[英]OleDb not reading all rows from excel file, in spite of using IMEX=1
[英]OleDb Connection not reading all the rows from excel file
我在C#連接中使用OleDb從Excel工作表中讀取數據。 並將其填入數據表中。
該表包含275行和27列。 讀完之后,第1,2和3行是空的。 所有其他行都正確填充。
有人對這個問題有所了解嗎?
這是我的代碼:
string connString = "Provider=Microsoft.ACE.OLEDB.12.0;" +
"Data Source=" + "C:/Sheets/DataSheet.xls" + ";Extended Properties=Excel 12.0;";
objConn = new OleDbConnection(connString);
string Query = "SELECT * FROM [Sheet1$]";
OleDbCommand objCmd = new OleDbCommand(Query, objConn);
DataTable Table = new DataTable();
objAdapter1.SelectCommand = objCmd;
objAdapter1.Fill(Table);
問題是我的工作表包含混合數據而且只是讀取數字。 解決方案是指定
Properties=\"Excel 12.0;IMEX=1\";"
IMEX = 1允許讀者導入所有數據,而不僅僅是數字
除非您在連接字符串中指定HDR=NO
,否則此帖子會將第一行的某些信息視為標題。
我不知道為什么第二和第三行可能會被跳過; 你能看到他們的內容有什么不同嗎?
我剛剛向上排添加了新行,它出現在數據集中。 所以行命令在我的情況下改變解決的問題
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.