記事の重要な訂正
2000年9月15日
重要な補遺
対象記事:テクニック編 5.知られざる関数たち
対象部分:記事中の 3.IIF関数
補遺:次の部分は後から付け加えたものです。この部分を理解しないでIIF関数を使用すると重大なバグの原因となる可能性があります注意してください。
なお、IIF関数の第2引数、第3引数に関数を指定した場合は第1引数の真偽にかかわらす両方の関数が実行されてしますようです。返される値はもちろん第1引数の真偽によるのですが、実行しなくてもよい関数を実行してしまうというのは困り者です。この点注意してください。
たとえば、次のようなコードを記述してははいけません!
Private Sub Command1_Click()
K = IIF(TRUE, 1, CalcEnd)
End Sub
Private Function CalcEnd()
End
End Function
このコードを実行するとプログラマーの期待に反してコマンドボタンをクリックするとプログラムが終了してしまいます!
説明:この事実はVisual Basic Magazine 2000年10月号のP53に掲載されている記事によって知りました。私の記述を信用してプログラムに応用した方は注意してください。