テクノロジー・動画・写真・デザインとか

エクセルで-(ハイフン)を電話番号や郵便番号に入れる方法

以前にエクセルで-(ハイフン)を抜いて電話番号の先頭の0を残す方法を紹介したのが、今回は逆にエクセルで電話番号や郵便番号に-(ハイフン)を入れる方法を紹介したいと思う。

電話番号や郵便番号にハイフンを入れる方法は、サンプルとして下記の3つの方法がある。

目次

  1. 手軽なユーザー定義を使う方法
  2. コピペで使えるLEFT、MID、RIGHT関数を使う方法
  3. 固定電話と携帯携帯の番号が混ざっている場合のハイフンを入れる方法

手軽なユーザー定義を使う方法

まずは、「セルの書式設定」の中にある「ユーザー定義」を使うことで、簡単に電話番号や郵便番号にハイフンを入れることができる方法。

セル、又は列を選択して「右クリック」、「セルの書式設定」を選択する。
ちなみによく使う書式設定のショートカットキーは[Ctrl]+[1]なので、覚えておくと便利。
セルの書式設定

続きを読む


続いては、「ユーザー定義」と選択して「種類」の入力欄に下記のように入力して完了。
電話番号の場合 000-0000-0000
郵便番号の場合 000-0000

ユーザー定義

コピペで使えるLEFT、MID、RIGHT関数を使う方法

これも比較的に手軽な方法で、左部分、中央、右部分のそれぞれの桁を指定してハイフンを入れる方法。

サンプル書式
電話番号の場合 =LEFT(A1,3)&"-"&MID(A1,4,4)&"-"&RIGHT(A1,4)

郵便番号の場合 =LEFT(A1,3)&"-"&RIGHT(A1,4)

コピペで使えるLEFT、MID、RIGHT関数を使う方法

固定電話と携帯携帯の番号が混ざっている場合のハイフンを入れる方法

限定的だが、例えば東京と大阪の市外局番03と06に該当する電話番号と携帯電話番号が混ざっていると分かっている場合に、東京と大阪の電話番号は03-1234-5678のように表記し、それ以外の携帯は090-1234-5678のように表記させることができる。

サンプル書式
=TEXT(A1*1,IF(OR(LEFT(A1,2)="03",LEFT(A1,2)="06"),"00-0000-0000","000-0000-0000"))

固定電話と携帯携帯の番号が混ざっている場合のハイフンを入れる方法

書式の解説

まずは、A1の「09012345678」が文字列で表示されていることが分かっていなければ話は進まないので、分からない場合にはこちらを参照。
エクセルで-(ハイフン)を抜いて電話番号の先頭の0を残す方法

また、TEXT関数についても理解しておくと、このサンプルの書式をより理解できる。

さて、この書式で使用しているTEXT関数は、数値を文字列に変換してくれるもので、TEXT関数の書式は「TEXT(数値, 表示形式)」となっている。

しかしA1のセルは文字列となっているので、これを「数値」にしなければならない。

そこで「A1*1」とあるように、A1の文字列に「1」を掛け算してあげる事で数値にすることができる。

続いては、TEXT関数の表示形式部分に下記を実現するために、IF関数のORとLEFT関数を使用している。
番号の中に03か06があれば00-0000-0000と表記し、なければ000-0000-0000と表記

IFのORの書式は以下の通りとなり、
=IF(OR(条件1,条件2),値1,値2)
「条件1、または条件2の場合は値1を返し、そうでない場合は値2を返す」という機能になる。

ここでの条件1は、「LEFT(A1,2)=”03″」で「A1の左から2番目までの数字が03なら」となり、条件2は「LEFT(A1,2)=”06″」で「A1の左から2番目までの数字が06なら」となる。

そして、これらのいずれかの条件に該当するなら値1の「00-0000-0000」を表示し、そうでなければ「000-0000-0000」を表示する。

以上がこの書式の説明になるが、残念ながら、これらでは日本全国の電話番号にハイフンを入れることは至難の業。
こちらを参照

カテゴリ:エクセル関数