Ssis 通过OleDb ACE访问Excel 2007二进制文件(.xlsb)

Ssis 通过OleDb ACE访问Excel 2007二进制文件(.xlsb),ssis,oledb,excel-2007,Ssis,Oledb,Excel 2007,我发现Excel2007二进制格式(扩展名为.xlsb)非常完美 适合我的需要,因为它的快速加载和非常紧凑。我送一个 Excel中包含大量数据的一组报告,这些报告是 实际上加载的是一个IS包 所以我假设转换成这种格式,阅读上面的文档 访问Ole DB提供程序12,其中写入了此提供程序支持xlsb 供应商。我在Excel中转换了文件,然后在尝试更改它们时 在包中(只需通过添加“b”更改文件路径即可) 后缀),我收到以下错误消息: "Test connection failed because of

我发现Excel2007二进制格式(扩展名为.xlsb)非常完美 适合我的需要,因为它的快速加载和非常紧凑。我送一个 Excel中包含大量数据的一组报告,这些报告是 实际上加载的是一个IS包

所以我假设转换成这种格式,阅读上面的文档 访问Ole DB提供程序12,其中写入了此提供程序支持xlsb 供应商。我在Excel中转换了文件,然后在尝试更改它们时 在包中(只需通过添加“b”更改文件路径即可) 后缀),我收到以下错误消息:

"Test connection failed because of an error in initializing provider. This 
file was created in a previous beta version of Excel 2007.  Open the file 
with Excel 2007 to save it to the most recent version of the Excel 2007 file 
format before opening the file in Access 2007."
嗯,我认为这可能是一些问题的转换 文件,所以我拿起一个全新的,并填写了一些信息。尝试 同样的错误

然后我尝试了使用“.udl”文件的方法,同样的错误! 然后我尝试在不同的机器上进行测试: -我自己的(Windows Vista SP1) -我的同事(Windows XP SP2) -IS服务器(Windows Server 2003 x64 SP2)

错误依然存在。我发现很容易重现错误,所以我是一个 我有点惊讶,我在谷歌上到处搜索却没有找到任何关于它的信息

有人能帮我吗

提前感谢,,
拉斐尔

我知道这是一篇老文章。几天前我遇到了这个问题,经过很多努力,我能够解决它。希望它能帮助别人

就我而言,我有同样的错误:

这个 该文件是在以前的Excel 2007测试版中创建的。打开文件 使用Excel 2007将其保存到Excel 2007文件的最新版本 在Access 2007中打开文件之前格式化。“

当我试图打开我的OldDB连接时会发生这种情况。我怀疑这是由于我的连接字符串语法或值问题造成的,但经过大量更改后,一切都不起作用

我的机器中安装了以下设备:

1) Microsoft Access数据库引擎2010版本14.0.7015(从中获取)

2) Microsoft Office Access数据库引擎2007版本12.0.4581(从中获取)

下面是导致错误发生的连接字符串:

"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Project\Excel1.xlsb;Extended Properties='Excel 12.0;HDR={1}'"
然后我找到了解决我的难题的方法:

我只需要下载,运行它,然后重新启动我的机器。然后,瞧,我就可以打开我的OleDB连接而没有那个错误了


希望这会有所帮助。

很抱歉对这个非常老的问题发表评论,但是您是否找到了解决此问题的方法?提前感谢!我在运行构建服务器的64位计算机上遇到了相同的问题。一些单元测试因此失败。安装没有帮助。尽管相同的64位软件包在64位web服务器上运行良好.我的回答够了吗?老实说,我不能确切地知道您何时以及如何得到错误,但我可以
选择
更新
一个.xlsb文件,使用C#
OleDbConnection