Excel 2010: 运行 时间错误 1004 一般 odbc 错误
Excel 2010: Run time error 1004 general odbc error
我有一个小的 Excel 2010 查询,要么超时(没有响应)然后得到错误 Run time error 1004 general odbc error
当我调试时,它突出显示了这一行:
Selection.QueryTable.Refresh BackgroundQuery:=False
这是在 Excel 2007 年工作的。
我尝试 On Error Resume Next
让查询跳过任何错误并转到下一部分,但这没有帮助。
Sub Refresh_all()
Application.ScreenUpdating = False
Application.Goto Reference:="querycell"
Range("A2").Select
Selection.QueryTable.Refresh BackgroundQuery:=False
Dim pt As PivotTable
Dim ws As Worksheet
For Each ws In ActiveWorkbook.Worksheets
For Each pt In ws.PivotTables
pt.RefreshTable
Next pt
Next ws
Application.Goto Reference:="returncell"
Range("A1").Select
Application.ScreenUpdating = True
End Sub
这个问题的解决方案非常奇怪,但我提出来以防将来有人发现自己陷入这种困境!
在命令文本中,其中一行是:
WHERE i.c LIKE NVL(?, '%')
出于某种原因,它在 Excel 2007 年工作,但在 2010 年没有工作
通过将其更改为此它像以前一样工作
WHERE i.c = ?
我相信会有比我更聪明的人出现并给出背后的推理,但在那之前,这就是解决问题的方法
我有一个小的 Excel 2010 查询,要么超时(没有响应)然后得到错误 Run time error 1004 general odbc error
当我调试时,它突出显示了这一行:
Selection.QueryTable.Refresh BackgroundQuery:=False
这是在 Excel 2007 年工作的。
我尝试 On Error Resume Next
让查询跳过任何错误并转到下一部分,但这没有帮助。
Sub Refresh_all()
Application.ScreenUpdating = False
Application.Goto Reference:="querycell"
Range("A2").Select
Selection.QueryTable.Refresh BackgroundQuery:=False
Dim pt As PivotTable
Dim ws As Worksheet
For Each ws In ActiveWorkbook.Worksheets
For Each pt In ws.PivotTables
pt.RefreshTable
Next pt
Next ws
Application.Goto Reference:="returncell"
Range("A1").Select
Application.ScreenUpdating = True
End Sub
这个问题的解决方案非常奇怪,但我提出来以防将来有人发现自己陷入这种困境!
在命令文本中,其中一行是:
WHERE i.c LIKE NVL(?, '%')
出于某种原因,它在 Excel 2007 年工作,但在 2010 年没有工作
通过将其更改为此它像以前一样工作
WHERE i.c = ?
我相信会有比我更聪明的人出现并给出背后的推理,但在那之前,这就是解决问题的方法