Home |
Search |
Today's Posts |
#1
Posted to microsoft.public.excel.programming
|
|||
|
|||
Workaround for com exe timer?? help
Hi fellow helpers,
I created this little ditty so that I wouldn't have to write the far more complex ActiveX exe (and because I have never written an ActiveX exe). The problem is I get an error with the following code on the starttime = now line. Dim c As Integer, starttimer As Integer c = 0 starttimer = Now() (I have also tried this: starttimer = Format(Now, "h:mm:ss")) Do While c = 0 If Range("A2") < "" Then c = 1 If c = 1 Then Exit Do If Now starttimer + TimeValue("0, 30, 0") Then GoTo KICKIT Loop I think what is happening is that starttimer may be continually updating to reflect "NOW", but I don't want it to do this. Is there a way to capture current time without it updating? Thanks, Nicole |
#2
Posted to microsoft.public.excel.programming
|
|||
|
|||
Workaround for com exe timer?? help
Nicole,
Maybe this is what you want... '--------------- Dim c As Integer, startTimer As Single c = 0 startTimer = Timer Do While c = 0 If Range("A2") < "" Then c = 1 If c = 1 Then Exit Do If Timer startTimer + 30 Then GoTo KickIt Loop KickIt: -- Jim Cone San Francisco, USA http://www.realezsites.com/bus/primitivesoftware "Nicole Seibert" wrote in message Hi fellow helpers, I created this little ditty so that I wouldn't have to write the far more complex ActiveX exe (and because I have never written an ActiveX exe). The problem is I get an error with the following code on the starttime = now line. Dim c As Integer, starttimer As Integer c = 0 starttimer = Now() (I have also tried this: starttimer = Format(Now, "h:mm:ss")) Do While c = 0 If Range("A2") < "" Then c = 1 If c = 1 Then Exit Do If Now starttimer + TimeValue("0, 30, 0") Then GoTo KICKIT Loop I think what is happening is that starttimer may be continually updating to reflect "NOW", but I don't want it to do this. Is there a way to capture current time without it updating? Thanks, Nicole |
#3
Posted to microsoft.public.excel.programming
|
|||
|
|||
Workaround for com exe timer?? help
Hi Nicole,
Try declaring startTimer as double: Dim c As Long Dim startTimer As Double An Integer data type can only hold values in the range -32,768 to 32,767. From the intermediate window: ?CDbl(Now) 38913.7293171296 --- Regards, Norman "Nicole Seibert" wrote in message ... Hi fellow helpers, I created this little ditty so that I wouldn't have to write the far more complex ActiveX exe (and because I have never written an ActiveX exe). The problem is I get an error with the following code on the starttime = now line. Dim c As Integer, starttimer As Integer c = 0 starttimer = Now() (I have also tried this: starttimer = Format(Now, "h:mm:ss")) Do While c = 0 If Range("A2") < "" Then c = 1 If c = 1 Then Exit Do If Now starttimer + TimeValue("0, 30, 0") Then GoTo KICKIT Loop I think what is happening is that starttimer may be continually updating to reflect "NOW", but I don't want it to do this. Is there a way to capture current time without it updating? Thanks, Nicole |
#4
Posted to microsoft.public.excel.programming
|
|||
|
|||
Workaround for com exe timer?? help
Hello Nicole, Your timer is set to run for a maximum of 30 minutes from when it i started. While your timer is running Excel can't be updated Range("A2") won't change until the timer has expired. This is why yo need to use an ActiveX timer or an API timer. Sincerely, Leith Ros -- Leith Ros ----------------------------------------------------------------------- Leith Ross's Profile: http://www.excelforum.com/member.php...fo&userid=1846 View this thread: http://www.excelforum.com/showthread.php?threadid=56174 |
#5
Posted to microsoft.public.excel.programming
|
|||
|
|||
Workaround for com exe timer?? help
I am going for 30 minutes. My understanding is that the default for time is
seconds; Is this true? Then i would need 1800 seconds asking that no other processes run. Also, for the record, KICKIT goes back to the beginning of the SQL Query request. I am asking that all further processes are suspended and if the query is not sucessful to restart it after 30 minutes. Intuitively this has me a little worried since i have already declared the variables. Do I have to set them to nothing before I declare them again? Thank you, Nicole "Jim Cone" wrote: Nicole, Maybe this is what you want... '--------------- Dim c As Integer, startTimer As Single c = 0 startTimer = Timer Do While c = 0 If Range("A2") < "" Then c = 1 If c = 1 Then Exit Do If Timer startTimer + 30 Then GoTo KickIt Loop KickIt: -- Jim Cone San Francisco, USA http://www.realezsites.com/bus/primitivesoftware "Nicole Seibert" wrote in message Hi fellow helpers, I created this little ditty so that I wouldn't have to write the far more complex ActiveX exe (and because I have never written an ActiveX exe). The problem is I get an error with the following code on the starttime = now line. Dim c As Integer, starttimer As Integer c = 0 starttimer = Now() (I have also tried this: starttimer = Format(Now, "h:mm:ss")) Do While c = 0 If Range("A2") < "" Then c = 1 If c = 1 Then Exit Do If Now starttimer + TimeValue("0, 30, 0") Then GoTo KICKIT Loop I think what is happening is that starttimer may be continually updating to reflect "NOW", but I don't want it to do this. Is there a way to capture current time without it updating? Thanks, Nicole |
#6
Posted to microsoft.public.excel.programming
|
|||
|
|||
Workaround for com exe timer?? help
Okay. So, I won't user timer. And yes, i know I should be learning the
ActiveX stuff and I will... i about two minutes. But why wouldn't my original code work -- I didn't use timer? Thanks, Nicole "Leith Ross" wrote: Hello Nicole, Your timer is set to run for a maximum of 30 minutes from when it is started. While your timer is running Excel can't be updated. Range("A2") won't change until the timer has expired. This is why you need to use an ActiveX timer or an API timer. Sincerely, Leith Ross -- Leith Ross ------------------------------------------------------------------------ Leith Ross's Profile: http://www.excelforum.com/member.php...o&userid=18465 View this thread: http://www.excelforum.com/showthread...hreadid=561743 |
#7
Posted to microsoft.public.excel.programming
|
|||
|
|||
Workaround for com exe timer?? help
I wouldn't use this, but the errors are gone
Dim co As Long Dim starttimer As Double c = 0 starttimer = Now() Do While c = 0 If Range("A2") < "" Then c = 1 If c = 1 Then Exit Do If Now starttimer + TimeValue("0:30:00") Then GoTo KICKIT Loop -- HTH Bob Phillips (replace somewhere in email address with gmail if mailing direct) "Nicole Seibert" wrote in message ... Okay. So, I won't user timer. And yes, i know I should be learning the ActiveX stuff and I will... i about two minutes. But why wouldn't my original code work -- I didn't use timer? Thanks, Nicole "Leith Ross" wrote: Hello Nicole, Your timer is set to run for a maximum of 30 minutes from when it is started. While your timer is running Excel can't be updated. Range("A2") won't change until the timer has expired. This is why you need to use an ActiveX timer or an API timer. Sincerely, Leith Ross -- Leith Ross ------------------------------------------------------------------------ Leith Ross's Profile: http://www.excelforum.com/member.php...o&userid=18465 View this thread: http://www.excelforum.com/showthread...hreadid=561743 |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Forum | |||
I have a workaround | Excel Worksheet Functions | |||
Workaround no COUNTIFS in 2003 | Excel Worksheet Functions | |||
Help with circular reference. Need workaround | Excel Worksheet Functions | |||
Stopping a Timer / Running a timer simultaneously on Excel | Excel Discussion (Misc queries) | |||
csv load 64K workaround | Excel Worksheet Functions |