Excelで「001」が「1」になる!先頭ゼロを消さない4つの方法
社員番号や郵便番号を入力したら、先頭のゼロが消えてしまいます。「001」が「1」になってしまうのは、数値として入力したデータから先頭ゼロをExcelが自動で削除する仕様が原因です。
本記事では、Microsoft公式ドキュメントをもとに、先頭ゼロを保持する4つの方法を解説します。
なぜ先頭ゼロが消えるのか
Excelは数値セルに入力されたデータを「数値」として扱うため、数値としては意味のない先頭ゼロを取り除きます。「001」も「1」も数値として同じ値だからです。
対策は大きく2方向あります。
- 表示だけを変える:実際のデータは数値のまま、見た目だけゼロを足す(方法1・4)
- 文字列として保存する:最初からテキストとして扱い、ゼロを実データとして保持する(方法2・3)
どちらを選ぶかはデータの用途によります。計算に使うなら表示変更、そのままコピーや連携に使うなら文字列保存が適しています。
方法1:書式設定のユーザー定義(表示を変える)
セルの書式設定で独自のフォーマットを設定し、表示上だけゼロを補う方法です。
① 対象セルを選択し、Ctrl+1 でセルの書式設定を開く
右クリック→「セルの書式設定」でも同じです。
② 「表示形式」タブ→「ユーザー定義」を選ぶ
③ 「種類」に表示したい桁数分の「0」を入力する
- 3桁(001〜999)にしたい場合:“000”
- 5桁の郵便番号(〒形式):“00000”
- 電話番号(例:03-1234-5678):“000-0000-0000”
④ OKをクリックする
注意:この方法は「書式を設定した後に入力する数値」に有効です。すでに入力済みで先頭ゼロが消えているデータには補完されません。また16桁以上のコードには文字列形式が必要です(参考:Microsoft サポート)。
方法2:アポストロフィで入力(文字列として保存)
数値の前にアポストロフィ(”’“)を入れて入力する方法です。
① セルに “‘001” のようにアポストロフィを先頭につけて入力する
セル上ではアポストロフィは表示されず、“001” とだけ表示されます。
この方法はすぐ使えて手軽ですが、入力のたびに ”’” を打つ必要があります。大量データには向きません。
方法3:入力前にセルを「文字列」書式に設定(文字列として保存)
先にセルを文字列形式にしておき、以降に入力する数値をすべてテキストとして扱わせる方法です。
① 入力予定のセル範囲を選択する
② Ctrl+1 でセルの書式設定を開く
③「表示形式」タブ→「文字列」を選んでOKをクリックする
④ その後セルに数値を入力する
先頭ゼロがそのまま保持されます。
注意:この設定も「書式設定した後に入力するデータ」にのみ有効です。すでに入力済みのセルに後から文字列書式を適用しても、消えた先頭ゼロは戻りません(参考:Microsoft サポート)。
方法4:TEXT関数で変換(数式で表示を変える)
すでに入力済みの数値データに先頭ゼロを補いたい場合、TEXT関数が有効です。
書式:
=TEXT(参照セル, "フォーマット")
例:A1に入力された数値を3桁表示にする場合
=TEXT(A1, "000")
A1が “1” なら “001”、A1が “12” なら “012” と表示されます。
元データ(A1)はそのままで、変換後の表示が別セルに出力されます。元データを直接変換したい場合は、出力列をコピーして「値として貼り付け」で元の列に上書きします。
TEXT関数はMicrosoft公式でも紹介されている方法です(参考:TEXT関数 | Microsoft サポート)。
どの方法を使うか
| 状況 | 向いている方法 |
|---|---|
| これから入力するデータに適用したい | 方法1(ユーザー定義)または方法3(文字列書式) |
| 1つ2つだけ手軽に入力したい | 方法2(アポストロフィ) |
| すでに入力済みの数値を変換したい | 方法4(TEXT関数) |
| 計算にも使いたい(数値のまま扱いたい) | 方法1(ユーザー定義) |
| コードをそのままコピー・連携したい | 方法2・3(文字列として保存) |
方法1と4は「数値に見た目のゼロを足す」だけなので、SUM等の計算には引き続き使えます。方法2・3は文字列になるため、計算には使えなくなる点に注意してください。
Excelのセル操作ついでに セル結合の代替「選択範囲内で中央」 もあわせてどうぞ。