エクセル実践塾 > エクセル実践塾2007

存在しない桁の数字を表示したくない

 

 

 

 

 

 

 

 

 

 

対象となる数値の桁数をあらかじめ確認するようにすれば、存在しない桁の数字を非表示にできます

ROUNDDOWNとMODの関数を使うと、指定桁の数字を表示できます。

ただし、それだけでは存在しない桁では、0が表示されます。そこで、LEN関数であらかじめ数値の長さ(桁数)を確認し、その桁以上の数値であるときにだけ、求めた数字を表示できるようにします。

@LEN関数式を条件とするIF関数式に変更します。

たとえば、百万の桁の数字を表示するセルは、次のようなIF関数式にします。

=IF(LEN($D8)>=7,MOD(ROUNDDOWN($D8/1000000,0),10),"")

LEN関数を使うと、数値の長さがわかります。数値の長さはそのまま数値の桁数なので、それが百万の桁数である7以上かどうかを確認します。

IF関数式でそれを条件として、それが正しい場合にだけその桁の数字が表示されるようにします。誤りの場合には、「""」と指定して、何も表示しません。

A他の桁も同様のIF関数式にします。

異なるのは、桁数を表す数値だけです。(最初に割る数値は桁数によって異なります。)

十万の位 =IF(LEN($D8)>=6,MOD(ROUNDDOWN($D8/100000,0),10),"")
 万の位 =IF(LEN($D8)>=5,MOD(ROUNDDOWN($D8/10000,0),10),"")
 千の位 =IF(LEN($D8)>=4,MOD(ROUNDDOWN($D8/1000,0),10),"")
 百の位 =IF(LEN($D8)>=3,MOD(ROUNDDOWN($D8/100,0),10),"")
 十の位 =IF(LEN($D8)>=2,MOD(ROUNDDOWN($D8/10,0),10),"")
 一の位 =IF(LEN($D8)>=1,MOD(ROUNDDOWN($D8/1,0),10),"")