- ベストアンサー
エクセル関数 IF?ちょっと複雑な関数を
エクセル 関数の使い方を教えてください。 50000円以上なら、その価格の10.5%を差し引いて、さらに200円引 50000円以下なら、7500円引き という関数を作りたいのですが なかなか上手くいきません。 どなたかエクセルに詳しい方、ご教授ください、よろしくお願いします。
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
確認したいのですが、50000円以上の場合において、価格の(10.5%+200円)を差し引いた後の値に含まれている端数は、そのまま表示させた方が良いのでしょうか、それとも四捨五入や切り捨て等の、数値を丸めるための何らかの処理をさせた方が良いのでしょうか? 例えば元の価格が50005円の場合、価格の(10.5%+200円)を差し引いた後の値は44554.475円になりますが、 その値の1円未満の端数を切り捨てた場合は44554円、 その値の1円未満の端数を切り上げた場合は44555円、 その値の1円未満の端数を四捨五入した場合は44554円、 となります。 今仮に、元の価格がA1セルに表示されているものとしますと、 端数もそのまま表示する様にする関数は =IF(ISNUMBER(A1),A1-IF(A1<50000,7500,A1*0.105+200),"") 1円未満の端数を切り捨てる様にする関数は =IF(ISNUMBER(A1),A1-IF(A1<50000,7500,ROUNDUP(A1*0.105,0)+200),"") 1円未満の端数を切り上げる様にする関数は =IF(ISNUMBER(A1),A1-IF(A1<50000,7500,INT(A1*0.105)+200),"") 1円未満の端数を四捨五入する様にする関数は =IF(ISNUMBER(A1),ROUND(A1-IF(A1<50000,7500,A1*0.105+200),0),"") になります。
その他の回答 (5)
- tom04
- ベストアンサー率49% (2537/5117)
こんばんは! 他の方々からの指摘があるようにちょうど50000円の場合はどちらに? それからもし7500円以下の場合はどうなるのでしょうか? 仮に6000円でも50000円以下となり7500円を引くとマイナスになってしまいますけど。 上記のコトを踏まえて・・・ こちらで勝手に50000以下の場合は15%引き 50000を超える場合は10.5%引きからさらに200円引きとすると A1セル以降にデータがある場合 B1セルに =IF(A1="","",IF(A1>50000,ROUND(A1*(1-0.105)-200,0),ROUND(A1*(1-0.15),0))) としてオートフィルではどうでしょうか? ※ この数式で50000円と55000円を比較した場合、50000円の方が55000円より割引額が多くなるので おそらくもう一つか二つは金額の区分があるのでは? 参考にならなかったら 無視してください。m(_ _)m
補足
すいません!50000円以上、、50000円未満、、の間違いでした!
- keithin
- ベストアンサー率66% (5278/7941)
=IF(A1="","",IF(A1>=50000,A1*89.5%-200,IF(A1>7500,A1-7500,A1))) みたいなカンジで計算します。
- maldives11
- ベストアンサー率62% (5/8)
50000以上、50000以下……? 50000以上、49999以下……? 正しくは?どちらですか? 単純に…=If(○≧50000,○-(○×0.105)-200,○-7500)とかでは?ダメですか? 今、パソコンが無い場所だから、正解かどうかわかりませんが、理屈で言うと…こんな感じでは? 間違ってたらスミマセン!!
補足
すいません!50000以上、49999以下です!
- miles3912
- ベストアンサー率65% (68/104)
一番シンプルな方法ですが…と云いますか、この程度しかわかりませんが参考になりましたらお試しください。 A1のセルに適宜金額を入力することとしまして… A2のセルに次の関数を入力しまして… =IF(A1>=50000,-ROUNDDOWN(A1*0.105+200),-7500) ※円未満切捨としてみました。 そうしますと、A2のセルに値引金額が返されると思います。 A3のセルに次の関数を入力すれば、値引き顔の金額が返されると思います。 =A1-A2 ところで…条件設定は「50,000円以上か50,000円以下」ではなくて、「50,000円以上か50,000円未満」又は「50,000円超か50,000円以下」の何れかですよね? ちなみに、上記の数式は「50,000円以上か50,000円未満」という設定になっています。 また、余計なお世話なんですが…求める金額が代金の値引金額だとしますと、50,000円以下の場合の方が50,000円以上より値引金額が多額になる場合があると思いますが、これは気にする必要はないんですよね?
- protector99
- ベストアンサー率33% (126/372)
=IF(A1>=50000,A1-(A1*0.105+200),A1-7500) それで50000円はどっちになるんでしょうか? この式だと10.5%と200円引きになります。 7500円引きにする場合は、「 A1>=50000 」 を 「 A1>50000 」にしてください。 ちなみにこれは、A1のセルに金額を入力した場合です。
補足
すいません!50000円以上、、と50000円未満でした!
お礼
ありがとうございました、=IF(ISNUMBER(A1),A1-IF(A1<50000,7500,A1*0.105+200),"") で完璧に計算してくれました。質問の数値は実際とは変更しています。実際は端数は出ませんでした。