[[20150618104113]] 『小数点桁数制限について』(mon) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『小数点桁数制限について』(mon)

お世話になります。
セルに数値を入力する際に、小数点第3桁までしか入力出来ないようにしたいのです。表示を小数点第三桁にする方法などは、解ったのですが、表示のみで、実際は入力することが出来てしまい、おまけに小数点第四桁目を四捨五入して表示してしまいます。入力する文字を小数点第三桁に制限したいのですが、どのように設定すればよろしいでしょうか?
よろしくお願いします。

< 使用 Excel:Excel2013、使用 OS:Windows8 >


 データ-データツール-データの入力規則で「入力値の種類」に「ユーザー設定」、「数式」に
 =LEN(REPLACE(A1,1,FIND(".",A1&"."),""))<4
 としてはどうだろうか?

 追記
 入力規則ダイアログのエラーメッセージタブでエラーメッセージを「小数点以下が4ケタ以上あります」などと、
 入力時メッセージを「小数点以下は3桁までです」などとすると操作者にわかりやすいかもしれない。
(ねむねむ) 2015/06/18(木) 11:50

ねむねむ様
ご丁寧にありがとうございます。
出来ました。
本当に、ありがとうございます。
ご親切に、すみません。
あと、あつかましいのですが、A1からB4とか複数のセルに一度に適用出来る方法は、ありますでしょうか?
よろしくお願いします。
(mon) 2015/06/18(木) 12:02

 設定したいセル範囲を選択してから設定してみてくれ。
 この時セル番地は選択開始したセルの番地にしてくれ。

 A1セルから選択開始してB4セルまで選択、入力規則で
 =LEN(REPLACE(A1,1,FIND(".",A1&"."),""))<4
 と設定。

 これでB1セルには
 =LEN(REPLACE(B1,1,FIND(".",B1&"."),""))<4
 と各セルに対応した設定がなされる。
(ねむねむ) 2015/06/18(木) 12:23

ねむねむ様
何度もありがとうございました!

(mon) 2015/06/18(木) 12:50


解決したところですが・・・

=MOD(A1*1000,1)=0
でもうまくいくでしょうか。
(藻琴) 2015/06/18(木) 19:43


 例えばA1が1.001だと
 =MOD(A1*1000,1)
 の結果が1となる。

 何も設定していないセルに
 =MOD(A1*1000,1)
 と入力すると表示は「1」、ここでセルの書式設定で表示形式を数値、小数点以下の桁数を13にすると
 0.9999999999999 
 小数点以下の桁数を15にすると
 0.999999999999886 
 となる。
 (これ以上桁数を増やした場合は0.999999999999886の後ろに0が続く)

 これはたぶん小数点誤差だろう。
 (これがありそうだったので文字列操作で求める方法にした)
 下記を参考に。

http://pc.nikkeibp.co.jp/pc21/special/gosa/index.shtml

(ねむねむ) 2015/06/19(金) 09:26


 ※具合わるい案だったのでやめました。
  
(GobGob) 

 板汚しスンマセン案。

 =A1=TEXT(A1,"0.000;-0.000;0")*1
 =A1=ROUND(A1,3)
 
(GobGob) 2015/06/19(金) 10:09

なるほど。よくわかりました。
ありがとうございます。

(藻琴) 2015/06/19(金) 10:29


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.