エクセルで数字の桁数を数えるには、LEN関数を使います。=LEN(A2) とすると、12345 は 5 桁と分かります。桁数を5桁などにそろえるときは、=TEXT(A6,"00000") で前に0を付けるか、表示形式を 00000 にします。
マイナスや小数があるときは数え方に注意が必要です。この記事では、桁数を数える・そろえる・減らす方法を、実際に試した結果の表で説明します。
桁数を数える・そろえる式の一覧

| やりたいこと | 式 | 数値 | 結果 |
|---|---|---|---|
| 桁数を数える | =LEN(A2) | 12345 | 5 |
| マイナスも1文字に数える | =LEN(A3) | -4560 | 5 |
| 数字だけの桁数(整数部分) | =LEN(ABS(INT(A4))) | -4560 | 4 |
| 小数点以下の桁数 | =LEN(A5)-FIND(“.”,A5) | 3.14159 | 5 |
| 5桁にそろえる(前に0) | =TEXT(A6,”00000″) | 987 | 00987 |
| 下4桁を切り捨てて桁を減らす | =ROUNDDOWN(A7,-4) | 1234567 | 1230000 |
| 7桁かどうか判定 | =LEN(A8)=7 | 42 | FALSE |
| 先頭から3桁を取り出す | =LEFT(A9,3) | 98765 | 987 |
桁数を数える(LEN関数)
LEN関数は、セルの値を文字として数えます。12345 なら 5 です。マイナスの -4560 は「-」も1文字に数えるので 5 になりました。数字だけの桁数がほしいときは、ABS関数で符号を取り、INT関数で小数を切り捨ててから数えます。
=LEN(ABS(INT(A4)))
結果は 4 です(LEN関数の使い方)。
小数点以下の桁数を数える
=LEN(A5)-FIND(".",A5)
全体の文字数から「.」の位置を引くと、小数点以下の桁数になります。3.14159 は全体が7文字、「.」が2文字目なので、7−2 で 5 です。整数のときは「.」がなくエラーになるので、=IFERROR(LEN(A5)-FIND(".",A5),0) とすると 0 になります。
桁数をそろえる(前に0を付ける)
方法は2つあります。式で文字にする方法と、表示形式で見た目をそろえる方法です。
TEXT関数で文字にする
=TEXT(A6,"00000")
987 が 00987 になります。結果は文字なので、ほかの文字とつなげる(「No.00987」など)ときに便利です。6桁以上の数値はそのまま表示されます(TEXT関数の使い方)。
表示形式で見た目だけそろえる


入力した時点で先頭の0を残したいとき(「00123」と入力して消える)は、先頭の0が消えるときの対処法を見てください。
桁数を減らす(切り捨て・四捨五入)
=ROUNDDOWN(A7,-4)
2つ目の引数をマイナスにすると、整数の下の桁を切り捨てます。1234567 は下4桁が 0 になって 1230000 です。四捨五入なら ROUND関数、小数の桁を減らすなら =ROUND(A5,2) のようにプラスの数を指定します(ROUNDDOWN関数の使い方)。
決まった桁数か判定する
=LEN(A8)=7
42 は 2 桁なので FALSE です。会員番号や郵便番号の桁数チェックに使えます。IF関数と組み合わせて =IF(LEN(A8)=7,"OK","桁数が違います") のように表示を変えられます。
うまくいかないときの確認表
| 症状 | 考えられる原因 | 対処 |
|---|---|---|
| 桁数が1つ多い | マイナスの「-」や小数点も数えている | ABS・INT関数で数字だけにしてから数える。 |
| 表示と桁数が合わない | LEN関数は表示形式ではなく元の値を数える | TEXT関数で表示どおりの文字にしてから数える。 |
| 0を付けたのに計算できない | TEXT関数の結果は文字 | 計算するなら表示形式の「00000」を使う。 |
| 16桁以上の番号の最後が0になる | エクセルの数値は15桁まで | 先頭に「’」を付けるか、セルを文字列にしてから入力する。 |
よくある質問
マイナスの数値の桁数が1つ多くなります。
LEN関数は「-」も1文字に数えるためです。試したところ、-4560 は 5 になりました。数字だけの桁数は =LEN(ABS(INT(A4))) で、結果は 4 です。
カンマ付きで表示している数値の桁数は?
LEN関数は表示形式ではなく元の値を数えます。1,234,567 と表示していても、結果は 7 でした。
16桁以上の番号を入れると、最後が0になります。
エクセルの数値は15桁までしか正確に持てないためです。カード番号などは、先頭に「’」を付けるか、セルの表示形式を文字列にしてから入力します。

コメント