OleDb Excel连接错误“System.Data.OleDb.OleDbException”

我创build了一个连接到共享文件夹上的Excel工作表的小型vb.net应用程序。 它工作得很好,如果我打开之前使用的应用程序的Excel,问题是当Excel不在后台打开,当我尝试打开一个连接时出现“System.Data.OleDb.OleDbException”错误。

我已经读了一些关于这个错误,我明白这与本地临时库的访问权限有关。 所以我的问题是:1)有没有解决scheme? 2)这是我的情况下,Excel文件坐在共享驱动器上的最佳连接策略?

连接代码:

skuPath = "C:\path.xlsm" cn = New System.Data.OleDb.OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0;" + "data source=" + skuPath + ";Extended Properties=Excel 8.0;") q1 = "select * from [" + year + "$B4:V128]" da = New System.Data.OleDb.OleDbDataAdapter(q1, cn) cn.Open() da.Fill(ds, "Table1") cn.Close() dt = ds.Tables(0) 

我收到错误cn.Open()。

几个星期前,他们遇到了同样的问题。
错误是由oledb提供者的不正确版本引起的,就像Steve所说的那样。

尝试这个:

 skuPath = "C:\path.xlsm" cn = New System.Data.OleDb.OleDbConnection("provider=Microsoft.ACE.OLEDB.12.0;" + "data source=" + skuPath + ";Extended Properties=""Excel 12.0;HDR=Yes""") q1 = "select * from [" + year + "$B4:V128]" da = New System.Data.OleDb.OleDbDataAdapter(q1, cn) cn.Open() da.Fill(ds, "Table1") cn.Close() dt = ds.Tables(0)