日期:2014-05-19  浏览次数:21014 次

Excel數據導入數據庫~~想選擇從Excel的哪行哪列開始讀數據~~高手9999
string   sConnectionString   =@ "   Provider   =   Microsoft.Jet.OLEDB.4.0   ;   Data   Source= ' "+openname+ " ';Extended   Properties=Excel   8.0 ";
OleDbConnection   oleDbConnection   =   new   OleDbConnection(sConnectionString);
try
{
oleDbConnection.Open();
//讀取excel表
DataTable   dataTable   =   oleDbConnection.GetOleDbSchemaTable(OleDbSchemaGuid.Tables,   null);
//利用SQL語句取出Excel文件裡面的數據
string   query   =   "SELECT   月份,品號,單位標準成本,業務分類代號,業務分類名稱,[工費單價(USD)],匯率,[單位標準工費(NTD)]   FROM   [BOM及標準工費$] ";
DataSet   dataset   =   new   DataSet();

OleDbDataAdapter   oleAdapter   =   new   OleDbDataAdapter(query,   sConnectionString);
oleAdapter.Fill(dataset);
oleAdapter.Fill(dataTable);//查看數據行數
this.gridControl1.DataSource=dataset.Tables[0].DefaultView;

以上能實現數據讀入到DataGrid裡面了``
但是從excel的第一行第一列開始寫數據的`包括了表頭我Excel上面的空白``
現在我想``選擇從excel的第幾行第幾列才開始讀數據```
高手指教````

------解决方案--------------------
你可以用DataTable 进行筛选
DataRow[] rows = dataTable.Select( "月份!= ' ' ");
dataTable.Rows.Clear();
for(int i=0;i <rows.Length;i++)
{
dataTable.Rows.Add(rows[i]);
}