[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『有効数字の桁数について』(エクマル)
ある計算結果の数字を、有効数字の桁数を指定する方法を教えてください。
(例えば、有効数字を3桁とすると、0.00111・・・ 0.111・・・
1.11・・・となるように)
A1セルに 0.012345 とあるとすると =INT(A1*10^(2-INT(LOG(A1,10))))/10^(2-INT(LOG(A1,10))) で 0.0123 が返ります。A1を「ある計算」に置き換えてみて下さい。 (純丸)(o^-')b
昨夜気が付きましたがマイナスだとエラーになるので、下記のように 訂正します。但し 0 はエラーになります。 (純丸)(o^-')b =INT(ABS(A1)*10^(2-INT(LOG(ABS(A1),10))))/10^(2-INT(LOG(ABS(A1),10)))*A1/ABS(A1)
=--TEXT(A1,"0.00E-0")というのは、どうでしょう?4桁目で四捨五入されます。 (LOOKUP)
さすが LOOKUPさん、こんな簡単に出来るんですね。感心するばかりです。 自分のは取消したいところですが、取り合えず4ケタ目切捨ての場合に 使えそうなので置いときます。 (純丸)(o^-')b
こちらに統合しました。 (kazu)
=--TEXT(A1,"0.00E-0")⇒この方法で概ね解決なのですが、
例えば、以下のような場合の有効数字が3桁にしたい場合、
0.1299⇒0.13 さらに0.130にしたい
12.999⇒13 さらに13.0にしたい 四捨五入時に三桁目が0になる場合0を表示する方法はないでしょうか。 分かりにくい質問ですが、よろしくお願い致します。
数値では、お望みの結果がすでに出ています。表示は、セルの表示形式か、 ←.0 .00 のアイコンを利用し、個別に変更することになるように思います。
文字列で表示させるものは、このようにされたらどうでしょう?
=--TEXT(A1,"0.00E-0") &REPT(".",LEN(ABS(--TEXT(A1,"0.00E-0")))<3) &REPT(0,MAX(,3-LEN(ABS(SUBSTITUTE(--TEXT(A1,"0.00E-0"),".",)))))
A B 0.1299 0.130 12.999 13.0 0.0001235 0.000124 0.001235 0.00124 0.01235 0.0124 0.1235 0.124 1.235 1.24 0.01 0.0100 0.012 0.0120 0.00123 0.00123 0 0.00 1 1.00 10 10.0 100 100 -0.0001235 -0.000124 -0.001235 -0.00124 -0.1235 -0.124 -1.235 -1.24 -1 -1.00 (LOOKUP)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.