OnTime: Pass Object Arguments
Just to confirm, you can only pass strings (incl numbers) as arguments to a
routine called with the OnTime method. In addition to Dave's suggestion you
could also pass one or more string arguments such that you can recreate the
object, eg
set rng = Workbooks(sArg1).Worksheets(sArg2).Range(sArg3)
or
set rng = range(sFullAddress)
where sFullAddress = "'[Book1]Sheet1'!A1"
there's a pair of apostrophes in that, and would need to be less than 255
Regards,
Peter T
"Greg Lovern" wrote in message
ups.com...
I understand how to pass number and string arguments with OnTime. But
what about object arguments? Can I pass a range object, combobox
object, etc.?
Here's how I'm passing number and string arguments. How do I pass
object arguments?
Function tester1()
Const NUM_ARG As Long = 5
Const STRING_ARG As String = "String"
Debug.Print "tester1: " & NUM_ARG & ", " & STRING_ARG & ", " & Now
Application.OnTime Now + 0.0000001, "'tester2 " & NUM_ARG & ", """
& STRING_ARG & """'"
End Function
Function tester2(NUM_ARG, STRING_ARG)
Debug.Print "tester2: " & NUM_ARG & ", " & STRING_ARG & ", " & Now
Debug.Print
End Function
Thanks,
Greg
|