こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

VBA IF文をCASE文にしたいのですが

お尋ねします。VBAで以下のようなIF文をCASE文に書き換えたいのですが、うまくいきません。
どなたかアドバイスをいただけないでしょうか。
よろしくお願いします。

部分だけ抜き出していますが、文字列が日本語かどうかを判定しています。

CD = Asc(strNm)

If CD >= -30561 And CD <= -26510 Then    '漢字(第一水準)"
  i = i + 1 '文字数記録
ElseIf CD >= -26415 And CD <= -5468 Then   '"漢字(第二水準)"
  i = i + 1
ElseIf CD >= -31936 And CD <= -31850 Then  '"カタカナ"
  i = i + 1
ElseIf CD >= -32097 And CD <= -32015 Then  '"ひらがな"
  i = i + 1
ElseIf CD >= -1444 And CD <= -949 Then    '"漢字(その他)"
  i = i + 1
End If

投稿日時 - 2013-03-12 22:55:16

QNo.7990468

困ってます

質問者が選んだベストアンサー

こんな方法もあります。
Select Case True
Case CD >= -30561 And CD <= -26510 Or _
   CD >= -26415 And CD <= -5468 Or _
   CD >= -31936 And CD <= -31850 Or _
   CD >= -32097 And CD <= -32015 Or _
   CD >= -1444 And CD <= -949
i = i + 1
End Select

投稿日時 - 2013-03-13 11:57:28

お礼

ありがとうございます。
うまくいきました!!感謝です。

投稿日時 - 2013-03-13 22:08:25

ANo.2

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.1

どう置き換えたら、どううまくいかなかったのですか?

http://msdn.microsoft.com/ja-jp/library/office/gg278665.aspx
toで範囲指定でできそうな気がしますが

投稿日時 - 2013-03-12 23:58:24

あなたにオススメの質問