运行时错误“1004”应用程序定义或对象定义的错误

(我知道select必须避免,即时学习,并已经得到了与其他密切相关的问题的帮助)非常感谢帮助如何重新编码以下更“宽”,现在有时运行通过,有时不运行。

现在停在第四行,标题中写有错误信息。 请记住:正如你所看到的,刷新数据库时logging的macros给出了两种不同types的代码,我猜它必须与我的数据库在运行时通过不同的excelversions进行复制? 它可以写在一个方面吗? 我可以打电话给公众吗?

Sheets("DB2 Totbel").Select Selection.QueryTable.Refresh BackgroundQuery:=False Sheets("DB2 Giva").Select Selection.QueryTable.Refresh BackgroundQuery:=False Sheets("TS4LAGER").Select Selection.ListObject.QueryTable.Refresh BackgroundQuery:=False Sheets("PIX").Select Selection.ListObject.QueryTable.Refresh BackgroundQuery:=False 'Sheets("PIX").Select 'Selection.ListObject.QueryTable.Refresh BackgroundQuery:=False Sheets("OFO data").Select Selection.ListObject.QueryTable.Refresh BackgroundQuery:=False 

你想刷新您的Excel文件中的所有查询表? 你可以这样编码:

 Public Sub RefreshAllQueryTables() Dim sh As Worksheet Dim q As QueryTable Dim l As ListObject For Each sh In Worksheets For Each q In sh.QueryTables q.Refresh BackgroundQuery:=False Next For Each l In sh.ListObjects For Each q In sh.QueryTables q.Refresh BackgroundQuery:=False Next Next Next End Sub