セルの値の先頭に0を埋めて桁揃えする - ゼロ埋めパディング

あずさ
質問:数値の先頭に0をつけて桁揃えしたい
Excelで "124" を "00124"、"68" を "00068" のように数値の先頭に0をつけて5桁で桁揃えしたいです。 簡単に数値の頭を"0"で埋めて、指定した桁数で桁揃えする方法はありますか?

概要

Excelで数値の頭に0をつけて桁を揃える、ゼロ埋め、ゼロパディングには、いくつかの方法があります。この記事では以下の方法を紹介します。

  • TEXT関数を利用する
  • REPT関数を利用する
  • カスタム書式設定を利用する


5桁で先頭を0埋めする最短手順
「124 → 00124」「68 → 00068」のように先頭に 0 を付けて桁揃えする方法は、目的別に次のどれかが最短です。

見た目だけ5桁にしたい(数値は数値のまま)
対象セルを選択 → 右クリック [セルの書式設定] → [表示形式] → [ユーザー定義] → 種類に 00000

結果を文字列として作りたい(関数で別セルに出力)
=TEXT(A1,"00000")
入力値に文字が混ざる可能性がある(例: AB12 など)
=REPT("0",5-LEN(A1))&A1
※桁数を変える場合は 00000 の 0 の個数(または式中の 5)を変えてください。

方法:TEXT関数を利用する

TEXT関数を利用して値を整形して0を埋めた文字列にする方法です。

書式

TEXT(整形する値, 整形フォーマット)

整形する値を整形フォーマットに適用して適用後の文字列を関数の戻り値として返します。C#,Visual BasicのFormat関数に近い機能の関数です。

手順1: 4桁の0埋め

Excelを起動し、下図の表を準備します。
セルの値の先頭に0を埋めて桁揃えする - ゼロ埋めパディング:画像1

C2セルに下記の数式を入力します。"0000"を与えることで4桁の数値で整形します。桁が足りない場合は0で埋められます。

=TEXT(B2,"0000")

セルの値の先頭に0を埋めて桁揃えする - ゼロ埋めパディング:画像2

C2セルに"0045"の値が表示されます。B2セルの数値の先頭桁を0で埋めて4桁に揃えた文字列がC2に表示されます。
セルの値の先頭に0を埋めて桁揃えする - ゼロ埋めパディング:画像3

C2セルをコピーし、数式をC3セル以下にペーストします。B列の数値を0埋めして4桁に桁揃えした文字列がC列に表示されます。
セルの値の先頭に0を埋めて桁揃えする - ゼロ埋めパディング:画像4

4桁で0埋めできました。

セルの値の先頭に0を埋めて桁揃えする - ゼロ埋めパディング:画像5

手順2: 7桁の0埋め

桁揃えする桁数を変える場合は、TEXT関数の第二引数の"0"の個数を変えます。
下図の例では、TEXT関数の第二引数に"0000000"を与えており、7桁で桁揃えします。
セルの値の先頭に0を埋めて桁揃えする - ゼロ埋めパディング:画像6

セルの値の先頭に0を埋めて桁揃えする - ゼロ埋めパディング:画像7
セルの値の先頭に0を埋めて桁揃えする - ゼロ埋めパディング:画像8
セルの値の先頭に0を埋めて桁揃えする - ゼロ埋めパディング:画像9

補足
なお、揃える桁数より、元の数値が大きい場合は数値全体がTEXT関数の結果になります。
セルの値の先頭に0を埋めて桁揃えする - ゼロ埋めパディング:画像10

方法: REPT関数を利用する

REPT関数を利用する方法があります。
REPT関数は第一引数で与えた文字列を指定した回数繰り返した文字列を返す関数です。

書式

REPT([繰り返す文字列], [回数])

[繰り返す文字列][回数]回繰り返した文字列を返す関数です。

手順

Excelを起動し、下図の表を準備します。
セルの値の先頭に0を埋めて桁揃えする - ゼロ埋めパディング:画像11

C2セルに次の数式を入力します。

=REPT("0",4-LEN(B2))&B2

セルの値の先頭に0を埋めて桁揃えする - ゼロ埋めパディング:画像12


数式を確定します。4桁で0埋めされた文字列が表示されます。
セルの値の先頭に0を埋めて桁揃えする - ゼロ埋めパディング:画像13

C2セルをコピーし、C3からC8セルにペーストします。
セルの値の先頭に0を埋めて桁揃えする - ゼロ埋めパディング:画像14

4桁で0埋めした文字列が作成できました。
セルの値の先頭に0を埋めて桁揃えする - ゼロ埋めパディング:画像15

数式の解説

=REPT("0",4-LEN(B2))&B2

REPT("0",4-LEN(B2)) は"0"の文字列を、4-LEN(B2)回繰り返した文字列を返します。ます。 LEN(B2) はB2セルの長さを返します。4-LEN(B2) は4-(B2セルの文字列長)となります。B2セルは2文字なので、4-2で2となり、"0"を2回繰り返し"00"となります。 &B2は文字列の結合の式となり、"00" & "38"(B2セルの値) となり "0038" がセルに表示されます。
4-LEN(B2)の"4"の部分を0埋めして揃えたい桁数を桁数に設定すれば、桁数を変えた0埋めもできます。

ワンポイント
入力される値が数値の場合は、TEXT関数を利用する方法、REPT関数を利用する方法、ユーザー定義の書式設定を利用する方法が利用できますが、 入力される値に文字が混ざっている数値でない値の場合は、REPT関数を利用する方法でないと意図した動作になりません。
セルの値の先頭に0を埋めて桁揃えする - ゼロ埋めパディング:画像16

方法: ユーザー定義の書式設定を利用する

ユーザー定義の書式設定を利用する方法です。

手順

Excelを起動し、下図の表を準備します。
セルの値の先頭に0を埋めて桁揃えする - ゼロ埋めパディング:画像17

B列を選択します。
セルの値の先頭に0を埋めて桁揃えする - ゼロ埋めパディング:画像18

右クリックしポップアップメニューを表示します。メニューの[セルの書式設定]の項目をクリックします。
セルの値の先頭に0を埋めて桁揃えする - ゼロ埋めパディング:画像19

セルの書式設定ダイアログが表示されます。[表示形式]のタブをクリックして選択します。 左側の[分類]のリストの[ユーザー定義]の項目をクリックして選択します。
セルの値の先頭に0を埋めて桁揃えする - ゼロ埋めパディング:画像20 セルの値の先頭に0を埋めて桁揃えする - ゼロ埋めパディング:画像21

右側のエリアの[種類]のテキストボックスに書式フォーマットを入力します。今回は6桁で0を埋めた桁揃えをすることにします。 以下の文字列を入力します。

000000

入力ができたら[OK]ボタンをクリックしてダイアログを閉じます。
セルの値の先頭に0を埋めて桁揃えする - ゼロ埋めパディング:画像22

Excelのメインウィンドウに戻るとB列の数値が整形できていることが確認できます。6桁で揃えられ、先頭は0で埋められています。
セルの値の先頭に0を埋めて桁揃えする - ゼロ埋めパディング:画像23

値を0で埋めて桁揃えできました。
セルの値の先頭に0を埋めて桁揃えする - ゼロ埋めパディング:画像24


AuthorPortraitAlt
著者
iPentec.com の代表。ハードウェア、サーバー投資、管理などを担当。
Office 365やデータベースの記事なども担当。
作成日: 2016-08-22
改訂日: 2023-12-22