Excel。ゼロとハイフンがない郵便番号をゼロとハイフン付きに変更したい
<TEXT+LEFT+RIGHT関数>
CSVなどのデータを読み込んだところ、郵便番号が数値だったため、036ではじまる郵便番号の0がない状態でした。
そこで、先頭の0をつけた郵便番号やハイフンでわけた郵便番号にするには、どうしたらいいのでしょうか。
次のデータを用意しました。
A列が読み込んだデータです。
A2は0がないので、6桁の数値になっています。
ゼロを先頭につける必要がありますので、B2には、表示形式を設定できる、TEXT関数をつかった数式を設定します。
=TEXT(A2,"0000000")
これで、6桁の数値は、先頭に0(ゼロ)を表示した数値(文字数値型)にすることができました。
では、ハイフンをいれた郵便番号にしたい場合には、次の数式をC2につくってみました。
=LEFT(B2,3) & "-" & RIGHT(B2,4)
B2には、先ほど7桁のゼロ始まりの郵便番号をつくりましたので、左から3文字のあとに-(ハイフン)を挟んで、右から4文字を結合させてみました。
そこで、LEFT関数とRIGHT関数をつかってみました。
どうしても、左から、右からと考えがちですが、LEFT関数やRIHGT関数をつかわなくても、一発でゼロ始まりであり、ハイフンもはさんだ表示にすることができます。
D2には次の数式を設定しました。
=TEXT(A2,"000-0000")
TEXT関数だけで、対応することができます。
たぶん、この方法が一番早いように思えます。
このアイディアは、セルの書式設定ダイアログボックスの表示形式にヒントがあります。
表示形式タブの「その他」にある郵便番号を選び、即、ユーザー定義にすると、郵便番号の中身を確認することができます。
すると、
[<=999]000;[<=9999]000-00;000-0000
となっています。
この中に、「000-0000」というのがあります。
つまり、ゼロ始まりでハイフンを入れて表示することができることが確認できます。
ということで、表示形式を設定できるTEXT関数をつかうことで、ゼロ始まりでハイフンをいれた、郵便番号をつくることができたというわけです。

