数値の桁数を求める手順を紹介します。
値が整数の場合は常用対数を利用します。
=FLOOR.MATH(LOG10([判定したい値])+1)
下図の表を作成します。
| 値 | 桁数 |
|---|---|
| 6 | |
| 251 | |
| 1380 | |
| 2230 | |
| 14 | |
| 869201 |
C3セルに以下の数式を入力します。B3セルの値の自然対数に1を足して、小数部分を切り捨てる式です。
=FLOOR.MATH(LOG10(B3)+1)
数式を確定すると、桁数が表示されます。
C3セルをコピーし、C列の他のセルにペーストします。B列の数値の桁数がC列に表示できました。
なお、値が0以下の場合はエラー #NUM! になるため、0以下の値がある場合は、条件判定の必要があります。
値が小数の場合は、小数部分を文字列で判定します。
=LEN([判定したい値])-FIND(".", [判定したい値])
文字列全体の長さから左から小数点の位置までの長さを引くことで、小数点以下の桁数を求めます。
下図の表を作成します。
| 値 | 桁数 |
|---|---|
| 0.25 | |
| 0.12841 | |
| 0.6 | |
| 0.128976 | |
| 0.246 | |
| 0 |
C3セルに次の数式を入力します。
=LEN(B3)-FIND(".",B3)
C3セルにB2セルの値の小数点以下の桁数が表示されました。
C3セルをコピーしC列の他のセルにペーストします。B列の値の小数点以下の桁数が表示できました。
なお、0の場合はエラー #VALUE! となるため、値に0が含まれる場合は条件判定が必要です。
#VALUE!になった場合は0を表示する場合は以下の数式を利用します。
=IF(ISERROR(FIND(".",B3)), 0, LEN(B3)-FIND(".",B3))