如下图,第一个截图是我电脑点击load按钮的效果,第二个是用户的界面,不能再用户电脑上调试,但是用户界面的table已经有header了,我想是代码中获取数据的问题,应该是用户电脑里面里一些设置或者环境的问题(用户电脑同时安装了2007和2003),我自己电脑安装了2007.
获取dataset按钮代码如下
/// <summary>
/// 将选择的文件放入dataset中
/// </summary>
/// <param name="filename">选择的excel文件路径</param>
/// <returns>选择的excel放入dataset的数据</returns>
private DataSet DoImportexcel(string filename)
{
string sheetname;
if (filename == "")
{
return null;
}
else
{
strConn = "Provider=Microsoft.ACE.OLEDB.12.0;" +
"Data Source=" + filename + ";" +
"Extended Properties=Excel 12.0 XML;";
strConn = "Provider=Microsoft.ACE.OLEDB.12.0;" +
"Data Source=" + filename + ";" +
"Extended Properties=Excel 12.0 XML;";
System.Data.OleDb.OleDbConnection connection = new System.Data.OleDb.OleDbConnection(strConn);
connection.Open();
System.Data.DataTable table = connection.GetOleDbSchemaTable(System.Data.OleDb.OleDbSchemaGuid.Tables, null);
sheetname = table.Rows[0]["Table_Name"].ToString();
connection.Close();
//OleDbDataAdapter ExcelDA1 = new OleDbDataAdapter("SELECT * FROM" + " [" + sheetname + "$A1:B1]" + "where ", strConn);
OleDbDataAdapter ExcelDA = new OleDbDataAdapter("SELECT * FROM" + " [" + sheetname + "]", strConn);
DataSet ExcelDs = new DataSet();
try
{
ExcelDA.Fill(ExcelDs, "ExcelInfo");
}
catch(Exception err)
{
System.Console.WriteLine( err.ToString() );
}
return ExcelDs;
}
}