• 締切済み

エクセルの関数

以下のようなことをエクセルでやりたいのですが 何か関数はありませんか? 例:A×B=答え 上記の答えの 正数が二桁のとき、小数点第二位を四捨五入 正数が三桁のとき、少数点第一位を四捨五入 どなたか教えてください。お願いします。

みんなの回答

回答No.2

正数って負数に対する正数ですか? では負数の場合どうしますか? とりあえずは、A1セルの数値とB1セルの数値の積が100未満であれば少数2位を四捨五入して少数1位まで、そうでなければ少数1位を四捨五入します。 =IF(A1*B1<100,ROUND(A1*B1,1),ROUND(A1*B1,0))

mareecat2004
質問者

お礼

どうもありがとうございました 感謝してます。

noname#148473
noname#148473
回答No.1

答えがセル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))) としてください。

mareecat2004
質問者

お礼

fuji2002さん さっそく試してみたのですが うまくいきませんでした(><) 私のやりかたがよくないのかしら? でも、御回答いただき、ありがとうございました。 感謝してます。

mareecat2004
質問者

補足

回答ありがとうございます! 質問の仕方が悪くてすみません。 たとえば、624円×0.39=243.36            184円×0.39=71.76 答えの正数部243.36が三桁、92.04が二桁に なるわけですが、この三桁のときに第一位を四捨五入して 243に、二桁のときが第二位を四捨五入して71.8という数値にしたいのです。今回のは商品の単価を決定するための計算なので、負の数が答えになるということはありません。 宜しくお願いします。

関連するQ&A