Excelで顧客番号、商品コード、郵便番号、電話番号などを管理していると、「数字や文字列の途中にハイフンを入れたい」と感じる場面があります。
たとえば「1234567」を「123-4567」にしたり、「A001B002」を「A001-B002」のように整形したりする作業です。件数が少なければ手入力でも対応できますが、数百件・数千件のデータになると、手作業では時間がかかるだけでなく入力ミスも増えてしまいます。
そこで便利なのが、Excel関数を使ってハイフンを自動で挿入する方法です。関数を使えば、元データを残したまま別列で整形できるため、実務でも安全に使いやすい方法です。
この記事では、Excelでハイフンを入れる関数の使い方を中心に、郵便番号・電話番号・商品コードなどの実務例に合わせて解説します。
✅ Excelでハイフンを入れる関数の基本
Excelでハイフンを入れる作業は、単なる見た目の調整ではありません。
データの桁数や形式をそろえることで、一覧表が見やすくなり、検索や確認もしやすくなります。
一方で、手入力でハイフンを追加すると、入れる位置を間違えたり、余分なスペースが混ざったりすることがあります。
特に顧客番号や商品コードのように形式が決まっているデータでは、表記ゆれが後から大きなトラブルになることもあります。
まずは、関数でハイフンを入れる基本の考え方を押さえておきましょう。
・LEFT関数とRIGHT関数でハイフンを入れる方法
文字列の途中にハイフンを入れる基本は、文字列を前半と後半に分けて結合する方法です。
たとえば、セルA2に「1234567」と入力されている場合、「123-4567」のように整形したいときは、次の数式を使います。
"=LEFT(A2,3)&"-"&RIGHT(A2,4)"
この数式では、LEFT関数で左から3文字を取り出し、RIGHT関数で右から4文字を取り出しています。
その間に「-」を連結することで、ハイフン付きの文字列に変換できます。
手順は以下の通りです。
- 元データをA列に入力する
- B2セルに数式を入力する
- Enterキーで確定する
- 必要な行までオートフィルでコピーする
- 結果を確認する
この方法は、桁数が固定されているデータに向いています。
・文字列結合でハイフンを追加する考え方
Excelでは「&」を使うことで、文字列同士を結合できます。
たとえば、
"=A2&"-"&B2"
とすると、A2とB2の間にハイフンを入れて結合できます。
部署コードと社員番号、商品分類と連番など、複数のセルを組み合わせて管理番号を作る場合に便利です。
今回はハイフンを挟んで文字列を結合する方法を紹介しましたが、実務では氏名や住所、商品情報など複数セルの内容をまとめて管理したい場面も少なくありません。セル結合のさまざまな方法については、【Excel】複数のセルのデータを1つのセルにまとめる方法|実務で役立つ全パターンと効率化のコツで詳しく解説しています。
✅ 郵便番号にハイフンを入れる関数の使い方
郵便番号は、Excelでハイフンを入れる代表的な例です。
「1234567」のような7桁の数字を「123-4567」に整形するケースは、住所録や顧客リストでよくあります。
ただし、郵便番号を数値として扱うと、先頭の0が消える場合があります。
この点を理解せずに処理すると、正しい郵便番号にならないことがあるため注意が必要です。
・7桁の郵便番号を3桁と4桁に分ける方法
セルA2に郵便番号が入力されている場合は、次の数式を使います。
"=LEFT(A2,3)&"-"&RIGHT(A2,4)"
たとえば「1600022」であれば、「160-0022」と表示できます。
手順は以下です。
- A列に郵便番号を入力する
- B2セルに数式を入力する
- B列にハイフン付き郵便番号を表示する
- 必要に応じて値貼り付けで固定する
関数で整形した結果は数式のままなので、別システムに渡す場合は値貼り付けしておくと安心です。
郵便番号を見やすく整形することは、表全体の視認性向上にもつながります。数値やコードの桁数を統一して見やすい一覧表を作る方法については、【Excel】数値の桁をそろえて見やすく表示する方法|表を整える実務テクニックで詳しく解説しています。
・先頭の0が消える場合の注意点
郵便番号に先頭の0がある場合、Excelが数値として認識すると0が消えてしまいます。
たとえば「0123456」と入力したつもりでも、「123456」と表示されることがあります。
この状態でハイフンを入れても、正しい郵便番号にはなりません。
対策としては、元データを文字列として扱う方法があります。
セルA2の値を7桁にそろえてからハイフンを入れる場合は、次の数式が便利です。
"=LEFT(TEXT(A2,"0000000"),3)&"-"&RIGHT(TEXT(A2,"0000000"),4)"
TEXT関数で7桁に整えてから、LEFT関数とRIGHT関数で分けています。
郵便番号だけでなく、社員番号や商品コードなどでも先頭の0が消えるトラブルはよく発生します。数値を文字列として扱いながら桁数を固定する方法については、【Excel】先頭の0を表示する関数【数値を文字列として扱い、桁数を固定するテクニック】で詳しく解説しています。
✅ 電話番号にハイフンを入れる関数の使い方
電話番号もハイフンを入れて見やすく整形したいデータの一つです。
ただし、電話番号は郵便番号よりも少し注意が必要です。
市外局番や携帯番号によって桁の区切り方が変わるため、すべての電話番号を同じ数式で処理できるとは限りません。
実務では、データの種類に合わせて数式を使い分けることが大切です。
・携帯番号を3桁-4桁-4桁に整形する方法
携帯番号のように11桁で形式が決まっている場合は、次のように整形できます。
セルA2に「09012345678」が入力されている場合は、次の数式を使います。
"=LEFT(A2,3)&"-"&MID(A2,4,4)&"-"&RIGHT(A2,4)"
この数式では、LEFT関数で先頭3桁、MID関数で中央4桁、RIGHT関数で末尾4桁を取り出しています。
結果は「090-1234-5678」のようになります。
・電話番号は文字列として管理する
電話番号は計算に使う数値ではありません。
そのため、Excel上では文字列として管理するのが基本です。
数値として扱うと、先頭の0が消える原因になります。
入力前にセルの表示形式を「文字列」にしておくか、TEXT関数を使って桁数を補正すると安全です。
電話番号だけでなく、社員番号や顧客コードなども先頭の0を保持したまま管理することが重要です。表示形式や関数を使って桁数をそろえる方法については、【Excel】先頭に0をつける方法と桁数をそろえる方法|表示形式・関数・文字列の使い分けガイドで詳しく解説しています。
✅ 商品コードや管理番号にハイフンを入れる方法
商品コードや管理番号は、会社ごとにルールが異なります。
たとえば、先頭に分類コード、中央に部署コード、末尾に連番が入っているような形式です。
このようなデータは、ハイフンを入れることで意味の区切りが分かりやすくなります。
見た目が整うだけでなく、チェックや照合作業もしやすくなります。
・MID関数で任意の位置にハイフンを入れる方法
セルA2に「ABCD123456」が入力されていて、「ABCD-123-456」のようにしたい場合は、次の数式を使います。
"=LEFT(A2,4)&"-"&MID(A2,5,3)&"-"&RIGHT(A2,3)"
このように、LEFT関数・MID関数・RIGHT関数を組み合わせると、任意の位置で文字列を分割できます。
手順は以下の通りです。
- コードのルールを確認する
- どこで区切るかを決める
- LEFT・MID・RIGHTで文字列を分割する
- 「&"-"&」でハイフンを挿入する
- 結果を確認する
先にコードの桁数や区切り位置を確認しておくと、数式を作りやすくなります。
MID関数を活用するためには、文字列のどの位置に目的の文字があるかを把握することが重要です。セル内の文字位置を検索したり、特定の文字列を抽出したりする方法については、【Excel】セル内の文字を検索する関数|部分一致・位置特定・抽出まで完全解説で詳しく解説しています。
・複数セルをハイフンで結合する方法
部署コード、商品分類、連番が別々のセルに分かれている場合は、次のように結合できます。
"=A2&"-"&B2&"-"&C2"
この方法なら、複数の項目を組み合わせた管理番号を簡単に作成できます。
たとえば、A2に「TOKYO」、B2に「A01」、C2に「0005」がある場合、「TOKYO-A01-0005」のように表示できます。
✅ ハイフンを入れる関数でよくある失敗
ハイフンを入れる関数は便利ですが、元データの状態によっては思った通りに整形できないことがあります。
特に多いのは、桁数がそろっていない、先頭の0が消えている、不要なスペースが混ざっているといったケースです。
数式だけを見直しても直らない場合は、元データ側に原因がある可能性があります。
ここでは実務でよくある失敗を確認しておきましょう。
・桁数がバラバラで位置がずれる
LEFT関数やRIGHT関数は、指定した文字数でデータを取り出します。
そのため、元データの桁数がそろっていないと、ハイフンを入れる位置がずれてしまいます。
たとえば、7桁の郵便番号を前提にしているのに6桁のデータが混ざっていると、正しく整形できません。
事前にLEN関数で文字数を確認しておくと安心です。
"=LEN(A2)"
この数式で、セル内の文字数を確認できます。
・余分なスペースが混ざっている
外部システムから取り込んだデータには、前後にスペースが含まれている場合があります。
この状態でハイフンを入れると、見た目では分かりにくいズレが発生します。
不要なスペースを取り除くには、TRIM関数を使います。
"=TRIM(A2)"
整形前にスペースを削除しておくと、数式の結果が安定します。
ハイフンの挿入がうまくいかない原因は、目に見えないスペースや不要な文字が含まれているケースも少なくありません。TRIM関数とLEN関数を使った文字列整形の方法については、【Excel】TRIM関数とLEN関数で文字列を整える方法で詳しく解説しています。
・数式結果をそのまま貼り付けて崩れる
関数でハイフンを入れた結果は、あくまで数式の結果です。
別シートや別ファイルに貼り付ける場合、参照元が変わると結果が崩れることがあります。
完成したデータを固定したい場合は、値貼り付けを行いましょう。
手順は以下です。
- 数式結果の範囲をコピーする
- 貼り付け先を選択する
- 右クリックする
- 「形式を選択して貼り付け」を選択する
- 「値」を選択して貼り付ける
これで数式ではなく文字列として固定できます。
✅ ハイフン挿入を効率化する実務テクニック
毎回同じ位置にハイフンを入れる作業があるなら、関数をテンプレート化しておくと便利です。
実務では一度きりの処理よりも、毎月・毎週繰り返すデータ整形の方が多いからです。
その場限りの数式ではなく、再利用しやすい形にしておくと作業時間を大きく減らせます。
ここでは効率化の考え方を紹介します。
・整形用の列を作成する
元データを直接書き換えるのではなく、隣の列に整形後データを作る方法がおすすめです。
たとえば、
- A列:元データ
- B列:ハイフン挿入後データ
という形にします。
この構成なら、元データを残したまま結果を確認できます。
ミスがあっても修正しやすく、安全性が高いです。
・テーブル化して自動コピーする
データ件数が増える場合は、表をテーブル化しておくと便利です。
テーブルにしておくと、新しい行を追加したときに数式が自動で反映されます。
手順は以下です。
- データ範囲を選択する
- Ctrl+Tを押す
- 「先頭行をテーブルの見出しとして使用する」を確認する
- OKをクリックする
- 整形用列に数式を入力する
これで、データを追加するたびに数式をコピーする手間を減らせます。
・VBAでハイフン挿入を自動化する
同じ処理を何度も繰り返す場合は、Excel VBAで自動化する方法もあります。
たとえば、郵便番号や商品コードの整形ルールが決まっている場合、ボタン1つでハイフン付きの形式に変換できます。
関数は手軽に使える一方、処理対象が多い場合や複数ファイルをまとめて整形したい場合は、VBAの方が効率的です。
毎月のデータ加工や帳票作成で同じ作業をしている場合は、関数とVBAを組み合わせることで、さらに作業時間を短縮できます。
✅ まとめ:Excelでハイフンを入れる関数を使いこなそう
Excelでハイフンを入れる関数を使えば、郵便番号・電話番号・商品コード・管理番号などを効率よく整形できます。
手作業でハイフンを入力するとミスが起きやすく、データ件数が増えるほど修正にも時間がかかります。
関数を使って自動化しておけば、表記を統一しながら安全にデータを整えることができます。
- LEFT関数とRIGHT関数で指定位置にハイフンを入れられる
- MID関数を使うと中央部分の文字列も取り出せる
- 郵便番号は「3桁-4桁」に整形できる
- 携帯番号は「3桁-4桁-4桁」に整形できる
- 先頭の0が消えないように文字列として扱う
- 桁数がそろっていない場合はLEN関数で確認する
- 不要なスペースはTRIM関数で削除する
- 完成後は値貼り付けで固定すると安全
- 繰り返し作業はテーブル化やVBA化も検討する
ハイフン挿入は小さな作業に見えますが、データの見やすさや正確性に大きく関わります。郵便番号や電話番号、商品コードを扱う機会が多い方は、今回紹介した関数を活用して、手作業の修正を減らしていきましょう。