Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


7062 / 13646 ツリー ←次へ | 前へ→

【41422】SelectCaseの入れ子について ToShiYo 06/8/9(水) 20:36 質問[未読]
【41423】Re:SelectCaseの入れ子について ponpon 06/8/9(水) 21:19 発言[未読]
【41427】Re:SelectCaseの入れ子について ToShiYo 06/8/10(木) 6:41 お礼[未読]

【41422】SelectCaseの入れ子について
質問  ToShiYo  - 06/8/9(水) 20:36 -

引用なし
パスワード
   SelectCaseの入れ子でコードを書き直すとどのように
成るでしょうか。
一般と会員の割引率が異なるコードをSelectCaseで作ったのですが…

  Dim kingaku As Currency
  Dim kubun As String
  kubun = Range("D33").Value
  kingaku = Range("C33").Value
  
  Select Case kubun '…Range("D33")
    Case Is = "一般"
  Select Case kingaku '…Range("C33")
    Case Is >= 50000
      MsgBox "15%割引です"
    Case Is >= 30000 And kingaku < 50000
      MsgBox "10%割引です"
    Case Is >= 10000 And kingaku < 30000
      MsgBox "5%割引です"
    Case Else
      MsgBox "割引対象外です"
  End Select
  End Select

  Select Case kubun
    Case Is = "会員"
  Select Case kingaku
    Case Is >= 50000
      MsgBox "40%割引です"
    Case Is >= 30000 And kingaku < 50000
      MsgBox "30%割引です"
    Case Is >= 10000 And kingaku < 30000
      MsgBox "10%割引です"
    Case Else
      MsgBox "割引対象外です"
   End Select
   End Select

【41423】Re:SelectCaseの入れ子について
発言  ponpon  - 06/8/9(水) 21:19 -

引用なし
パスワード
   こんばんは。
これではどうでしょう?
インデントをつけるとわかりやすいですよ。

  Dim kingaku As Currency
  Dim kubun As String
  kubun = Range("D33").Value
  kingaku = Range("C33").Value
 
  Select Case kubun '…Range("D33")
  Case Is = "一般"
    Select Case kingaku '…Range("C33")
       Case Is >= 50000
         MsgBox "15%割引です"
       Case Is >= 30000 And kingaku < 50000
         MsgBox "10%割引です"
       Case Is >= 10000 And kingaku < 30000
         MsgBox "5%割引です"
       Case Else
         MsgBox "割引対象外です"
    End Select
  Case Is = "会員"
    Select Case kingaku
      Case Is >= 50000
        MsgBox "40%割引です"
      Case Is >= 30000 And kingaku < 50000
        MsgBox "30%割引です"
      Case Is >= 10000 And kingaku < 30000
        MsgBox "10%割引です"
      Case Else
        MsgBox "割引対象外です"
    End Select
  End Select

【41427】Re:SelectCaseの入れ子について
お礼  ToShiYo  - 06/8/10(木) 6:41 -

引用なし
パスワード
   ▼ponpon さん:

ありがとうございました。
よく理解できました。そうですねインデントをつけると
非常に分かりやすいですね。
これからもよろしくお願いします。

7062 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free