数据绑定Excel失败??在线等答。。。。。
try{
string strConn;
string ExcelFile = @"D:\\20110829.xls";
strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + ExcelFile + ";Extended Properties='Excel 8.0;HDR=False;IMEX=1'";
OleDbConnection OleConn = new OleDbConnection(strConn);
OleConn.Open();
String sql = "SELECT * FROM [Sheet1$]";//可是更改Sheet名称,比如sheet2,等等
OleDbDataAdapter OleDaExcel = new OleDbDataAdapter(sql, OleConn);
DataSet OleDsExcle = new DataSet();
OleDaExcel.Fill(OleDsExcle, "Sheet1");
OleConn.Close();
}
catch (Exception err)
{
MessageBox.Show("数据绑定Excel失败!失败原因:" + err.Message, "提示信息",
MessageBoxButtons.OK, MessageBoxIcon.Information);
}
怎么会报:数据绑定Excel失败!失败原因:'Sheet1$' 不是一个有效名称。请确认它不包含无效的字符或标点,且名称不太长。
这是什么原因啊,求解答
--------------------编程问答-------------------- 解决方案 --------------------编程问答-------------------- 确定Excel文档中是否有“[Sheet1$]”这个工作表 --------------------编程问答--------------------
string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + ExcelFile + ";Extended Properties='Excel 8.0;HDR=False;IMEX=1'";--------------------编程问答-------------------- 是Sheet1 而不是Sheet1$ --------------------编程问答--------------------
OleDbConnection conn = new OleDbConnection(strConn);
conn.Open();
string strExcel = "";
DataTable schemaTable = conn.GetOleDbSchemaTable(System.Data.OleDb.OleDbSchemaGuid.Tables, null);
string tableName = schemaTable.Rows[0][2].ToString().Trim();
strExcel = "select * from ["+tableName+"]";
是Sheet1$,可能你的工作表名称不叫:Sheet1$
select * from [名称$] --------------------编程问答-------------------- Sheet1$
你的 工作名称可能不是Sheet1$
你用SQL server 自带的工具去导入一下 EXCEL
导入的过程中 会提示出 你的 EXCEL 的名字是什么
你复制 下 替换了 Sheet1$ 就行了
补充:.NET技术 , C#