- ベストアンサー
EXCELで、条件によって計算法を変える数式
いつもお世話になっております。 現在価格表の自動計算式を作成中ですが、いいアイデアが浮かばないので、ご指摘、ご教示いただければと思い、投稿いたします。 0~500 20000円 501から1000 最大30000円 単価20円 1001から2000 最大40000円 単価15円 といった価格表があるとします。 A1に件数を入れるとB1に価格が表示されるようにしたいのです。 ex1.例えばA1に1020件と入れると 30000円(1000までは30000円)+20件×15円(1001件からの単価計算)⇒計算方法 =30300円⇒ほしい数字 ex2.A1に700件と入れると 20000円+200件×20円=24000円 と計算してくれる数式を求めています。 大変複雑ですが、よろしくお願いいたします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
単純に計算するなら =IF(A1>2000,40000,IF(A1>1000,30000+MOD(A1,1000)*15,IF(A1>500,20000+MOD(A1,500)*20,A1*40)))
その他の回答 (2)
- highton
- ベストアンサー率23% (14/59)
下の補足についての回答です。 確か「IF文の入れ子は8個か9個まで」という ルールがあった気がします。 なので、9個以上入れたい場合は他のセルを使用して また条件式を作るしかないです。 不確定な回答でゴメンナサイ。
お礼
ありがとうございました! 助かりました!
- mu2011
- ベストアンサー率38% (1910/4994)
一例です。 =IF(A1>1000,MIN(40000,(A1-1000)*15+30000),IF(A1>500,MIN(30000,(A1-500)*20+20000),20000)) 因みに501~1000の場合、MIN関数は不要ですが1001以上に合わせています。
お礼
ありがとうございました。 これらの段階が9個あるので、地道に重ねていきます! 助かりました。
補足
ありがとうございました!! できました! ところで、もしよかったらでいいんですけど、この価格表が9段階あって、9個目を入力したら、「入力した数式は正しくありません」と出ました。 ひとつのセルに入る数式の文字数に限界があるのでしょうか?