public datatable exceltods(string path)
但是上面的**只是查詢sheet1$表,如果使用者把sheet表名改了就是報下面的錯:
'sheet1$' 不是乙個有效名稱。請確認它不包含無效的字元或標點,且名稱不太長。
那麼怎樣才能獲得excel中各個sheet的名稱呢?這樣就能動態的選中返回哪個sheet的資料,即使使用者更改了名稱也不怕,完全可以把所有sheet的名稱列出來供使用者選擇:
那麼下面就把解決問題的**列出來,主要用到了oledbconnection.getoledbschematable()方法
code
[copy to clipboard]
///
/// 根據excel的檔案的路徑提取其中表的資料
///
/// excel檔案的路徑
conn.open();
//返回excel的架構,包括各個sheet表的名稱,型別,建立時間和修改時間等
datatable dtsheetname = conn.getoledbschematable (oledbschemaguid.tables, new object );
//包含excel中表名的字串陣列
string strtablenames = new string[dtsheetname.rows.count];
for (int k = 0; k < dtsheetname.rows.count; k++)
oledbdataadapter mycommand = null;
datatable dt = new datatable();
//從指定的表明查詢資料,可先把所有表明列出來供使用者選擇
string strexcel = "select * from [" + strtablenames[0] + "]";
mycommand = new oledbdataadapter(strexcel, strconn);
dt = new datatable();
mycommand.fill(dt);
datagridview1.datasource = dt; //繫結到介面
}
C 讀取Excel中指定的Sheet名稱或索引
public datatable exceltods string path 但是上面的 只是查詢sheet1 表,如果使用者把sheet表名改了就是報下面的錯 sheet1 不是乙個有效名稱。請確認它不包含無效的字元或標點,且名稱不太長。那麼怎樣才能獲得excel中各個sheet的名稱呢?這樣就能...
C 讀取Excel中指定的Sheet名稱或索引
public datatable exceltods string path 但是上面的 只是查詢sheet1 表,如果使用者把sheet表名改了就是報下面的錯 sheet1 不是乙個有效名稱。請確認它不包含無效的字元或標點,且名稱不太長。那麼怎樣才能獲得excel中各個sheet的名稱呢?這樣就能...
Python 讀取excel指定的列
介紹了使用 xlrd 模組,讀取指定座標的單元格,以及迴圈整個 還沒有介紹如何讀取指定的列。目前有一張水果 表,內容如下 需要提取品名和成本價,完整 如下 usr bin env python3 coding utf 8 import xlrd 開啟excel檔案,建立乙個workbook物件,bo...