2009-05-13 9 views
0

2つの異なるExcelファイル(.xls)があります。 KATIPという列がexcel1.xlsにあり、SAVCIという列がexcel2.xlsにあります。私はこれらの列を取得して、Nobetという名前のテーブルに2列、SAVCIKATIPという名前のテーブルをマージします。2つのExcelファイルに結合してGridViewに表示

次に、それらをASP.NETのGridview Controlに表示したいとします。私は作業コードを持っていますが、実行するとKATIPという名前の最初の列が得られ、SAVCIという名前の列が得られます。それらは結合されず、異なる列として表示されます。

OleDbConnection DBConnection = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + 
    Server.MapPath("~/App_Data/excel1.xls") + ";" + "Extended Properties=\"Excel 8.0;HDR=Yes\""); 

DBConnection.Open(); 
string SQLString = "SELECT * FROM [Page1$]"; 
OleDbCommand DBCommand = new OleDbCommand(SQLString, DBConnection); 
OleDbDataAdapter da = new OleDbDataAdapter(DBCommand); 
DataSet ds = new DataSet("Nobet"); 
da.Fill(ds,"Nobet"); 
DBConnection.Close(); 
DBConnection = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" +Server.MapPath("~/App_Data/excel2.xls") + ";" + "Extended Properties=\"Excel 8.0;HDR=Yes\""); 

DBConnection.Open(); 
DBCommand = new OleDbCommand(SQLString, DBConnection); 
da = new OleDbDataAdapter(DBCommand); 
da.Fill(ds,"Nobet"); 
GridView1.DataSource = ds.Tables["Nobet"]; 
GridView1.DataBind(); 
DBConnection.Close(); 
+0

この簡単な質問に対する回答なし:) –

答えて

0
私は私の問題を解決し

は...ここで私がやったことです:

OleDbConnection DBConnection = new 
    OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + 
    Server.MapPath("~/App_Data/savcilik_katip.xls") + ";" + "Extended Properties=\"Excel 8.0;HDR=Yes\""); 
DBConnection.Open(); 
OleDbCommand DBCommand = new OleDbCommand("SELECT * FROM [Sayfa1$]", DBConnection); 
OleDbDataAdapter da = new OleDbDataAdapter(DBCommand); 
DataSet ds = new DataSet("Nobet"); 
da.Fill(ds, "Nobet"); 
DBConnection.Close(); 
DBConnection = new 
    OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + 
    Server.MapPath("~/App_Data/savcilik_savci.xls") + ";" + "Extended Properties=\"Excel 8.0;HDR=Yes\""); 
DBConnection.Open(); 
DBCommand = new OleDbCommand("SELECT * FROM [Sayfa1$]", DBConnection); 
da = new OleDbDataAdapter(DBCommand); 
da.Fill(ds, "Nobetci"); 

DBConnection.Close(); 
for (int i = 0; i < ds.Tables["Nobet"].Rows.Count; i++) 
{ 
    ds.Tables["Nobet"].Rows[i]["SAVCI"] = ds.Tables["Nobetci"].Rows[i]["SAVCI"]; 
} 

GridView1.DataSource = ds.Tables["Nobet"]; 
GridView1.DataBind(); 
関連する問題