您的位置:首页 > 编程语言 > C#

C#导入Excel数据时出现“'Sheet1$'&…

2014-09-10 15:21 429 查看
下面是一段执行Excel数据导入的程序,在下面的程序段中连接串strConn没有问题,但使用过程中出现“'Sheet1$'
不是一个有效名称。请确认它不包含无效的字符或标点,且名称不太长。”的错误。这个错误是由于下面红色的一行代码引起的,Sheet1是Excel中默认的第一页的名称,但是如果你把你的Excel中的Sheet的名字改了,就不正确了。例如我的Excel中第一个页面名是“交费清单”,这时应把红色代码行改为:

OleDbDataAdapter ExcelDA
= new OleDbDataAdapter("select * from [交费清单$]",
OleDB);

/// <summary>

/// 执行导入

/// </summary>

/// <param
name="strFileName">文件名</param>

///
<returns>DataSet</returns>

public DataSet doImport(string strFileName)

{

if (strFileName == "")

return null;

else

{

strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source = '" +
strFileName + "';Extended Properties ='Excel
8.0;HDR=NO;IMEX=1'"; //Excel数据库连接字符串

OleDbConnection OleDB = new OleDbConnection(strConn);//打开数据源连接

OleDbDataAdapter ExcelDA = new
OleDbDataAdapter("select * from [Sheet1$]",
OleDB);

DataSet ExcelDs = new DataSet();

try

{

ExcelDA.Fill(ExcelDs,"ExcelInfo");
//填充数据集

}

catch (Exception err)

{

System.Console.WriteLine(err.ToString());

}

return ExcelDs;

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: