C#用excel进行批量导入的时候,获取excel中的内容放在dataset中有个问题

来源:百度知道 编辑:UC知道 时间:2024/09/19 16:42:40
string strCon = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filepath + ";Extended Properties='Excel 8.0;IMEX=1'";
// string strCon = @"Provider=Microsoft.jet.OLEDB.4.0;Data Source = " + filepath + ";Extended Properties='text;HDR=No;IMEX=1;FMT=Delimited(,)'";

System.Data.OleDb.OleDbConnection Conn = new System.Data.OleDb.OleDbConnection(strCon);
string strCom = "SELECT * FROM [Sheet1$]";
Conn.Open();
System.Data.OleDb.OleDbDataAdapter myCommand = new System.Data.OleDb.OleDbDataAdapter(strCom, Conn);
DataSet ds = new DataSet();
myCommand.Fill(ds, "[Sheet1$]");
Conn.Close();
return ds;

里面的string strCom = "SELECT * FROM [Sheet1$]";
[Sheet1$]这个是写死的,能不能把它写活了,就是不管这个sheet1叫什么名字都默认它取第一个名字的内容放到dataset中,谢谢
能不能让它自动扑获第一个sheet1的名字,然后加到上面

string sheet1$(声明一个变量)
string strCom="SELECT * FROM "+[Sheet1$];这样就是活的了
还有sheet1$必须是你数据库中的表明啊!
myCommand.Fill(ds, "[Sheet1$]"); 这个就不同了