急,C#对多个sheet的操作
我先在在一个excel里面有3个sheet,我已经把前2个sheet的值取出并进行比较,现在想在每次比较玩之后,直接存进第3个sheet里面,下面是我的代码:
for (int i = 0; i < dataTable.Rows.Count; i++)
{
if (!(dataTable.Rows[i][5]).ToString().Equals("") && !(dataTable.Rows[i][6]).ToString().Equals(""))
{
lat1 = Convert.ToDouble(dataTable.Rows[i][5]);
lng1 = Convert.ToDouble(dataTable.Rows[i][6]);
}
else
{
continue;
}
for (int j = 0; j < dataTable1.Rows.Count; j++)
{
if (!(dataTable1.Rows[j][7]).ToString().Equals("") && !(dataTable1.Rows[j][8]).ToString().Equals(""))
{
lat2 = Convert.ToDouble(dataTable1.Rows[j][7]);
lng2 = Convert.ToDouble(dataTable1.Rows[j][8]);
}
else
{
continue;
}
l= GetDistance(lat1, lng1, lat2, lng2);
//需要输出l
if (l < 100 && l > -100)
{
}
}
请问,在if里面应该怎么写,小弟新手,求大神知道!急需!!!
[解决办法]
- C# code
/// <summary> /// 写入Excel文档 /// </summary> /// <param name="Path">文件名称</param> public bool SaveFP2toExcel(string Path) { try { string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" +"Data Source="+ Path +";"+"Extended Properties=Excel 8.0;"; OleDbConnection conn = new OleDbConnection(strConn); conn.Open(); System.Data.OleDb.OleDbCommand cmd=new OleDbCommand (); cmd.Connection =conn; //cmd.CommandText ="UPDATE [sheet1$] SET 姓名='2005-01-01' WHERE 工号='日期'"; //cmd.ExecuteNonQuery (); for(int i=0;i<fp2.Sheets [0].RowCount -1;i++) { if(fp2.Sheets [0].Cells[i,0].Text!="") { cmd.CommandText ="INSERT INTO [sheet1$] (工号,姓名,部门,职务,日期,时间) VALUES('"+fp2.Sheets [0].Cells[i,0].Text+ "','"+ fp2.Sheets [0].Cells[i,1].Text+"','"+fp2.Sheets [0].Cells[i,2].Text+"','"+fp2.Sheets [0].Cells[i,3].Text+ "','"+fp2.Sheets [0].Cells[i,4].Text+"','"+fp2.Sheets [0].Cells[i,5].Text+"')"; cmd.ExecuteNonQuery (); } } conn.Close (); return true; } catch(System.Data.OleDb.OleDbException ex) { System.Diagnostics.Debug.WriteLine ("写入Excel发生错误:"+ex.Message ); } return false; }