【发布时间】:2021-07-01 00:49:45
【问题描述】:
我正在尝试使用 adodb 处理我的工作表中的某些内容。 出于某种原因,我一开始就无法打开连接;下面的代码给出了 3704 错误
我检查了我的参考资料,Active X 等已经启用。
Dim sSQLQry As String
Dim ReturnArray
Dim oCn As New ADODB.Connection
Dim oRs As New ADODB.Recordset
Dim str_provider As String
Dim str_hdr As String
If Application.Version < 12 Then
str_provider = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source="
str_hdr = "Excel 8.0;"
Else
str_provider = "Provider=Microsoft.ACE.OLEDB.12.0; Data Source="
str_hdr = "Excel 12.0;"
End If
Dim str_conn
str_conn = str_provider & ThisWorkbook.FullName & "; Extended Properties='" & str_hdr & "HDR=Yes;'"";"
oCn.Open str_conn
Dim str_query As String
str_query = "select * from " + "final_song" + "where 1=0"
oCn.Execute str_query
【问题讨论】:
-
将
str_hdr = "Excel 12.0;"更改为str_hdr = "Excel 12.0 Xml;会发生什么?顺便说一句,错误何时发生?对于8.0或12.0? -
还将
str_query = "select * from " + "final_song" + "where 1=0"更改为str_query = "select * from final_song where 1=0",看看是否有区别? “在哪里”之前没有空格 -
您的文件在 OneDrive 中吗?
-
@SiddharthRout 给我一个运行时错误“02147217805 (80040e73)”。错误是针对 12.0
-
@SiddharthRout 在“where”中添加一个空格,不幸的是。