tagCANDY CGI VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板 [ツリー表示へ]   [Home]
一括表示(VB6.0)
タイトル条件文が判定できない
記事No14726
投稿日: 2010/05/30(Sun) 19:11
投稿者くずちゅう
dim a variant
dim b variant

if a < b then
   A処理
else
   B処理


というコーディングで
例えばaが9.9、bが12.0だとA処理をせずにB処理をしてしまいます
なぜでしょうか?

[ツリー表示へ]
タイトルRe: 条件文が判定できない
記事No14727
投稿日: 2010/05/30(Sun) 22:19
投稿者花ちゃん
Variant 型で受けている為に元のデータが String 型 の場合は当然 a の方が大きいので
そのようになります。
数値として比較したいのなら、変数(元データ) を数値にしてから比較して下さい。

Private Sub Command1_Click()
    Dim a As Variant
    Dim b As Variant
    a = "9.9"  
    b = "12.0"

'    a = CDbl("9.9")
'    b = CDbl("12.0")

    If a < b Then
      Stop
    Else
        Stop
    End If
End Sub

[ツリー表示へ]
タイトルRe^2: 条件文が判定できない
記事No14728
投稿日: 2010/05/30(Sun) 23:06
投稿者くずちゅう
ありがとうございます。

[ツリー表示へ]