プロが教えるわが家の防犯対策術!

excelで普通に四捨五入をするとなると
「ROUND」などで小数点以下の桁数を指定しますよね。
そうではなく、有効桁数3桁で四捨五入…例えば、
0.1234ならば0.123
1.234ならば1.23
12.34ならば12.3
123.4ならば123…のように
数字を四捨五入させる関数(?)はあるのでしょうか。

A 回答 (5件)

常用対数関数LOGを使えばできます。



例えばこんな具合。
=ROUND(A1,-INT(LOG(A1))-1 + 3)
これを使えば、質問の通りの答になります。

有効桁数を変えたい場合は、3の数値を変えてください。
    • good
    • 6
この回答へのお礼

ありがとうございます。早速教えていただいた関数を利用して表を作ってみました。まさに私の求めていたのはコレです(笑)!!本当にありがとう御座いました。

お礼日時:2005/04/22 17:00

#4さん


 補正しても、
 0.01234
 0.001234
などには使えませんよ^^;
    • good
    • 0
この回答へのお礼

ご指摘ありがとう御座いました。間違えずにすみました。

お礼日時:2005/04/22 17:07

ANo.3です。


済みません、1以上ならANo.3の式でいけそうですが、
1以下の場合は0.123の0も桁数に入れてしまうようです。

で、補正値をいれて、

=ROUND(A1,3-LEN(INT(A1))+(A1<1))
    • good
    • 0
この回答へのお礼

ありがとうございました。
残念ながらNo.5の方のおっしゃるように、0.0...だとちょっと違ってきてしまうようで…私の求めていた物とはちょっと違ったようです。でも、参考になりました。ありがとうございます。

お礼日時:2005/04/22 17:05

この式で、どうでしょうか?



=ROUND(A1,3-LEN(INT(A1)))

A1セルの数字を有効数字3桁で四捨五入します。
    • good
    • 1

=VALUE(TEXT(A1,"0.00E+00"))



で如何ですか。
    • good
    • 1
この回答へのお礼

ありがとうございます。こちらもまさに!です。あ~、こちらで作ったほうが数式がシンプルになったかもしれない…。でも、参考になりました。ありがとうございます!

お礼日時:2005/04/22 17:03

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています