[[20160206144024]] 『12桁の数字が教示されない。』(やま) ページの最後に飛ぶ

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

 

『12桁の数字が教示されない。』(やま)

 ◎ Excelでは、確か数値の有効15桁までと認識していますが。
     12345678901 ← これが限界?

 	数字の入力で、下記のエラーが出ました。			

	少数第2位目の数字 (2) が消されてしまう。			

 A	数式バーには		425714869.12 	セルの書式設定を「数値」にして「少数第2位」にして、表示させています。

 B	セルの表示結果		425714869.1	セルの書式設定「標準」です。

 計算の結果を「判定」している作業なので、どこのセルに当該のような事が起き
 るか予知できない。			

 小数点を加えた桁数は 12桁 までです。 A・B 共に「判定」では、◎に は
 なるのですが、解答を印刷ではミスが判明します。	

 ◎ 何か良い手立てがありますでしょうか? お願いします。

< 使用 Excel:Excel2010、使用 OS:Windows10 >


 表示形式が標準の場合、数値が12ケタ以上の場合は指数表示になるようだ。

 で、少数がある場合で整数部が12ケタにならない場合は指数表示ではなく少数のほうを丸めて表示しているようだ。
 (桁数のほう、細かく調べたわけではないので不正確かもしれない)

 ただし、
 >数値の有効15桁
 との違いは15ケタのほうは数値そのものが丸められるのに対して今回の件は表示が省略されるが値そのものは元のまま。

 回避方法は表示形式を文字列にする(値も文字列になってしまう)、表示形式を数値にする(小数点以下の桁数が固定になる)、
 条件付き書式で小数点以下の桁数に合わせて表示形式を変更する、VBAで桁数に合わせて表示形式を変更する。
 あたりか。

 名前をこっそり修正
(ねむねむ) 2016/02/06(土) 16:37

 (ねむねみ) 2016/02/06(土) 16:37 さん:

 ◎ ありがとうございます。

 最初の二つの方法は、ご教示の通りでつかえませんね。

 >条件付き書式で小数点以下の桁数に合わせて表示形式を変更する

 ここでの「設定方法」を ご教示頂けますでしょうか。 お願いします。

(やま) 2016/02/06(土) 17:02


 まずセルの表示形式で「数値」で小数点以下0としておく。

 条件付き書式では「数式を使用して書式設定するセルを決定」で
 =LEN(REPLACE(C1,1,FIND(".",C1),""))=1
 で、表示形式を数値の小数点以下の桁数を1

 =LEN(REPLACE(C1,1,FIND(".",C1),""))=2
 で、表示形式を数値の小数点以下の桁数を2
      …
 と設定、でどうか。
 なまえをこっそり修正
(ねむねむ) 2016/02/06(土) 18:02

理解が追いつかないので教えてください。

(1)
>数字の入力で、下記のエラーが出ました。
なんというエラーだったのでしょうか。

(2)
>A・B共に「判定」では、◎にはなるのですが、
>解答を印刷ではミスが判明します。

「判定」とはどんな基準なのでしょうか。
また、
>解答を印刷ではミスが判明します。
とはどのような意味でしょうか。
印刷結果が関係してくるのですか?

(3)
数値、小数点以下二桁表示で統一しては何か不都合があるのでしょうか。

(γ) 2016/02/06(土) 18:52


 (ねむねみ) 2016/02/06(土) 18:02 さん:

 ◎ ありがとうございます。 基本的な事ですが、「C1」は「固定」でしょうか? 
    現在は、セル範囲を(G6:G15)をドラッグしてからの操作中です。
  二つの「設定」をするのですよね。

 二つ目の「条件付き書式」の設定で「入力した数式は、正しくありません。」のエラーメッセージです。
 
 =LEN(REPLACE(C1,1,FIND(".",C1),""))=1   ← 「書式ル0ー編集」をコピペ

 以上 よろしくお願いします。
(やま) 2016/02/06(土) 19:17


 ねむねみ) 2016/02/06(土) 18:02 さん:

◎ 追記です。 二つ目に「...」まで入力してしまいました。 失礼しました。
   で、その書式は「認識」されました。
 しかし、結局 10行の入力範囲には「0.013」 とか「12.315」までが
 「0.01」とか 「12.31」になってしまいます。 説明が不十分で申し訳ありません。
  VBAでしょうか? よろしくお願いします。

 
(やま) 2016/02/06(土) 19:32


 >基本的な事ですが、「C1」は「固定」でしょうか? 
 >現在は、セル範囲を(G6:G15)をドラッグしてからの操作中です。
 説明不足だった。
 選択開始したセル番地を指定してくれ。

 今回はG6セルから選択開始したとして
 =LEN(REPLACE(G6,1,FIND(".",G61),""))=1
 で。
 >二つの「設定」をするのですよね。
 これは小数点以下二桁までしかないのであればそう。

 三桁もある場合は三つ目に条件を設定して
 =LEN(REPLACE(G6,1,FIND(".",G61),""))=3
 に。

 ありうる桁数分、条件付き書式を設定する。
(ねむねむ) 2016/02/06(土) 19:41

私は質問者のされたいことが明示的に表現されていないように感ずる。
人の発言を無視するのもいかがなものかと思うね。
私はこれで失礼する。
(γ) 2016/02/06(土) 20:02

 (ねむねむ) 2016/02/06(土) 19:41 さん:

 ◎ 何度もお手数をかけ恐縮ですが、もう1件、支障がでますので、よろしくお願いします。

 少数点以下は、3桁 までなので、3つの書式を設定しました。

 ただ、 2.5 = 2.500 表示となり、「判定」は「×」にしなければなりません。
 そこで、「小数点以下は、末尾の「0」を表示させない方法はないでしょうか? お願いします。

(やま) 2016/02/06(土) 20:35


 どのような設定をしたのか?

 =LEN(REPLACE(G6,1,FIND(".",G61),""))=1
 表示形式を小数点以下一桁

 =LEN(REPLACE(G6,1,FIND(".",G61),""))=2
 表示形式を小数点以下二桁

 =LEN(REPLACE(G6,1,FIND(".",G61),""))=3
 表示形式を小数点以下三桁

 それでもうまくいかない場合は隣のセルにでも
 =REPLACE(G6,1,FIND(".",G61),"")
 と入力して小数点以下の数値がどうなっているか確認してみてくれ。
(ねむねむ) 2016/02/08(月) 09:06

 (ねむねむ) 2016/02/08(月) 09:06 さん:

 ◎ 何度もお手数をかけますが、よろしくお願いします。

  入力したデータ 表示されたデータ 判定
G6 =LEN(REPLACE(G6,1<FIND(".".G6),"") 2.5 2.500 ×
G7 225908732.02 225908732.02 ◎
G8 15.2 15.200 ×

	◎ G7 行については、今回の質問に対してクリアされております。						
					結果		
I6	'=REPLACE(G6,1,FIND(".",G6),"")				5	I6を下へコピーしました。	
I7	'=REPLACE(G7,1,FIND(".",G7),"")				0.2		
I8	'=REPLACE(G8,1,FIND(".",G8),"")				2		

◎ G6セル=書式設定と少数以下の設定を「3種類)しましたが、G6:G15 の間に認識させるのは? 現状は、G6 セル での設定だけです。

(やま) 2016/02/08(月) 11:01


 (ねむねむ) 2016/02/08(月) 09:06 さん:

 ◎ 追記
  適用先での「範囲設定を」していませんでした。その 右側の「レ点」は、3行とも 入っていました。

(やま) 2016/02/08(月) 11:09


 とりあえず。
 >G6セル=書式設定と少数以下の設定を「3種類)しましたが、G6:G15 の間に認識させるのは? 現状は、G6 セル での設定だけです。

 G6セルからG15セルを選択して(G6セルから選択開始)して

 >=LEN(REPLACE(G6,1,FIND(".",G6),""))=1
 >表示形式を小数点以下一桁

 >=LEN(REPLACE(G6,1,FIND(".",G6),""))=2
 >表示形式を小数点以下二桁

 >=LEN(REPLACE(G6,1,FIND(".",G6),""))=3
 >表示形式を小数点以下三桁

 と設定する。
 (前回の書き込みは「G6」が「G61」になっていた。すまない)

 条件付き書式の条件はセルに式を入れてフィルコピーしたときのように変化するのでこれでG7セルではG7、G8セルではG8…と参照するセルが変化してくれる。

 で、
 > =REPLACE(G6,1,FIND(".",G61),"")
 の結果だが本当にそのような結果なのだろうか?

 式は数値の小数点までを消して小数点以下の数値だけを抜き出すものなのだが。
 脚気として「0.2」が出てくるとは思えない。

 また、I6で「5」となっているのに小数点以下3桁目まで表示されるというのは条件付き書式で表示形式の設定が正しきないのではないか?

 各条件でどのような表示形式になっているかを書きだしてくれ。

 あと、複数の条件を同時に満たすことはないので「条件を満たす場合は停止」のチェックはあってもなくてもどちらでも構わない。

(ねむねむ) 2016/02/08(月) 11:22


 あとセルに

 =LEN(REPLACE(G6,1,FIND(".",G61),""))
 と入力してなんと表示されるかも試してみてくれ。
(ねむねむ) 2016/02/08(月) 11:27

 (ねむねむ) 2016/02/08(月) 11:22 さん;

 ◎ 何度もありがとうございました。 解決いたしました。感謝です!

 入力したデータ	表示されたデータ	判定	結果
   2.5	      2.5	       ◎       5
 225908732.02 	225908732.02   ◎	0.2
  15.2	      15.2	       ◎       2

 ◎ 条件付き書式の設定で、勘違いをしていました。設定後の「小数点以下」を「書式」 から設定せずに
 セルを右クリックー書式設定からにしていました。基本的なミスのために、余計な時間を 取らせてしまいましことをお詫びします。
 >あとセルに・・・ 報告を省略させていただき、参考にさせていただきます。

(やま) 2016/02/08(月) 11:50


やまさん
これは何かの問題でしょうか、そろばん?電卓?
コンマが無いから違うかな?
興味があります

(ぶらっと) 2016/02/08(月) 19:30


コメント返信:

[ 一覧(最新更新順) ]


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