- ベストアンサー
エクセルの質問です(関数について)
こんにちは。 エクセルについて質問です。 会社で給与に関する計算をしたいのですが、とあるやり方に困っておりまして、アドバイスを頂けたらと思います。 内容は・・・、 以下のサンプル表において、A1の値が555の場合、D6の26をA3に反映させたいのです。 A1の給与が555円の場合、501円以上600円以下の給与の社会保険料は26円になります、といった具合にです。 B、C列は給与の範囲です D列は社会保険料です。 ******** サンプル表です ********* A B C D 1 555 2 100 200 22 3 26 201 300 23 4 301 400 24 5 401 500 25 6 501 600 26 7 601 700 27 8 701 800 28 9 ・ ・ ******** サンプル表です ********* A1の給与が555だったら社会保険料はD6の26、A1が390だったらD4の24、といった具合に、A3に範囲内の数値を反映できれば、手段はどうでも良いのですが・・・。(とはいってもなるべくわかりやすい手段で・・・。) ちなみに私はエクセルにおいて、関数とマクロ知識がありません。知識と知恵を拝借させて頂ければと思います。よろしくお願いいたします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
セルA3に =VLOOKUP(A1,$B$2:$D$8,3) と入力します。(反映する値の入力されている行がさらに下に続く場合には、$D$8の部分を$D$20とか最終行に書き換えてください。) VLOOKUP関数は、 VLOOKUP(検索値,範囲,列番号[,検索の型]) の書式で、『検索値』を『範囲』の最も左側の列から検索し、同じ行の『列番号』で指定された列のデータを取り出します。 『列番号』は取り出したいデータが入力されている列を、『範囲』の一番左の列を1として数えて、指定します。 『検索の型』は"TRUE"または"FALSE"で指定します。 省略した場合、または"TRUE"を指定した場合には、『検索値』と一致する値がない時には、『検索値』より小さい値の最大値が検索されます。『範囲』内を昇順に並べ替えておく必要があります。 "FALSE"を指定した場合には、検査値と一致する値が見つからない時にはエラー(#N/A)を返します。『範囲』内を昇順に並べ替える必要はありません。
その他の回答 (2)
- Yepes
- ベストアンサー率17% (18/104)
検証していないので回答になりませんが、 Indexでそのようなことができたと思います。 もしその類のことでお悩みでしたら、 下記のURLでいろいろ情報が拾えますので、Excelファンクラブ 一番やりやすい方法を見つけてください。 答えはひとつではないでしょう。 私ならif関数でネストします。 面倒くさいので。。。(^^;
お礼
ページのご紹介ありがとうございます。今後参考にさせて頂きます。
- ippei3
- ベストアンサー率57% (4/7)
こんばんわ。 こんな関数でどうでしょうか。 A3セルに次の計算式を入れます。 =VLOOKUP(A1,B2:D8,3) LOOK関数ですね。 それでは。
お礼
早速試してみました。できました!大変助かりました。ありがとうございます。
お礼
できました!丁寧な説明と補足、大変助かりました。関数に関する知識が非常にたりないもので・・・。ありがとうございました。