2010年6月7日 星期一

轉錄 C# 讀取 Excel

轉錄自 記憶是苦難的開始


連結字串中的HDR=YES,代表略過第一欄資料



//引用OleDb命名空間
using System.Data.OleDb;

string path = System.Windows.Forms.Application.StartupPath + @"\a.xls " ;
string strCon = " Provider = Microsoft.Jet.OLEDB.4.0 ; Data Source = " + path + ";Extended Properties='Excel 8.0;HDR=YES'";
OleDbConnection objConn = new OleDbConnection(strCon);
string strCom = " SELECT * FROM [Sheet1$] ";
objConn.Open();

OleDbDataAdapter objCmd = new OleDbDataAdapter(strCom, objConn);
DataSet objDS = new DataSet();
objCmd.Fill(objDS);
objConn.Close();

for (int i = 0; i < objDS.Tables[0].Rows.Count;i++ )
{
MessageBox.Show(objDS.Tables[0].Rows[i][1].ToString());
}




----------------------------------------------------
補充 取得行數列數

延伸上面例子的 objDS 物件
row number = objDS.Tables[0].Rows.Count

Column numbers = objDS.Tables[0].Columns.Count

沒有留言: