数字をハイフンで簡単に分けたい

エクセルでデータを扱っていると、郵便番号や整理番号のように、本当は「012-3456」のようにハイフンで区切られていてほしい文字列がありますよね。

ところが、データを作った人やシステムのクセによってはハイフン無しの「0123456」や、更にエクセルに数値とみなされて「123456」のように頭のゼロが飛ばされてしまうケース(北海道の郵便番号はゼロから始まるものがありますからね)もあります。

ハイフンが入ってなきゃ困る!!

という方のために、関数たったひとつで数字の中へハイフンを挿入する方法をご紹介します。超簡単です。

スポンサーリンク

RIGHT関数、LEFT関数、MID関数では桁がそろってないとダメ

RIGHT、LEFT、MIDでは桁が合わないとうまくいかない

文字列を分割して取り出したいときによく使われるのがRIGHT関数、LEFT関数、MID関数ですが、郵便番号、口座番号、会員番号、整理番号といったものは往々にして足りない桁の分、頭にゼロがつくものです。

ですから、上記のような文字数を数える関数では桁が合わない分、結果がズレてしまいます。
そこで、TEXT関数の登場です。

TEXT関数なら桁違いの数字にも正しい位置にハイフンを入れられる

TEXT関数なら数字の中に正確にハイフンを入れられる

TEXT関数はもとになる数字を自由に書式設定できる関数です。
頭ゼロ付きの文字列だろうがゼロなしの数値だろうが、一旦、値として受け取った上で改めて書式を設定して吐き出してくれます。発想の転換ですね。

使い方は下記のとおりです。

=TEXT(もとの値,”書式”)

先ほどの例では書式として”000-0000″と指定しています。
感覚としては1000円単位のカンマを打つようなものです。桁が多かろうが少なかろうが、区切り文字の位置は変わりません。

書式の部分がイマイチよくわからないという方は、試しにハイフンの位置を動かしてみてください。どういう仕組みなのかすぐにわかるはずです。

今日のExcelスキルアップ

いかがでしたか?
今回はテキスト関数を使って、郵便番号のような数字の中にハイフンを自動で挿入する方法をご紹介しました。

改めてポイントを書いておきます。

  • もとの値の桁数がそろっているならRIGHT関数、LEFT関数、MID関数でも決まった位置にハイフンを入れることはできる(でも面倒くさい)
  • しかも、もとの値の桁数がバラバラだと文字がズレて使い物にならない
  • そこでTEXT関数の登場
  • TEXT関数なら元の値を自由に書式設定して出力してくれる(123456→012-3456)

便利な使い方を知っている、ただそれだけで仕事が劇的に速くなってしまう、それがエクセルという世界一有名で身近なオフィスソフトです。

この記事がお役に立てそうなら、ぜひ他の困っている方のために紹介してさしあげてください。よろしくお願いします。

ではまた。

Pocket