无法从c#连接到excel

Posted

技术标签:

【中文标题】无法从c#连接到excel【英文标题】:Cannot connect to excel from c# 【发布时间】:2013-03-09 06:31:00 【问题描述】:

我想从我的 ASP.NET 应用程序连接到一个 .xlsx 文件。

这是我的连接字符串:

string connString = "Provider=Microsoft.ACE.OLEDB.12.0;Driver=Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb);Data Source=\"C:\\MyExcel.xlsx\";Extended Properties=\"Excel 12.0 Xml;HDR=NO\"";

OleDbConnection oleConnection = new OleDbConnection(connString);

但是当我尝试打开连接时,我得到了 找不到可安装的 ISAM

办公版本:2007 操作系统:Windows 7 64 位 .NET 框架 4.0 从http://www.microsoft.com/en-us/download/details.aspx?id=13255 下载了32 位 ACE 驱动程序

我什至将我的应用的平台目标更改为 x86,但没有成功。

请帮忙!

【问题讨论】:

请检查以下问题,并确保在与屏幕截图完全相同的位置更改平台目标:***.com/questions/4214527/… 我猜有一个论坛建议使用单个代码。试一试,如下所示。 string connString = "Provider=Microsoft.ACE.OLEDB.12.0;Driver=Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb);数据源='C:\\MyExcel.xlsx ';扩展属性='Excel 12.0 Xml;HDR=NO'"; 【参考方案1】:

将连接字符串改为:

"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=\"C:\\MyExcel.xlsx\";Extended Properties=\"Excel 12.0 Xml;HDR=NO\"";

使用 ODBC 驱动程序连接时需要Driver=... 部分。使用 OLEDB 连接时,指定 Provider 就足够了。更多信息请参考this page。

【讨论】:

@Shuaib 在答案旁边有一个复选框,标记正确的,因为这样可以节省人们让他们知道您的问题已解决的时间,并且它也给了您几分。祝你好运!

以上是关于无法从c#连接到excel的主要内容,如果未能解决你的问题,请参考以下文章

从 C# 连接到 .accdb。 “无法识别的数据库格式”错误

无法从 Excel 连接到远程 OLAP (SSAS) “无法建立连接,因为目标计算机主动拒绝它”

无法从 Excel 中的 VBA 查询连接到 Access 数据库

无法使用 C# 从 Xamarin.iOs 和 Xamarin.Android 连接到 MySql

SSIS Excel 连接管理器无法连接到源

如何使用 SAS 令牌从 C# 连接到 Azure BlobStorage?