- ベストアンサー
テキストボックスの数値チェック
VB6ユーザ(初心者)です。 テキストボックスに入力した数値の範囲チェックを行い、任意の最小~最大範囲内か否かを判定しています。 最大の判定は問題無いのですが、最小側の判定は、正常な場合と、そうでない場合がありますので、どなたか教えてください。 例として、最小~最大範囲を-100~100とします。 1)正常な場合 1/2 「即値と比較する場合」 If Text1.Text < -100 Then '問題無く判定出来ます。 2)正常な場合 2/2 「定数と比較する場合」 標準モジュールに下記定数を定義しています。 Public Const LimitMax As Long = 100 Public Const LimitMin As Long = -100 If Text1.Text < LimitMin Then '問題無く判定出来ます。 3)正常でない場合 「2)の定数を変数に代入して比較する場合」 Dim MinVal As Long MinVal = LimitMin If Text1.Text < MinVal Then '正常に判定出来ません。 上記1),2)の場合は、正常に判定されます。 しかし、上記3)の場合、テキストボックスに「-1」または「-10」等の数値を入力すると、必ず「-100より小さい」と判別されてしまいます。 変数の値を確認すると、正常に「-100」が代入されています。 判定方法に問題があるのでしょうか?或いはテキストボックスのTextプロパティ(文字列)と変数の比較自体に問題があるのでしょうか? どなたか、アドバイスをお願いいたします。 開発環境は、以下の通りです。 OS: Win2000 VB: Ver6(SP6)
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (2)
- imogasi
- ベストアンサー率27% (4737/17070)
- sendaitaro
- ベストアンサー率25% (6/24)
お礼
onlyrom様 ありがとうございます。 おっしゃるとおり、数値に変換する方法が一番の解決方法のように 思います。 たまたま、VB側で面倒みてくれていたのですね。 ありがとうございました。