A Day In The Life

とあるプログラマの備忘録

If文での文字の比較

if文でテキストボックスの値を比較する時は気をつけましょう。

テキストボックスに入力されている数値の大小関係を判定する時

If txtSuji1.Text > txtSuji2.Text Then
  処理1
end if

と書くと間違った判定をしてしまう時があります。



txtSuji1に9、txtSuji2に10が入っていると本来ならtxtSuji2が大きいと判定するはずが、

txtSuji1のほうが大きいと判定してしまいます。



なのでテキストボックスに入力されている数値を比較する時はキャストを行わないといけないようです。

用は文字列型の変数に数字を入れてそのまま比較しちゃいけないってことだと思います。

たとえばこんな感じ↓

If CInt(txtSuji1.Text) > CInt(txtSuji2.Text) Then
  処理1
end if

VB6の時はこんなことなかったのに...