だよねえ。
ってああ、思い出した、これだ。

http://msdn.microsoft.com/ja-jp/library/sect4ck6.aspx

> トラブルシューティング
>
>  実行順序。Visual Basic では、演算効率を高めるために数式が自動的に
>  並べ替えられることがあります。このため、変数の値を変えてしまうような
>  Function プロシージャを数式の中で実行しないようにしてください。