プロが教える店舗&オフィスのセキュリティ対策術

例えば、「Aの値」&「Bの値」で処理をする場合には
Select Case "A"&"B"
Case "11" '(A=1&B=1の場合)

で処理できると思うのですが、「B=1~5」として組み合わせることは可能でしょうか?
現在、下記のようにSelect文の中にSelectを組み合わせていますが、
どうにか上記のようにひとつのSelect文で処理できないかな~と思っています。

Select Case "A"
Case 1
Select Case "B"
Case 1 To 5

ご存知の方がいらっしゃいましたら、ぜひご回答の程お願いいたします。

A 回答 (5件)

私なら、Select Caseをまとめて簡単に書こうと思ったら、ANo.3の


nda23氏のような書き方をすると思いますが、その書き方について。
Select Case True
  Case ???
   :
   :
End Select
の書き方をするなら、???の部分とTrueの比較が行われるので、???の部分は
全体で見て「論理式である」必要があります。
ANo.3の内容を書き換えるとすると、
  Case A=1 And B>=1 And B<=5
みたいな感じになります。
    • good
    • 0
この回答へのお礼

ありがとうございます。
教えていただいた記述で、完璧に処理できました!
感謝いたします。

お礼日時:2008/05/22 15:06

私がVBAでやってみたら、できましたが、


文字列のtoはいまいち信用ならないので
case "11","12","13","14","15"
のように記述したほうが良いかもしれません。

Private Sub コマンド0_Click()
Select Case Me.テキスト1 & Me.テキスト3
Case "11" To "15"
MsgBox "true"
End Select
End Sub
    • good
    • 0
この回答へのお礼

説明不足でごめんなさい。

今回は、「A=あいう」と「B=2000~3000」といった文字列+数値(○~○)の組み合わせ条件にしたいのです。

確かに、文字列のToは信用ならない気が・・

ありがとうございます。

お礼日時:2008/05/22 09:45

結論から言うと、できません。


以下のような書き方ができます。構文エラーと思われますが、何故か
エラーになりません。しかし、期待した結果にはなりません。
Select Case True
  Case A = 1, B = 1 To 5
    • good
    • 0
この回答へのお礼

なるほど。
私も、こういう記述の方法は試してなかったので早速試してみました。

う~ん、エラーにはならず期待した結果も出ず。
どういった処理になっているのかわかりませんね。

ご回答、ありがとうございます。

お礼日時:2008/05/22 09:42

(1)case分のネストで1方をToで範囲化(質問の例)


(2)組み合わせを具体化。その値を列挙(数に限りがあると思うが)
(3)場合が多ければ、2次元の表化
   余りルール性がなくても決定できるでしょう。
   エクセルならシート利用。他なら配列利用か。
   -X   Y   Z ・・・・
A   R1 R3 R2
B R3 R1 R2
C ・・・・
この表で縦軸と横軸を各々聞いて、該当交差セルのR2の処理に飛ばす。
(4)http://homepage1.nifty.com/rucio/main/technique/ …
の2つの変数を同時判断
という面白そうなの見つけたが、未検証。

この回答への補足

ご回答、ありがとうございます。
今回作成しているものは、数千通りの値を処理するものです。
(4)のサイトは私も参考にしたのですが、うまくいきません。
AとBの両方ともが数値であれば良いのかもしれませんが、
今回、Aは文字、Bは数値です。
(3)を試してみたいのですが、エクセルに一覧表を作成して、
そこを参照させる・・という理解でOKでしょうか?

補足日時:2008/05/22 09:37
    • good
    • 0

> "A"&"B"


・・・これ「 A&B 」じゃない?(クォティション有無)

http://www.google.co.jp/search?q=visualbasic%20s …


>「B=1~5」として組み合わせる
「条件分岐」を「ネスト」「入れ子」辺りで調べてごらん

でも手っ取り早いのは連結した文字を数値化する事じゃない?
    • good
    • 0
この回答へのお礼

ご回答、ありがとうございます。
ご指摘の通り・・クォティション要らずですね。

連結した文字の数値化、調べてやってみます。

お礼日時:2008/05/22 09:27

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!