>>462
VBAの謎な仕様の一つ

Functionの戻り値を受け取らない時、Functionは関数ではなくステートメントの一種と解釈されてしまう(らしい)
ステートメントの書き方が、VBAでは「命令と引数を空白で区切る」というルールになっているから

ステートメントの具体的な例を挙げると、
Dim a, b
これを
Dim (a, b)
と書くとエラーになるのと一緒

Callで呼んだときに挙動が変わるのは、こんどは関数がCallステートメントのパラメータになるから、構文の解釈が変わる

さらにややこしいことに、引数が1つだとエラーにならない
これは、カッコが演算子とも解釈できてしまうから

a = b

a = (b)
と書いても、無意味だけどエラーにならないのと同じで、カッコが必要なケースではそのまま解釈され、必要ないケースでは演算子とみなすことが可能なので結局エラーにならない