Macro to clear error

  • Thread starter Thread starter gifer
  • Start date Start date
G

gifer

Hi,

I have a simple macro or two, that this group has helped me write (thank
you), that tells my worksheet to RefreshAll, so outside data is updated
every 30 seconds. Occasionally, the server where the Get External Data is
pointing, is out of service. If during that time, refresh is executed, I get
a box telling me that "update/refresh is unable to query server"... It
requires acknowledgment, even though the server may come back on line while
the box is waiting for me to click OK. If I am not at my desk to click OK,
then my data which I am logging, is interrupted for however long I am
away... which could be while I am at home, off for the weekend, etc.

How can I have the macro ignore that the server may not be ready... and pole
again, and again, on its regular interval... because, the server usually
returns to service less than a 5 minutes?

I'm guessing some kind of event... I'll try while I'm waiting on a reply.
Working with Excel2000.

Thanks!

John
 
Gezz.. it happened while I was drafting this email... but now, since I am
using a macro to guide the refresh interval, rather than getting the prompt
box as usual, I get a macro Run-time error '1004' because the web query was
not on-line...

Is there an associated macro command to deal with this?

John
 
Although I do not know what the code you are using looks like, one technique
that I use is a conditional loop that evaluates the error code produced by
the macro you are using.

A simple example is:

on error resume next 'tells excel to ignore errors

refresh commands

do while err=1004
repeat refresh commands
end

The error is the event.
 
Thanks. I tried a couple things, but compile error expecting End or End
Sub... couldn't get it to compile w/o error. My original code is below...
I'm not sure where to insert the resume on error... would it be after the
line that fails; noted below in SaveMacro. The first two sets of code are
to have the SaveMacro run every 5 seconds. Those parts work fine.

Public RunWhen As Double
Public Const cRunIntervalSeconds = 5
Public Const cRunWhat = "SaveMacro"

Sub StartTimer()
RunWhen = Now + TimeSerial(0, 0, cRunIntervalSeconds)
Application.OnTime earliesttime:=RunWhen, procedure:=cRunWhat,
schedule:=True
End Sub


Sub SaveMacro()
'
' SaveMacro Macro
' Macro recorded 3/8/2005 by john
'

'
ActiveWorkbook.Save

ActiveWorkbook.RefreshAll (This is where I get the Run-Time error 1004).


End Sub
 
Sub SaveMacro()
'
' SaveMacro Macro
' Macro recorded 3/8/2005 by john
'

'

ActiveWorkbook.Save
On Error Resume Next
ActiveWorkbook.RefreshAll ' (This is where I get the Run-Time error
1004).


End Sub
 
Thanks... I just tried something before I checked for new replies... same
thing you did! Yeah.

John
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Back
Top