メッセージボックスにフォーカスが取られてるからじゃないですかね?正直、あんまり詳しい原因って言うのは分かりませんが……。試しにこのMsgBox関数をDebug.Printに変えるとキチンとLostFocusとGotFocusを通っているのが分かると思います。