- ベストアンサー
エクセルで上4桁だけ表示し、後ろを四捨五入する方法
エクセルで小数点の位置や桁が違う数値の上4桁だけ表示し、4桁以降は四捨五入して表記する方法を教えてください (例) 1000→1000 100 →100.0 10 →10.00 1 →1.000 0.1 →0.100 0.01 →0.010 0.001→0.001 0.3141→0.314 3.1415→3.141 31.415→31.41 314.15→314.2 3141.59→3142 (10000は入力しません。 また0.0001は0と表示されて欲しいです。)
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
>また0.0001は0と表示されて欲しいです。 を見落としていました。 3.1415→3.141 31.415→31.41 とありますが、この値の場合は 変換元の末尾の値を四捨五入することになるでしょうから 3.1415→3.142 31.415→31.42 になりませんでしょうか。 ならば、泥臭い関数となりますが =IF(A1>=1000,TEXT(A1,"0000"),IF(A1>=100,TEXT(A1,"000.0"),IF(A1>=10,TEXT(A1,"00.00"),IF(A1>=0.001,TEXT(A1,"0.000"),0)))) はいかがでしょうか。
その他の回答 (2)
- HohoPapa
- ベストアンサー率65% (455/693)
3.1415→3.141 31.415→31.41 とありますが、この値の場合は 変換元の末尾の値を四捨五入することになるでしょうから 3.1415→3.142 31.415→31.42 になりませんでしょうか。 ならば、泥臭い関数となりますが =IF(A1>=1000,TEXT(A1,"0000"),IF(A1>=100,TEXT(A1,"000.0"),IF(A1>=10,TEXT(A1,"00.00"),TEXT(A1,"0.000")))) はいかがでしょうか。
- SI299792
- ベストアンサー率47% (772/1616)
A1に数字があるとします。 有効桁数上4桁なら、 0.3141→0.3141 ではないのですか。 =IFERROR(ROUND(A1,INT(4-LOG(A1))),0) 頭の0も含めて上4桁なら =ROUND(A1,5-FIND(".",A1&".")) 負数は考慮していません。
お礼
天才です。