OleDbDataAdapter odda = new OleDbDataAdapter(string.Format("SELECT * FROM [{0}]", SheetName), conn);
上面这样只能查找到一个Sheet,但是我想读出excel中全部的sheet应该怎么做呀?
上面这样只能查找到一个Sheet,但是我想读出excel中全部的sheet应该怎么做呀?
解决方案 »
- 我想实现某个序列号功能。知道的能不能给我写下呢
- 并非所有的代码路径都返回值
- 初学,不知道为什么有时override protected有时protected override,倒底哪个对,在线,明白后立即给分。
- 在ASP.NET 2.0中GridView上的Delete按钮的一个问题
- 什么样的格式书写方法注释才能使方法被调用的时候,显示很详细的参数说明啊?
- 再问:如何限制多个用户使用同一帐号登录
- asp.net页面跳转问题??急
- 请那个大侠给我一个在线编辑器(最好有源程序)
- 一个字符串是0-9 10个数字以 + - * 组合成的,如何计算
- 救火![在线等]!怎样点击按钮后弹出一新页面并传递参数给此新页面?????????????
- 在线急等!asp.net div 提示框问题
- 想修改EXECL里面B2。请问怎么做?
{
//string tableName = null;
DataTable dt = new DataTable();
if (File.Exists(excelFileName))
{
using (OleDbConnection conn = new OleDbConnection("Provider=Microsoft.Jet." +
"OLEDB.4.0;Extended Properties=\"Excel 8.0\";Data Source=" + excelFileName))
{
conn.Open();
dt = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null);
}
}
return dt;
}该DATATABLE得到的是Excel所有Sheet名称循环该DATATABLE,加上你的那段代码,可得到你要的结果
下来知道怎么做了吧?
protected string[] sheetfromexcel(string filepath)
{
OleDbConnection objConn = null;
DataTable dt = null;
string[] sheetName = null;
try
{
string connString =
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+filepath+";Extended Properties=Excel 8.0;";
objConn = new OleDbConnection(connString);
objConn.Open();
dt = objConn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null); if (dt != null)
{
//string[] sheetName = new string[dt.Rows.Count];
sheetName = new string[dt.Rows.Count];
int i = 0;
foreach (DataRow row in dt.Rows)
{
sheetName[i] = row["TABLE_NAME"].ToString();
i++;
}
}
objConn.Close();
objConn.Dispose();
}
catch (Exception e1)
{
Response.Write(e1.Message);
}
return sheetName; }