Excel 2007 OLEDB连接:文件包含超链接时出错

时间:2010-08-19 00:18:05

标签: c# excel-2007 oledb

在此之前,每个人都将此问题视为重复,我应该说我已经查看了其他问题,并且没有运气就尝试了答案。

这是我正在使用的连接字符串

strConn = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + FilePathBox.Text + ";Extended Properties=\"Excel 12.0;HDR=Yes;IMEX=1\"";

我对2007连接字符串进行了高调和低调搜索,我尝试过每一个我见过的连接字符串以及其中的许多组合。但无论我得到External table is not in the expected format的异常。

我安装了Excel 2007,并且我尝试单独安装正确的驱动程序。

修改

好的很奇怪:它只发生在我试图转换的文件中。我制作了一个新的xlsx文件,它运行正常。恰好是这个特殊文件。

编辑2

我尝试转发的文件中包含电子邮件地址。输入电子邮件地址后,excel会自动将其作为超链接。这就是问题。如果我从文本中删除超链接,转换工作正常。如果文件包含超链接,在连接时我是否需要做些什么?

1 个答案:

答案 0 :(得分:1)

这是一个适合我的XLSX文件:

strConn =  @“Provider = Microsoft.ACE.OLEDB.12.0; Data Source =”+ dataSource +“; Extended Properties = \”EXCEL 12.0 XML; HDR = YES; IMEX = 1 \“; Persist Security Info = True; Jet OLEDB:Database密码=管理员“;

对于xlsm,我使用:

strConn =  @“Provider = Microsoft.ACE.OLEDB.12.0; Data Source =”+ dataSource +“; Extended Properties = \”EXCEL 12.0 Macro; HDR = YES; IMEX = 1 \“; Persist Security Info = True; Jet OLEDB:Database密码=管理员“;