Excelで郵便番号の先頭0が消えるのはなぜ?7桁のまま扱う方法を解説

Excelに「0600001」などの郵便番号を入力すると、先頭の0が消えることがあります。文字列として保持する方法、見た目だけ7桁にする方法、CSVから取り込む際の注意点を実画面で解説します。

Excelに「0600001」と入力したはずなのに、「600001」になってしまった。郵便番号をExcelやCSVで扱っていると、このようなことがあります。数字だけのデータを数値として解釈すると、先頭の0が表示されなくなる場合があるためです。

対策には、文字列として保持する、表示だけ7桁にする、別列で7桁の文字列を作る、CSVを文字列として取り込む、といった方法があります。これらは同じ意味ではありません。

Excelで郵便番号の先頭0が消える流れと修正を示す図解
「7桁に見える」ことと「7桁の文字列として保持されている」ことを分けて考えます。

なぜ郵便番号の先頭0が消える?

Excelでは、先頭0を含む数字データを数値として扱うと、先頭の0が表示されなくなる場合があります。セル形式、入力方法、Excelのバージョン、自動データ変換設定、CSVの取込方法によって動作は変わります。

Excelで郵便番号0600001の先頭0が消えた実画面
標準形式のセルに入力した架空の郵便番号は、数値として表示されています。

基本は入力前に「文字列」として設定する

新規入力や貼り付けの前に、郵便番号列を選択して Ctrl + 1 → セルの書式設定 → 表示形式 → 文字列 と設定すると、先頭0を含む値を文字列として扱えます。すでに600001へ変換されたセルを後から文字列形式へ変えても、失われた0が自動復元されるわけではありません。

Excelで郵便番号列を文字列形式にして先頭0を保持する画面
文字列形式のセルでは、0600001をそのまま保持できます。

少量の入力ならアポストロフィを使う方法もある

少数の手入力では、値の前にアポストロフィを付けて '0600001 と入力し、文字列として扱う方法もあります。大量データへ1件ずつ入力する用途には向きません。

新しいExcelでは「自動データ変換」を変更できる場合もある

Microsoft 365およびExcel 2024には、自動データ変換の設定で先頭0を削除して数値へ変換する既定動作を変更できる環境があります。Excel 2021、2019、2016などに同じ設定が必ずあるわけではないため、使用中のバージョンで確認してください。

ユーザー定義「0000000」は何が違う?

ユーザー定義表示形式の 0000000 を使うと、数値600001をセル上で0600001と7桁表示できます。これは主に表示方法であり、元の値を7文字の文字列へ変換する処理ではありません。

Excelで郵便番号を7桁表示する方法と文字列で保持する方法の違い
表示だけを補う方法と、文字列として保持する方法は区別します。
Excelのユーザー定義0000000で郵便番号を7桁表示した実画面
表示形式は0600001でも、数式バーの元値は600001です。

TEXT関数で7桁の文字列を作る

対象列が日本の7桁郵便番号だと確認できている場合は、=TEXT(A2,"0000000")のようにTEXT関数で7桁形式の文字列を別列へ作れます。ただし600001という値だけで、元々0600001だった履歴を証明する機能ではありません。

ExcelのTEXT関数で郵便番号を7桁の文字列に変換した実画面
TEXT関数は指定した表示形式の文字列を生成します。

CSVをそのまま開くときは注意

CSVを通常の方法で開くと、Excelが既定のデータ形式に従って各列を解釈します。Excelで見えなくなったことと、CSVファイル自体から0が消えたことは同じではありません。日本郵便も、公式CSVを一般的な表計算ソフトで開くと郵便番号列の先頭0や00が表示されない場合があると案内しています。

「データ → テキスト/CSVから」で文字列として取り込む

CSVを取り込むときは、データ → テキスト/CSVから → データの変換を使い、Power Queryで郵便番号列のデータ型をテキストに設定します。自動型判定で先頭0が失われていないかを確認してから読み込みます。

結局どの方法を使えばよい?

方法 先頭0を文字として保持 主な用途 注意点
入力前に文字列形式 ○ 新規入力・貼り付け 事前設定が必要
アポストロフィ ○ 少数の手入力 大量データには不向き
自動データ変換を無効化 ○ 対応する新しいExcel 対応バージョン限定
ユーザー定義0000000 ×(表示上は補える) Excel内での表示 元値は数値のまま
TEXT関数 ○(新しい文字列を生成) 別列への変換 元データの意味を確認
CSVをTextとして取込 ○ CSVの取込 データ型を確認

すでに0が消えたデータはどうする?

600001を見て、必ず0600001だったと即断しないでください。元CSV、元システム、入力票、日本郵便の公式情報、バックアップデータなどで確認します。対象データが7桁の日本郵便番号だと確認できる場合に限り、TEXT関数などで7桁文字列を作る方法を検討します。

郵便番号と住所が合わない原因については、郵便番号と住所が一致しないときの確認方法、住所の全角・半角、空白、ハイフンをExcelで整える方法はこちらの記事で解説しています。

郵便番号は識別コードとして考える

郵便番号では通常、加算、平均、大きさの比較を目的にしません。コードを欠落させず保持・受け渡すことが必要な場面が多いため、連携先システムの仕様に合わせてデータ型を選びます。

郵便番号と住所をまとめて確認する

ExcelやCSVで郵便番号を整えたあと、住所との組み合わせも確認したい場合は、元データを上書きせず、まず見直しが必要な行を整理しましょう。

住所データを確認してみる →

まとめ

Excelでは先頭0が自動的に消える場合があります。入力前の文字列形式、アポストロフィ、対応環境の自動データ変換、TEXT関数、CSV取込時のデータ型を使い分けます。表示と保存値を分けて考え、すでに失われた0を根拠なく推測しないことが大切です。

参考情報

Microsoft:Excelで先頭の0を表示するMicrosoft:TEXT関数Microsoft:テキスト・CSVファイルをインポートまたはエクスポートする日本郵便:郵便番号データダウンロード