0
我很困惑于OleDB & Excel。保存为2007格式时连接字符串不起作用
我有2个文件:
One is saved in Excel 2007
One is saved in Excel 2010
这是因为某些计算机有2007年和2010等版本的Microsoft Excel。
在vb.net我使用:
m_sConn1 = String.Format("Provider=Microsoft.ACE.OLEDB.12.0;Data Source='{0}';Extended Properties='Excel 12.0;HDR=NO;IMEX=1';", file)
当是做:
conn1 = New System.Data.OleDb.OleDbConnection(m_sConn1)
conn1.open()
随着保存,在2010年的文件,我得到0个错误。 与一个保存在2007年,我得到
"External table is not in the expected format"
是两个版本的这个字符串连接?我应该使用Interop吗? (因为该文件是使用Interop Excel 12.0自动生成的,并且在2007年工作于& 2010)。
我已经安装了2007 Office系统驱动程序:数据连接组件从http://www.microsoft.com/en-us/download/details.aspx?id=23734
编辑:
- 如果我在2010年打开2007文件并保存它,OLEDB读取它确定。
我知道有一些问题问相同的,但是所有的人都有关更改喷气式飞机ACE。但我的情况是不同的,它不会在2007年保存的文件中工作。 – Jaxedin 2012-07-14 00:14:29
这是一个已经报告的错误。只有Excel 2007有这个错误,MS知道它但从未解决它。 – Jaxedin 2012-10-15 16:46:19