public DataTable GetData(string strpath, string strSql,string ExcelEdition)
{
DataTable dtgc = null;
OleDbConnection con = null;
try
{
string strCon;
switch(ExcelEdition)
{
case "2003":
strCon= "provider=microsoft.jet.oledb.4.0;data source=" + strpath + ";extended properties='Excel8.0;HDR=Yes;IMEX=1'";
break;
case "2007":
strCon = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + strpath + ";Extended Properties=\"Excel 12.0;HDR=YES;IMEX=1\"";
break;
case "2010":
strCon=@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + strpath+ ";" +"Extended Properties=\"Excel 12.0 Xml;HDR=YES;IMEX=1\"";
break;
case "userdefined":
strCon = strconExcel;
break;
default:
strCon = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + strpath + ";" + "Extended Properties=\"Excel 12.0 Xml;HDR=YES;IMEX=1\"";
break;
}
if (strCon=="")
{
MessageBox.Show("没有设置自定义的连接字符串");
return null;
}
con = new OleDbConnection(strCon);
OleDbCommand cmd = new OleDbCommand(strSql, con);
OleDbDataAdapter da = new OleDbDataAdapter(cmd);
DataSet ds = new DataSet();
da.Fill(ds);
dtgc = ds.Tables[0];
return dtgc;
}
catch (System.Exception ex)
{
MessageBox.Show(ex.Message);
return null;
}
finally
{
con.Close();
}
}