【Excel】エクセルで電話番号のハイフンを消す方法
Excelで電話番号を管理していると、ハイフン付きの番号とハイフンなしの番号が混在し、検索や照合がしにくくなることがあります。
たとえば顧客リストを外部システムへ取り込む際、電話番号を数字だけの形式に統一するよう求められる場面も少なくありません。
電話番号のハイフン削除は置換機能でも対応できますが、元データを残したい場合や、数百件以上を自動処理したい場合には数式が便利です。
電話番号のハイフンを消す主な方法
・検索と置換で一括削除する方法
・SUBSTITUTE関数で別列に変換する方法
・数値表示形式を利用して見た目だけ変える方法
この記事では、電話番号の先頭のゼロを消さずに、ハイフンだけを安全に削除する手順を詳しく解説していきます。
入力済みデータの修正、関数による自動変換、貼り付け時の注意点まで確認していきましょう。
エクセルで電話番号のハイフンを消す方法1【検索と置換による一括削除】
それではまず、検索と置換を使って既存の電話番号からハイフンをまとめて消す方法について解説していきます。
| 氏名 | 電話番号 |
|---|---|
| 田中 恒一 | 03-1234-5678 |
| 佐藤 美咲 | 090-1234-5678 |
| 鈴木 恒一 | 0120-123-456 |
検索と置換は、同じ列にあるハイフンを一度に削除したいときに向いています。
元のセルの内容を直接変更する操作なので、実行前にファイルを保存するか、対象列を別の場所へコピーしておくと安心です。
電話番号の列を選択する手順
まず、ハイフンを消したい電話番号が入力されている列またはセル範囲を選択しましょう。
電話番号がB列に入力されている場合は、B2から最終行までドラッグして選択します。
1行目に見出しがある表では、見出しのB1を含めず、実データが始まるB2から選択するのが基本です。
列全体を選択しても処理できますが、電話番号以外の文字列にハイフンが含まれている場合には注意が必要です。
たとえば郵便番号、商品コード、日付のようなデータまで同時に変わる可能性があります。
そのため、電話番号だけが入っている範囲を選択してから置換することが大切です。

選択範囲を限定しておけば、顧客名や住所、備考欄にある記号を誤って削除する心配を減らせます。
【操作のポイント】置換前に電話番号の列だけを選択し、ほかの項目まで変更しないようにします。
検索と置換画面でハイフンを指定する操作
対象範囲を選択したら、キーボードでCtrlキーとHキーを同時に押して検索と置換の画面を開きます。
ホームタブから検索と選択を開き、置換を選んでも同じ画面を表示できます。
検索する文字列には半角ハイフンを入力します。
置換後の文字列は何も入力せず、空欄のままにしてください。
これは、見つかったハイフンを空白へ置き換えるのではなく、文字そのものを削除する設定です。

電話番号内のハイフンが全角の長い横線になっている場合は、検索欄にも同じ記号をコピーして入力する必要があります。
見た目が似ていても、半角ハイフンと全角ハイフンは別の文字として扱われます。
検索する文字列に入力する例
半角ハイフンの場合は –
全角ハイフンの場合は -
長音符号の場合は ー
【操作のポイント】検索欄には実際のセルからコピーした記号を貼り付けると、文字の違いを防げます。
すべて置換を実行した後の確認
設定を確認したら、すべて置換をクリックします。
Excelは選択範囲の中からハイフンを検索し、見つかった件数をメッセージで表示します。
たとえば03-1234-5678は0312345678へ、090-1234-5678は09012345678へ変わります。
電話番号の先頭にあるゼロが残っているかを必ず確認しましょう。
電話番号が数値として保存されていた場合、先頭のゼロが表示されないことがあります。
その場合は、セルの表示形式を文字列に変更してからデータを入力し直す、または後述する関数を使って文字列として整える方法が有効です。
置換後に元へ戻したいときは、直後ならCtrlキーとZキーで元に戻せます。
【操作のポイント】すべて置換の実行後は、携帯電話番号と市外局番付き番号を数件確認して結果を確かめます。
エクセルで電話番号のハイフンを消す方法2【SUBSTITUTE関数による別列変換】
続いては、元の電話番号を残したまま、別の列にハイフンなしの電話番号を表示する方法を確認していきます。
| A列 氏名 | B列 元の電話番号 | C列 変換後 |
|---|---|---|
| 田中 恒一 | 03-1234-5678 | 0312345678 |
| 佐藤 美咲 | 090-1234-5678 | 09012345678 |
| 鈴木 恒一 | 0120-123-456 | 0120123456 |
SUBSTITUTE関数は、指定した文字列の中にある特定の文字を別の文字へ置き換える関数です。
置換後の文字列を空欄にすれば、ハイフンを削除できます。
変換前のデータを保持できるため、提出用データや外部連携用データを作る場合に便利です。
SUBSTITUTE関数を入力する数式
電話番号がB2セルにある場合、変換結果を表示したいC2セルを選択します。
次の数式を入力してください。
=SUBSTITUTE(B2,”-“,””)
この数式では、B2セルの文字列から半角ハイフンを探し、空の文字列へ置き換えています。
1つ目のダブルクォーテーションで囲まれたハイフンが削除する対象です。
2つ目のダブルクォーテーション2つは、置換後に何も残さないことを表します。
数式内のダブルクォーテーションを省略するとエラーになるため、必ず入力しましょう。

入力後にEnterキーを押すと、C2セルには0312345678と表示されます。
【操作のポイント】サンプルデータでは1行目をヘッダーとして扱い、数式はC2セルから入力します。
オートフィルで複数行へ数式をコピーする操作

C2セルに数式を入力できたら、セル右下に表示される小さな四角を下方向へドラッグします。
この操作はオートフィルと呼ばれ、下の行へ数式を自動コピーする機能です。
C3セルには自動的に=SUBSTITUTE(B3,”-“,””)が入り、C4セルではB4を参照する数式になります。
データが多い場合は、C2セル右下のフィルハンドルをダブルクリックすると、隣接するB列のデータが続く行まで自動でコピーできます。
途中に空白行があるとオートフィルの範囲が途中で止まることがあるため、最後の行まで変換されたか確認しましょう。
変換結果が想定と違う場合は、数式が参照しているセル番地を確認することが重要です。
【操作のポイント】最初の数式を正しく作成してからオートフィルを使うと、大量の電話番号を短時間で整形できます。
数式の結果を値として貼り付ける方法
関数で作成した電話番号を外部システムへ提出する場合、数式ではなく結果の数字だけを残したいことがあります。
このときは、変換済みのC列を選択してコピーします。
続いて同じ場所または別の列を右クリックし、貼り付けのオプションから値を選びましょう。
値貼り付けをすると、数式は消え、画面に表示されていた電話番号だけがセルに残ります。
元のB列を削除する前に、C列が数式ではなく値になっているか確認することが安全な手順です。
コピー先の表示形式が標準のままだと、先頭のゼロが消える可能性があります。
先にコピー先のセル範囲を文字列形式にしておくと、電話番号を文字列として扱いやすくなります。
【操作のポイント】外部提出用の一覧では、値貼り付け後に数式バーを確認し、数式ではなく電話番号そのものが入っているか確かめます。
電話番号の先頭ゼロを残す表示形式と文字列処理
続いては、ハイフンを消した後も電話番号の先頭にあるゼロを保持するための設定を確認していきます。
| 入力内容 | 標準形式の表示例 | 文字列形式の表示例 |
|---|---|---|
| 0312345678 | 312345678 | 0312345678 |
| 09012345678 | 9012345678 | 09012345678 |
電話番号は計算するための数値ではなく、番号を識別するための文字列として扱うのが基本です。
先頭のゼロがある市外局番や携帯電話番号では、セルの表示形式が重要な役割を持ちます。
セルの表示形式を文字列へ変更する操作
電話番号を入力する前に、対象の列を選択して文字列形式へ変更しましょう。
ホームタブにある数値の表示形式の一覧を開き、文字列を選択します。
すでに数字を入力しているセルは、表示形式だけを文字列へ変更しても先頭のゼロが自動で戻るわけではありません。
そのため、新たに入力する前に設定するか、元データから改めて変換する必要があります。
文字列形式に設定した列へ入力すると、0312345678のように先頭のゼロを含む電話番号をそのまま保存できます。
【操作のポイント】電話番号を扱う列は、データを貼り付ける前に文字列形式へ設定します。
TEXT関数で桁数をそろえる数式
すでに先頭のゼロが消えた10桁の番号を、11桁の携帯電話番号として整えたい場合にはTEXT関数を使えます。
=TEXT(B2,”00000000000″)
この数式は、B2セルの値を11桁になるようゼロで補って文字列に変換します。
たとえば9012345678という値なら、09012345678と表示されます。
ただし、市外局番付きの固定電話には10桁のものや、フリーダイヤルのように桁数が異なるものがあります。
すべての電話番号へ一律に11桁の書式を適用すると、固定電話の桁数が変わる可能性があります。
携帯電話番号だけを対象にする列で利用する、または電話番号の種類ごとに分けて処理することが必要です。
【操作のポイント】TEXT関数は桁数が決まっている番号に適しており、固定電話と携帯電話が混在する一覧では慎重に使います。
先頭のアポストロフィを使う入力方法
少量の電話番号を手入力する場合は、番号の先頭にアポストロフィを付ける方法もあります。
たとえば’0312345678と入力すると、セルには0312345678と表示されます。
アポストロフィ自体はセル上に表示されず、Excelへ文字列として入力するための記号として働きます。
この方法は手軽ですが、件数が多い場合には入力漏れや入力ミスが起きやすくなります。
大量データには列全体の文字列設定やSUBSTITUTE関数を使う方が効率的です。
また、CSVファイルを開くときは、電話番号が数値として自動認識されないようにインポート機能を利用する方法も検討しましょう。
【操作のポイント】アポストロフィは少量の手入力には便利ですが、継続して扱う一覧では表示形式の設定を優先します。
全角ハイフンと異なる記号が混在する電話番号の処理
続いては、半角ハイフン以外の記号が混在する電話番号を整える方法を確認していきます。
| 変換前 | 削除対象 | 変換後 |
|---|---|---|
| 03-1234-5678 | 全角ハイフン | 0312345678 |
| 090 1234 5678 | 半角スペース | 09012345678 |
| 090ー1234ー5678 | 長音符号 | 09012345678 |
コピー元のシステムや入力者によって、電話番号に使われる区切り記号は異なります。
見た目では同じ横線に見えても、Excelでは別の文字です。
全角ハイフンをSUBSTITUTE関数で削除する数式
全角ハイフンを消す場合は、数式内の検索文字列へ全角ハイフンを指定します。
=SUBSTITUTE(B2,”-”,””)
半角ハイフン用の数式では、全角ハイフンは削除されません。
セルに入力されている記号を数式の中へ直接コピーすると、文字の種類を間違えずに済みます。
複数種類の横線が混在している場合は、SUBSTITUTE関数を重ねて記述します。
=SUBSTITUTE(SUBSTITUTE(B2,”-“,””),”-”,””)
内側のSUBSTITUTE関数で半角ハイフンを削除し、その結果に対して外側のSUBSTITUTE関数が全角ハイフンを削除します。
【操作のポイント】削除できない横線が残る場合は、セル内の記号をコピーして数式へ貼り付けます。
スペースを含む電話番号の削除方法
電話番号の間に半角スペースや全角スペースが入っている場合もあります。
この場合は、ハイフンを消す処理に加えてスペースを削除する処理を組み合わせます。
=SUBSTITUTE(SUBSTITUTE(B2,”-“,””),” “,””)
この数式では、半角ハイフンと半角スペースを順番に削除します。
全角スペースが含まれる場合は、全角スペースを削除するSUBSTITUTE関数も追加しましょう。
電話番号の途中に不要な空白があると、検索、重複チェック、外部システムへの登録時に一致しない原因になります。
見た目を整えるだけでなく、データ照合の精度を上げる処理としても有効です。
【操作のポイント】空白の種類も半角と全角で異なるため、変換後の文字数を確認して不足がないか確かめます。
CLEAN関数とTRIM関数を使う場面
WebサイトやPDFからコピーした電話番号には、通常のスペースではない不要な文字が含まれることがあります。
CLEAN関数は印刷できない制御文字を削除し、TRIM関数は余分な半角スペースを整理する関数です。
=SUBSTITUTE(TRIM(CLEAN(B2)),”-“,””)
ただし、TRIM関数は文字列の途中にある半角スペースを1つ残す動作をするため、電話番号内のすべての空白を消したいときはSUBSTITUTE関数も併用します。
複雑な数式になった場合は、変換前と変換後の列を並べ、複数のデータで結果を比較することが大切です。
想定外の文字が混じるデータでは、最初に数件を目視確認してから全行へ数式をコピーしましょう。
【操作のポイント】外部から貼り付けたデータは、ハイフン以外の空白や不可視文字も疑って確認します。
電話番号データを整形する際の注意点
続いては、電話番号のハイフンを消す作業で起こりやすいミスと、データ管理上の注意点を確認していきます。
| 確認項目 | 確認内容 |
|---|---|
| 先頭のゼロ | 市外局番や携帯番号のゼロが残っているか |
| 桁数 | 変換後の文字数が適切か |
| 元データ | 修正前の列やファイルを保存したか |
電話番号は連絡先として重要なデータです。
ハイフンを消すだけの作業でも、誤った変換によって連絡先情報が使えなくならないよう注意しましょう。
電話番号を数値ではなく文字列として扱う理由
電話番号には計算上の意味がありません。
0312345678に1を加えても、電話番号として意味のある情報にはならないためです。
Excelで数値として扱うと、先頭のゼロが消える、桁数が長い番号が指数表示になるなどの問題が起こる場合があります。
そのため、電話番号、郵便番号、社員番号、会員番号などは文字列形式で管理するのが基本です。
番号は数値に見えても識別子として扱うという考え方を覚えておくと、Excelのデータ整形で役立ちます。
【操作のポイント】電話番号の列は、計算用の数値列と分けて文字列として管理します。
置換前のバックアップと元データの保存
検索と置換は便利な機能ですが、実行後に大量のセルを書き換えます。
誤った範囲で実行した場合、ほかのデータから必要なハイフンまで消えるかもしれません。
作業前にはファイルを別名保存する、対象列をコピーして控えを作るといった準備をおすすめします。
元データ列を残し、隣の列でSUBSTITUTE関数を使う方法なら、変換結果を比較できます。
確認後に値貼り付けを行えば、修正履歴を追いやすく安全性も高い運用になります。
【操作のポイント】一括置換を行う前には、元の電話番号列を別シートまたは別ファイルへ保存します。
CSV出力と外部システム連携時の確認
電話番号のハイフンを消したデータをCSV形式で出力する場合は、出力後のファイルも確認しましょう。
Excel上では正しく表示されていても、CSVを再度Excelで開くと先頭のゼロが消えたように見えることがあります。
これはCSVに電話番号が正しく保存されていても、開く際にExcelが数値として自動判定する場合があるためです。
CSVの内容を確認するときは、メモ帳などのテキストエディターで開く方法もあります。
外部システムの取り込み仕様で、ハイフンなし、ハイフンあり、文字列指定のどれが必要かを事前に確認することも重要です。
【操作のポイント】CSV連携ではExcelでの見た目だけで判断せず、取り込み先の電話番号形式を確認します。
まとめ エクセルで電話番号のハイフンを消す方法
Excelで電話番号のハイフンを消す方法は、少量または直接修正したいデータには検索と置換、大量データや元の内容を残したい場合にはSUBSTITUTE関数が適しています。
半角ハイフンを削除する基本の数式は、=SUBSTITUTE(B2,”-“,””)です。
全角ハイフンやスペースが混在する場合は、削除対象の文字に合わせてSUBSTITUTE関数を重ねて使いましょう。
電話番号は数値ではなく文字列として扱うことが、先頭のゼロを失わないための重要なポイントです。
変換前の列を残して結果を確認し、必要に応じて値貼り付けを行えば、安全にハイフンなしの電話番号一覧を作成できます。
検索、照合、CSV出力、外部システムへの取り込みなど、利用目的に合った形式へ整えていきましょう。