投稿者 るしぇ  (社会人) 投稿日時 2009/8/18 21:15:41
デフォルトさんの記述ミスから、どんな書き方に対応してるのか興味が沸いて書いてみた。
まぁ、実際にプログラムでは使わないであろう書き方ですが。
むしろ、コンパイラ作成とか、無茶な入力への対応といった発想です。

EE
        Dim a As Integer

        '[OK] 半角スペースを自由に入れられるなら、可読性を向上できる可能性も見えなくは無いなと。 
        If a = 0 Then : a = 1
        ElseIf a > 0 Then : a = 2
        Else : a = 3
        End If

        '[OK] 
        If a = 0 Then a = 1 Else a = 3

        '[OK] Else以降に複数のステートメントを許可してるからこうなるのか... 
        'ただ、複数コロンを入力しても自動編集されるので1つだけ残すのは謎。 
        'ひそかに半角スペースが1個追加されるのも謎。 
        If a = 0 Then a = 1 Else  : a = 3

        '[構文エラー] 
        If a = 0 Then : a = 1 Else  : a = 3
        ~~~~~~~~~~~~~         ~~~~



余談として気になるところ
> VBの文法書に掲載されていないようなので
Microsoftが出してる書籍だとヘルプ(MSDN)を使いまわしていて全部載ってることが多いと思います。
じゃあ、今対象とする文法書って何なのか?入門本レベルなら抜けてる(抜かしてある)内容は多いでしょう。
(質問文に上がっていた If の文でも、ElseIf が丸っきり抜け落ちてるようですし)文法というからには
定義されているものが全て載っているべきだと思いますが、入門本は文法書とは言えないでしょう。
文法を気にするなら定義までは最低限調べて欲しいです。

おみくじ、じゃんけん、タイピングときて次はルーレットなんでしょうか。。。
http://books.google.co.jp/books?id=TuOuXpcEG7YC&printsec=frontcover#v=onepage&q=&f=false
この本を見てるなら、3.3 分岐処理で一通り解説されてるようですね。読みましたか?