Excelで数値の頭に0をつけて桁を揃える、ゼロ埋め、ゼロパディングには、いくつかの方法があります。この記事では以下の方法を紹介します。
TEXT関数を利用して値を整形して0を埋めた文字列にする方法です。
整形する値を整形フォーマットに適用して適用後の文字列を関数の戻り値として返します。C#,Visual BasicのFormat関数に近い機能の関数です。
Excelを起動し、下図の表を準備します。
C2セルに下記の数式を入力します。"0000"を与えることで4桁の数値で整形します。桁が足りない場合は0で埋められます。
=TEXT(B2,"0000")
C2セルに"0045"の値が表示されます。B2セルの数値の先頭桁を0で埋めて4桁に揃えた文字列がC2に表示されます。
C2セルをコピーし、数式をC3セル以下にペーストします。B列の数値を0埋めして4桁に桁揃えした文字列がC列に表示されます。
4桁で0埋めできました。
桁揃えする桁数を変える場合は、TEXT関数の第二引数の"0"の個数を変えます。
下図の例では、TEXT関数の第二引数に"0000000"を与えており、7桁で桁揃えします。
REPT関数を利用する方法があります。
REPT関数は第一引数で与えた文字列を指定した回数繰り返した文字列を返す関数です。
[繰り返す文字列]
を[回数]
回繰り返した文字列を返す関数です。
Excelを起動し、下図の表を準備します。
C2セルに次の数式を入力します。
=REPT("0",4-LEN(B2))&B2
数式を確定します。4桁で0埋めされた文字列が表示されます。
C2セルをコピーし、C3からC8セルにペーストします。
4桁で0埋めした文字列が作成できました。
=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埋めもできます。
ユーザー定義の書式設定を利用する方法です。
Excelを起動し、下図の表を準備します。
B列を選択します。
右クリックしポップアップメニューを表示します。メニューの[セルの書式設定]の項目をクリックします。
セルの書式設定ダイアログが表示されます。[表示形式]のタブをクリックして選択します。
左側の[分類]のリストの[ユーザー定義]の項目をクリックして選択します。
右側のエリアの[種類]のテキストボックスに書式フォーマットを入力します。今回は6桁で0を埋めた桁揃えをすることにします。
以下の文字列を入力します。
000000
入力ができたら[OK]ボタンをクリックしてダイアログを閉じます。
Excelのメインウィンドウに戻るとB列の数値が整形できていることが確認できます。6桁で揃えられ、先頭は0で埋められています。
値を0で埋めて桁揃えできました。
五月の夕暮れ。ダイニングの窓から金色の光が差し込み、こげ茶のテーブルを柔らかく照らしている。
食器棚のガラスに反射した夕陽がキラキラと瞬き、炊きたてご飯の湯気と味噌汁の香りが部屋いっぱいに広がっていた。
テーブルの端ではノート PC を開いたあずさが眉間にしわを寄せ、Excel のセルとにらめっこしている。
向かいには妹のみなが湯呑み茶碗を回しながら、その様子を興味津々で眺めていた。
「ねえお姉ちゃん、さっきから数字ばっかり眺めて溜め息ついてるけど、何してるの?」
「取引先に提出する在庫リストのコードを揃えてるの。桁数バラバラだと ‘システムが認識しません’
って冷たくはじかれるから、先頭に0を埋めて6桁に統一しなきゃいけないんだけど……入力数が多くて大変」
「0を埋める? どうやって? 一個ずつ手で打つの?」
「いやいや、Excel にはちゃんと便利ワザがあるのよ。たとえば A2 に‘123’って入ってるときは、隣のセルに
=TEXT(A2, "000000")