Excel 2007连接字符串(xlsx)

时间:2014-03-26 17:32:32

标签: c# excel xls xlsx

大家好,我正试图从Excel xlsx文档中提取但是我一直收到错误“外部表格不是预期的格式”。以下是我用作连接字符串的内容:


String excelConnString = String.Format("Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0}; Extended Properties='Excel 12.0;'", filePath);

using (OleDbConnection excelConnection = new OleDbConnection(excelConnString))
            {
                    excelConnection.Open();

filepath - 只是一个包含Excel电子表格文件路径的字符串,该文件路径是从表单上传控件中提取的。

我到达了我想要打开连接的代码,它只是出错了。但是这里是踢球者....我在 .XLS 文件上尝试了相同的连接字符串并且连接正常,甚至按预期运行查询。当我谷歌连接字符串,我发现我使用相同的连接,因为我不会工作。任何帮助表示赞赏。

2 个答案:

答案 0 :(得分:2)

试试这个

"Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0}; Extended Properties='Excel 12.0 Xml; HDR=YES'"

或者

"Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0}; Extended Properties='Excel 12.0; HDR=YES'"

答案 1 :(得分:0)

尝试使用此启用宏的连接字符串:

Provider=Microsoft.ACE.OLEDB.12.0;Data Source=c:\myFolder\myExcel2007file.xlsm;
Extended Properties="Excel 12.0 Macro;HDR=YES";