- ベストアンサー
IF関数を使いたい
仕事で給与計算データを作ろうと思っています。 給与に応じて所得税を1つのセルに自動的に 入れたいのですが、その場合どうしたらよろしいでしょうか。 所得が87,000円から87,999円の場合は所得税は130円、 88,000円から88,999円の場合は所得税が210円、 89,000円から89,999円の場合は所得税が290円・・・ というようになっています。 1つのシートを所得税シートにして、 A行を87000、88000、89000・・・ B行を87999、88999、89999・・・ C行を130、210、290・・・ と入力していきました。 これを違うシートのあるセルに所得税を入れたいのです。 どなたか計算式を教えてください。 宜しくお願い致します。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
試しに A B 1 87000 130 2 88000 210 3 89000 290 4 5 87999 130 と仮定して A5に所得税を求める給与を入力します。 B5に求める所得税が出力されます。 B5の関数 =VLOOKUP(A5,$A$1:$B$3,2,TRUE) $・・・・範囲を固定するためです。コピーしても変わらない。 TRUE・・・NO.2さんの回答を見てください。 試しに作り関数を覚えて利用してください。
その他の回答 (4)
- imogasi
- ベストアンサー率27% (4737/17069)
VLOOKUP関数の、TRUE型を使うのが、常識です。IFのネストの使い方では、括弧の数に苦労させられるし、式が大変長くなります。 (1)第2引数は$をつけること(すでに出ている回答は皆ついています) (2)TRUE型です。FALSEがたがあり、他の質問はこちらが多いですが。 (3)各エントリーの、以上、以下、未満に気をつけて、表を作成してください。場合によっては87001や86999のようにしないとだめの場合が考えられます。本番では十分テストしないと、税金の問題なので、間違うと、社員に対し、詫びたりせねばならず、大恥を書きますよ。 色々な意味で、VLOOKUPさえ質問に出さず、IFでやろうという人が、自作は危険が伴います。市販ソフトを検討されては。
お礼
条件関数だと思ってIFを使わねば・・・と思ってしまいました。 「本番では十分テストをしないと」というのはおっしゃるとおりです。間違ったら大変なことになりますからね。 ご忠告も含めてありがとうございました。
- hana-hana3
- ベストアンサー率31% (4940/15541)
>1つのシートを所得税シートにして、 A行を87000、88000、89000・・・ B行を130、210、290・・・ として、Vlookup関数で「検索の型」をTrue にして使いましょう。
お礼
ありがとうございます。 参考URLも見てみます。
- ledm
- ベストアンサー率21% (19/89)
IF関数は、最大でも7つまでしか条件を重ねる事が出来ません。 また、範囲の指定にも向いていませんので、ご希望の資料を作成されたいのであれば、VLOOKUP関数を使われてはいかがでしょうか? 所得税の一覧表が必要ですので、 1.所得の表 2.所得税の一覧表 3.所得税を表示する表 の3シートが必要です。 検索の型を「TRUE」にすれば、検索値未満で最も大きい近似値を取ってきてくれます。
お礼
IF関数でやろうとしたのですが、できなくて困っていました。 最大でも7つまでしか条件が重ねることができないとは今回初めて知りました。 ありがとうございます。
- mshr1962
- ベストアンサー率39% (7417/18945)
行でなく列ですね。 87,000円の前に0円を追加で、範囲がA1:C10とすると =VLOOKUP(金額,$A$1:$C$10,3,TRUE) で計算できます。
お礼
早速のお返事、ありがとうございます。 行ではなく、列でした。 ご指摘も含めてありがとうございます。
お礼
わかりやすくご説明していただきありがとうございます。 早速やってみます。