问题描述
|
我不确定为什么<0>无法处理以下错误。
我在单元格ѭ1中设置了一个网络查询,我选择并更改了URL,然后尝试将表格拉入工作表。
我使用不同的URL进行20-30次。
有时,数据提取花费的时间太长,或者发生其他不允许excel获取数据的事情...
在这些情况下,我要处理错误并继续。
但是我仍然收到运行时错误\'1004 \',并且调试显示
.Refresh BackgroundQuery:=False
。
但是,On Error难道不应该抓住它并转到表中的第3行吗?
我可以通过将IP更改为目标以外的名称来调用此问题。
On Error GoTo CardDataPullError
NodeIP = \"192.168.210.4\"
Range(\"T10\").Select
With Selection.QueryTable
.Connection = \"URL;http://\" & NodeIP & \":21495/\" & Card & \"/ispCktDBPage\"
.WebSelectionType = xlSpecifiedTables
.WebFormatting = xlWebFormattingNone
.WebTables = \"3\"
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = False
.WebdisableDateRecognition = False
.WebdisableRedirections = False
.Refresh BackgroundQuery:=False
End With
On Error GoTo 0
\'below is another section of code that highlights the cell red
\'showing it had a problem pulling the data
GoTo SkipCard \' To skip error handler
CardDataPullError:
X = X
Cells(CardRow,CardCol).Interior.ColorIndex = 3 \' Red
SkipCard:
\'other reasons to skip to
解决方法
您忘记将
resume
放入CardDataPullError
错误处理程序中。
因此,不会处理该错误。
更改代码,如下所示:
CardDataPullError:
X = X
Cells(CardRow,CardCol).Interior.ColorIndex = 3 \' Red
Resume SkipCard: