[リストへもどる]   [VBレスキュー(花ちゃん)]
一括表示

投稿時間:2004/11/08(Mon) 16:06
投稿者名:しぃ〜
Eメール:
URL :
タイトル:
IF条件の簡略化
御存知の方が居りましたら、是非教えて頂きたい事が有ります。
もし、過去ログに有りましたら申し訳御座いません。発見出来ませんでした。

以下のようなIf文の判定を簡単に出来ないでしょうか?

If i >= 1 AND i <= 10 Then

End If

色々試しておりますが成功しません。
無理な事なのでしょうか。
宜しく御願い致します。

投稿時間:2004/11/08(Mon) 16:30
投稿者名:java.lang.Nullpo
Eメール:
URL :
タイトル:
Re: IF条件の簡略化
> 御存知の方が居りましたら、是非教えて頂きたい事が有ります。
> もし、過去ログに有りましたら申し訳御座いません。発見出来ませんでした。
> 以下のようなIf文の判定を簡単に出来ないでしょうか?
>
> If i >= 1 AND i <= 10 Then
>
> End If
>
> 色々試しておりますが成功しません。
> 無理な事なのでしょうか。
> 宜しく御願い致します。

充分簡略できているかと。(Selectで To を使ってもねぇ...)
ただし、私ならば、

If i >= 1 Then
  If i <= 10 Then

  End If
End If

としますが。

# 理由:最初の評価の結果に関わらず、2番目の評価を実施するため。
# VB.NETでは、AndAlsoなどで、Cの「&&」と同じ動きにさせることができますが。

投稿時間:2004/11/08(Mon) 17:18
投稿者名:LESIA
Eメール:
URL :
タイトル:
Re: IF条件の簡略化
> 以下のようなIf文の判定を簡単に出来ないでしょうか?
>
> If i >= 1 AND i <= 10 Then
>
> End If

If Int((i - 1) / 10) * 10 = 0 Then

End If
って、よけいややこしいような気も(^^;

投稿時間:2004/11/09(Tue) 00:31
投稿者名:Say
Eメール:
URL :
タイトル:
Re: IF条件の簡略化
あくまでロジック遊びとして・・・

iが整数限定なら、

If ABS(i-5.5)<=4.5 Then

投稿時間:2004/11/09(Tue) 05:37
投稿者名:jikoryuu
Eメール:
URL :
タイトル:
Re: IF条件の簡略化
エラートラップを使った方法です。

  Dim i As Double
  On Error GoTo Err_1
  i = Text1.Text
  If CByte(i - 1.5) < 9 Then
    Beep
  End If
Err_1:

でも、1 <= i AND i <= 10 とすると見やすいですし、
このケースではAND以上の簡潔な方法は無いのではないでしょうか?

投稿時間:2004/11/09(Tue) 09:19
投稿者名:しぃ〜
Eメール:
URL :
タイトル:
Re: IF条件の簡略化
皆様、御教授有難う御座いました。
大変勉強になりました。
正直、知らなかった事ばかりです。

この判定は大量データを扱うDLLに使っておりました。
これからいろいろな事を考えながらメンテナンスしなけれ
ばなりません。

非常に為になる事を教えて頂きました。
この度は有難う御座いました。