- 締切済み
エクセルの関数
以下のようなことをエクセルでやりたいのですが 何か関数はありませんか? 例:A×B=答え 上記の答えの 正数が二桁のとき、小数点第二位を四捨五入 正数が三桁のとき、少数点第一位を四捨五入 どなたか教えてください。お願いします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- shishishishi
- ベストアンサー率39% (362/921)
正数って負数に対する正数ですか? では負数の場合どうしますか? とりあえずは、A1セルの数値とB1セルの数値の積が100未満であれば少数2位を四捨五入して少数1位まで、そうでなければ少数1位を四捨五入します。 =IF(A1*B1<100,ROUND(A1*B1,1),ROUND(A1*B1,0))
答えがセルA1に入っているとして、 =IF((A1<10)+(A1>=1000),A1,ROUND(A1,IF(A1<100,3,2))) こんな感じになると思います。 整数部分が2桁、3桁以外の場合についてはしじがありませんでしたので、そのまま出力するようになっています。 なお、答えが負の数となる場合もあるのでしたら、 =IF((ABS(A1)<10)+(ABS(A1)>=1000),A1,ROUND(A1,IF(ABS(A1)<100,3,2))) としてください。
お礼
fuji2002さん さっそく試してみたのですが うまくいきませんでした(><) 私のやりかたがよくないのかしら? でも、御回答いただき、ありがとうございました。 感謝してます。
補足
回答ありがとうございます! 質問の仕方が悪くてすみません。 たとえば、624円×0.39=243.36 184円×0.39=71.76 答えの正数部243.36が三桁、92.04が二桁に なるわけですが、この三桁のときに第一位を四捨五入して 243に、二桁のときが第二位を四捨五入して71.8という数値にしたいのです。今回のは商品の単価を決定するための計算なので、負の数が答えになるということはありません。 宜しくお願いします。
お礼
どうもありがとうございました 感謝してます。