OleDb Excel 连接错误 "System.Data.OleDb.OleDbException"



我创建了一个小型 vb.net 应用程序,该应用程序连接到共享文件夹上的 excel 工作表。如果我在使用应用程序之前打开 excel 效果很好,问题是当 excel 未在后台打开时,我在尝试打开连接时收到"System.Data.OleDb.OleDbException"错误。

我已经阅读了一些关于此错误的信息,我知道它与对本地临时库的访问权限有关。所以我的问题是:1)有解决方案吗?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 上收到错误。打开()。

几周

前遇到了完全相同的问题。
错误是由不正确的 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)

相关内容

  • 没有找到相关文章

最新更新