Speed of direct link

D

Dan

Hi,
I get data updating from two sources on the same sheet, and I am intersted
to check which on os faster - the difference will be in milliseconds. Is
there a way to do that in Excel.
Many thanks,
Dan
 
J

Joel

Sub mytime()
Const MSec = 86400000
Dim MSeconds As Double
Dim Time_Diff As Double

starttime = Time()

'your code

endtime = Time()


Time_Diff = endtime - starttime

'with time, 1 equal 1 day.
'to get milliseconds
'24 * 60 * *60 * 1000
MSeconds = Time_Diff * MSec

End Sub
 
D

Dan

Thank you, but my problem is to catch the event in change in the direct feed
data - it is not coming from code but just a function (such ar RTGET()...).
 
J

Joel

Not sure what RTGET() is. Is this a workssheet function?

If it is a worksheet function then try this

on worksheet do this
=Testtime()


in VBA
function testTime()
Const MSec = 86400000
Dim MSeconds As Double
Dim Time_Diff As Double


Starttime = Time()
TestTime = RTGET()
EndTime = Time



starttime = Time()

'your code

endtime = Time()

Time_Diff = endtime - starttime

'with time, 1 equal 1 day.
'to get milliseconds
'24 * 60 * *60 * 1000
MSeconds = Time_Diff * MSec

msgbox "exection Time is : " & MSeconds

end function
 
I

Ivyleaf

?






- Show quoted text -

Hi,

Sorry to say, but Dan's method won't work for you since although the
theory is sound, VBA's Time() function is only accurate to one second,
no matter how much you divide it down. The following ver similar
method however should give you the accuracy you need:

Option Explicit
Private Declare Function timeGetTime Lib "winmm.dll" () As Long

Sub TimeDiff()
Dim StartTime As Long, elTime As Double

StartTime = timeGetTime()

'Do whatever here

elTime = (timeGetTime() - StartTime) / 1000

MsgBox "That took " & elTime & " seconds."

End Sub

If you are trying to test the speed of an Excel function, you will
have to write a UDF or something that acts as a wrapper to the
function.

Cheers,
Ivan.
 
I

Ivyleaf

Hi,

Sorry to say, but Dan's method won't work for you since although the
theory is sound, VBA's Time() function is only accurate to one second,
no matter how much you divide it down. The following ver similar
method however should give you the accuracy you need:

Option Explicit
Private Declare Function timeGetTime Lib "winmm.dll" () As Long

Sub TimeDiff()
  Dim StartTime As Long, elTime As Double

  StartTime = timeGetTime()

    'Do whatever here

  elTime = (timeGetTime() - StartTime) / 1000

  MsgBox "That took " & elTime & " seconds."

End Sub

If you are trying to test the speed of an Excel function, you will
have to write a UDF or something that acts as a wrapper to the
function.

Cheers,
Ivan.- Hide quoted text -

- Show quoted text -

Oops... sorry, I meant Joel's method. Sorry Dan.

Cheers,
 

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

Top