[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『単純な場合分けが沢山ある場合』(ししまる)
通院距離に対応した通勤手当額の値を返したいです。
2キロ以上〜5キロ未満→12000円
5キロ以上〜10キロ未満→25200円
…
上記のような、距離による場合分けが13パターンあるのですが、
これをVBAで処理する場合、どのように記述するのが綺麗でしょうか?
ifを沢山並べれば良いのでしょうが、なんだかダサい気がして(-_-;)
< 使用 Excel:Excel2016、使用 OS:Windows10 >
Select Caseステートメントではどうだろうか?
Select Case 距離 Case Is < 2: 手当 = 0 Case Is < 5: 手当 = 12000 Case Is < 10: 手当 = 252000 〜 End Select
(ねむねむ) 2021/09/13(月) 11:10
おっと 252000 ↓ 25200 で。 (ねむねむ) 2021/09/13(月) 11:12
Dim kyori, kyoriAry, teate, teateAry kyoriAry = Array(0, 2, 5) teateAry = Array(0, 12000, 25200) kyori = Application.InputBox("通院距離を入力", Type:=1) teate = WorksheetFunction.Lookup(kyori, kyoriAry, teateAry) MsgBox "通勤手当は " & teate & " です"
別案を試作してみました。
(めざめるパワー) 2021/09/13(月) 11:50
>ifを沢山並べれば良いのでしょうが VLOOKUPで出来るのでは。 (OP) 2021/09/13(月) 13:16
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.