オーロラさんの勉強帳

IT企業勤務。データベース、Excel、Excel VBA、ネットワーク、LinuxなどIT関連のことを主に書いていきます。少しでもお役に立てたら幸いです。

【Excel】左側を0で埋めて固定長データを作成する方法 (先頭に0を追加して桁を合わせる)

本記事では、データの左側を0で埋めて固定長のデータを作成する方法を紹介します。
社員コード、部門コードなどのように決まった桁数のコードで、先頭を0で埋めたいときに活用できます。

REPT関数とLENB関数を使用して、データの左側を0で埋める方法

以下画像では、A列の元データを、B列でREPT関数、LENB関数を使用して5桁の固定長データに変換しています。桁が足りない場合は先頭を0で埋めています。

REPT関数・LENB関数で0埋めして桁数を合わせる

B2セルの数式は以下の通りです。
=REPT(0,5-LENB(A2))&A2
「A2」を対象データがのセル、 「5」の部分を任意の桁数に変更して活用できます。

B3セルの数式は以下の通りです。
=REPT(0,5-LENB(A3))&A3

関数の解説

B2セルの数式をもとに、REPT関数、LENB関数を紹介します。

5-LENB(A2)
LENB(A2)は、A2セルの半角文字数(バイト数)を返します。
5桁からA2セルの文字数(1)をマイナスしています。
この例では4を返します。

REPT(0,5-LENB(A2))
REPT(0,5-LENB(A2))部分では、5-LENB(A2)で取得した数だけ「0」を返します。
この例では4つ0を返します。
A2セルのデータで、5桁に足りない桁数分だけ0を返しています。

=REPT(0,5-LENB(A2))&A2
最後に「&A2」で、A2のデータを末尾に追加しています。
「00001」を返します。

REPT関数とLENB関数の紹介

REPT関数の書式

=REPT(文字列,繰り返す回数)
引数の文字列を、指定した繰り返す回数だけ分だけ返します。

LENB関数の書式

LENB(文字列)
引数に指定した文字列のバイト数を返します。
全角1文字は2バイト、半角1文字は1バイトを返します。

以上、お読みいただきありがとうございました。