[[20150128171309]] 『12桁以上の数字表示』(ちぃさん) ページの最後に飛ぶ

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

 

『12桁以上の数字表示』(ちぃさん)

お世話になります。

今回、12桁以上の数字をセルに表示したく質問にまいりました。
宜しくお願いいたします。

現在、指定しているセル範囲に数字以外の入力を避けるために データーの入力規則 で

入力値の種類(A)⇒少数点数
データー(D)⇒次の値の間
最小値(M)⇒0
最大値(X)⇒100000000000000

としています。
11桁以上の数字を入力
例えば 111111111111
とすると 1.11111+E11
となるので シングルクォート を先頭につけて
'111111111111
として表示させる方法があると思うのですが データーの入力規則 を設定しているためなのか シングルクォート を付け加える事ができません。

どのようにすれば現在の データーの入力規則 を設定している状態で12桁以上の数字をセルに表示できるのでしょうか。

可能でしたら教えて頂けないでしょうか。

どうか宜しくお願い致します。

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


 先頭に ' をつけるというくらいだから文字列でOKだとして、当該セルを文字列書式にしておいた上で
 入力規則をユーザー設定で =AND(ISNUMBER(VALUE(A1)),VALUE(A1)>=0,VALUE(A1)<=100000000000000)

 これでいかがでしょうか?

 A1 は、実際に入力規則を設定するセルにしてくださいね。

(β) 2015/01/28(水) 17:49


数字ならセルの書式設定を数値にする
(デイト) 2015/01/28(水) 17:52

 あっ、ほんとだ!

(β) 2015/01/28(水) 18:41


(β)さん、(デイト)さん 回答ありがとうございます。

今エクセルが手元にないのでご教授頂きました内容は試せれていませんので明日の朝に試させて下さい。

有難うございます。

すみません(汗)
私の説明に不足がありました。
>11桁以上の数字を入力 
この部分 小数点を入力する場合もございます。
説明不足とはいえ、あと出しとなり申し訳ございません。

ですので
>数字ならセルの書式設定を数値にする
では都合がわるい状態です。
申し訳ございません。
(ちぃさん) 2015/01/28(水) 19:57


連続投稿すみません。

もしかして
>書式設定を数値にする
って
入力値の種類(A)の整数とは別物でしょうか?(汗)
(ちぃさん) 2015/01/28(水) 20:04


 ↑セル書式のことですよ。

(β) 2015/01/28(水) 20:57


 整数の場合は小数点以下を表示せず、小数の場合も0でない桁数分だけ表示させたいということであれば条件付き書式で
 「数式を使用して、書式設定するセルを決定」で数式を
 =IF(INT(A1)<>A1,LEN(REPLACE(A1,1,FIND(".",A1),"")))=1
 で、書式設定の表示形式で「数値」の「小数点以下の桁数」を1、
 =IF(INT(A1)<>A1,LEN(REPLACE(A1,1,FIND(".",A1),"")))=2
 で、「小数点以下の桁数」を2、
 =IF(INT(A1)<>A1,LEN(REPLACE(A1,1,FIND(".",A1),"")))=3
 で、「小数点以下の桁数」を3…

 と小数点以下の桁数のあり得る分、条件付き書式で表示形式をを設定してはどうか?

 追記
 あらかじめセルの書式設定で表示形式を「数値」で「小数点以下の桁数」を0としておく。
(ねむねむ) 2015/01/29(木) 09:50

(β)さん ありがとうございます。
(デイト)さん の案理解しました。

セルの書式設定の事だったのですね。
たしかに書式設定と書いてます。
すみません。

ためしてみまして シングルクォート を付けずに12桁以上の入力できました。
少し調整できればと思う点があります。
1,16桁から後ろは入力した数字が 0 となるのは何故なのですか?
2,あたりまえですが書式設定を数値にして小数点以下の行数を 0 にすれば 1.1 と入力しても 1 小数点以下の行数を 1 とすれば 1 と入力しても 1.0 となります。これを入力したままの表示にはできないでしょうか?

(ねむねむ)さん 回答ありがとうございます。
試してみたのですが私が理解できていないみたいです。
セルの書式設定で 数値 小数点以下の表示は 0 としているのですが
1.12 としても 1 と表示されます。

ご教授いただいた式は条件付き書式の数式を使用して書式設定をするセルを決定 という項目で使えばいいのですよね?
> =IF(INT(A1)<>A1,LEN(REPLACE(A1,1,FIND(".",A1),"")))=1
の場合は
1.12 と入力すれば 1.1
> =IF(INT(A1)<>A1,LEN(REPLACE(A1,1,FIND(".",A1),"")))=2
の場合は
1.12 と入力すれば 1.12
となるのですよね?
間違っていますでしょうか?
(ちぃさん) 2015/01/29(木) 11:42


 1.
 Excelでは数値の有効桁数の最大は15。
 なので16桁目から後ろは0になる。
 それを防ぐためには表示形式を文字列にしないとならないため入力規則を変えないとならないだろう。

 私の案はセルの書式設定で「数値」「0」と整数の場合の設定をしておいてさらに条件付き書式で小数点以下の書式を設定する。

 条件付き書式の数式に
 =IF(INT(A1)<>A1,LEN(REPLACE(A1,1,FIND(".",A1),"")))=1 
 と設定して「書式」ボタンをクリック、表示形式タブで「数値」桁数を「1」とする。

 小数点以下の桁数が2以降も同じに。

 ただし、最初に書いたように有効桁数は15桁以内。

(ねむねむ) 2015/01/29(木) 11:53


(ねむねむ)さん 回答ありがとうございます。

理解しました。

ありがとうございました。
(ちぃさん) 2015/01/29(木) 12:02


コメント返信:

[ 一覧(最新更新順) ]


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