I'd probably go with an associative array wrapper (e.g., refParam = { Value: valueToPassByRef }), similar to what belltown suggested, but as an alternative for intrinsic types, if you box them first (or explicitly CreateObject them) and specify the function parameter "as Object", you can use the setter to reset the value.
Sub Main()
myInt = 1
myInt = Box(myInt)
print "Before:"; myInt
ResetInteger(myInt)
print "After:"; myInt
End Sub
Sub ResetInteger(input As Object)
input.SetInt(10)
End Sub
My Channels: http://roku.permanence.com - Twitter: @TheEndlessDev
Instant Watch Browser (NetflixIWB), Aquarium Screensaver (AQUARIUM), Clever Clocks Screensaver (CLEVERCLOCKS), iTunes Podcasts (ITPC), My Channels (MYCHANNELS)