- ベストアンサー
こんな数式をつくりたいのですが
エクセルで、こんな数式をつくりたいと思っています。 おわかりになる方、教えていただけるとありがたいです。 (A) ────── 100~199 A×40% 200~299 A×30%+20 Aという数字があって、 Aが100~199のときは、A×40%が最終の値になり 200~299のときは、A×30%+20が最終の値になる。 このようにパターンがいくつかあるのです。 そして、 最終的には、 あるレコードに A 関数 最終の値 という風に3つのセルで並べたいのですが、 これっていうのはIF関数をつなげるイメージに なりますか? そのつなげ方もイマイチよくわからないので、 アドバイスいただけるとうれしいです。 長い説明ですみません。。。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
為参考です。 長ったらしいですがIF関数で行うと以下のようになります。(定数値は、固定セルにすれば少々短くなります) =IF(A1<135416,54167,IF(A1<149999,A1*40%,IF(A1<299999,A1*30%+15000,IF(A1<549999,A1*20%+45000,IF(A1<833333,A1*10%+100000,A1*5%+141667))) これを最終値のセルに設定し、下方向にコピーする。 又、計算式については、この関数の計算部分を""で囲で下さい。
その他の回答 (3)
- maruru01
- ベストアンサー率51% (1179/2272)
No.2です。 No.2の補足欄に対して。 [Sheet2]の表を以下のようにします。 A B C 1 0 0 54167 2 135417 0.4 0 3 150000 0.3 15000 4 300000 0.2 45000 5 550000 0.1 100000 6 833334 0.05 141667 そうして、元のシートのA1に値を入力するとして、 B1に、 =REPLACE(IF(VLOOKUP(A1,Sheet2!$A$1:$C$6,2),"+"&A1,"")&TEXT(VLOOKUP(A1,Sheet2!$A$1:$C$6,2),"×0%;;")&TEXT(VLOOKUP(A1,Sheet2!$A$1:$C$6,3),"!+0;!-0;"),1,1,) C1に、 =A1*VLOOKUP(A1,Sheet2!$A$1:$C$6,2)+VLOOKUP(A1,Sheet2!$A$1:$C$6,3) と入力して下さい。
お礼
助かりました。 ありがとうございました! 勉強にもなりました。
- maruru01
- ベストアンサー率51% (1179/2272)
こんにちは。maruru01です。 各数値範囲の係数と切片の一覧表を別のシートに作ってVLOOKUPで参照するといいと思います。 別のシートが[Sheet2]とすると、[Sheet2]に、 A B C 1 100 0.40 0 2 200 0.30 20 3 300 0.25 30 4 ・・・・・ のように作成しておきます。 そうしたら、元のシートのA1にAの値を入力するとして、 数式は、B1に、 =A1&"×"&TEXT(VLOOKUP(A1,Sheet2!$A$1:$C$3,2),"0%")&TEXT(VLOOKUP(A1,Sheet2!$A$1:$C$3,3),"!+0;!-0;") で、 最終の値は、C1に、 =A1*VLOOKUP(A1,Sheet2!$A$1:$C$3,2)+VLOOKUP(A1,Sheet2!$A$1:$C$3,3) となります。
補足
丁寧にありがとうございます。 実は、本当にやりたいものを簡易化した書いたのですが、非常に複雑な式を教えていただいたので、 どの部分を参考にすればわからなくなってしまいました。。。 実際に行いたいのは、源泉徴収額の計算で、 (A) ──────── 0~135416 → 54167円 135417~149999 → A×40% 150000~299999 → A×30%+15000円 300000~549999 → A×20%+45000円 550000~833333 → A×10%+100000円 833334円以上 → A× 5%+141667円 というのがすべてです。 シートを別にしても、おっしゃるように、 最後に該当するシートに戻ってくればいいのですが、 上記をすべてまかなえればOKなのです。 すみません。 最初からこういえばよかったのですが。。。
- mshr1962
- ベストアンサー率39% (7417/18945)
=A1*CHOOSE(A1/100,.4,.3)+CHOOSE(A1/100,0,20) ただし100未満や300以上の場合は#VALUEが表示します。
お礼
早速ありがとうございました!
お礼
長くても、1セルにおさまるので、 たすかります。 ありがとうございました!