ここ一ヶ月ほど業務でExcelマクロを組んでいて、VBAを触る必要があった。 VBAについてはしっかりと勉強をした事がなかったのだけど、触っていてハマったポイントなんかを書き留めておく。 論理演算子は必ず両辺を評価する AndやOr演算子は左辺で条件が確定しても両辺を評価するようだ。 Sub test() If isA Or isB Then Debug.Print "true" Else Debug.Print "false" End If End Sub Function isA() As Boolean Debug.Print "A" isA = True End Function Function isB() As Boolean Debug.Print "B" isB = False End Function 例えば上記のコードだと、Javaなどで考えると isA がTrueの場