I have found a major difference about 'call' keyword with functions that having, ByRef Arguments (I have found this in MS-Access VBA editor). If you are calling the function without 'Call' keyword, ByRef aruments will not set for the calle. For Ex:
**Private Function Test(Optional ByRef refArg As String) As Boolean
refArg = "Test"
Test = True
End Function**
if you call the function with out 'Call' keyword like
dim a as string
Test(a)
'a' will be empty string, after the call returns
if you call the function with 'Call' keyword like
dim a as string
Call Test(a)
'a' will contain the string 'Test'
The detailed explanation provided in the following link:
http://blogs.msdn.com/b/ericlippert/archive/2003/09/15/52996.aspx