
本記事では、エクセルで電話番号のハイフンを「消す・入れる」方法をわかりやすくご紹介します。
「置換機能」の基本手順から、「SUBSTITUTE・IF/IFS」の活用方法、「先頭の0を消さずにハイフンを入れる」方法まで解説しているので、ぜひ参考にしてみてください。
ハイフンを消す
置換機能を使う

【手順1】ハイフンを消す
- ハイフンを消したい範囲を選択し、
Ctrl+Hを押して「置換」画面を開きます。 - 「検索する文字列」に
-(ハイフン)を入力します。 - 「置換後の文字列」には何も入力せずに、そのまま「すべて置換」をクリックします。

【手順2】先頭の0を付け直す
- 同じ範囲を選択し、
Ctrl+1を押して「書式設定」を開きます。 - 「表示形式」タブの「ユーザー定義」を選択します。
- 「種類」の入力欄に
0##########のように入力し、「OK」を押します。
SUBSTITUTE関数を使う

SUBSTITUTE関数でハイフンを消し、TEXT関数で先頭の0を付け直します。
例:=TEXT(SUBSTITUTE(A2,"-",""),"0##########")
SUBSTITUTE関数の引数:(文字列, 検索文字列, 新しい文字列, [置換対象])
【数式の解説】
- SUBSTITUTE関数:「文字列」内の「ハイフン(-)」を「空白」に置換します。
- TEXT関数:ハイフンを消した番号を「値」として受け取り、指定の「表示形式」に変換します。
ハイフンを入れる
ユーザー定義を使う(桁数がすべて同じ場合)

【手順】
- 範囲を選択し、
Ctrl+1を押して「書式設定」を開きます。 - 「表示形式」タブの「ユーザー定義」を選択します。
- [種類] の入力欄に
000-0000-0000(または0##-####-####)と入力し、「OK」をクリックします。
IF関数を使う(Excel 2016以前の場合)

1文字目が指定の数字(例:3)から始まるかどうかで、ハイフンを入れる位置を分岐させます。
例:=IF(LEFT(A2,1)="3", TEXT(A2,"0#-####-####"), TEXT(A2,"0##-####-####"))
IF関数の引数:(論理式, 真の場合の値, 偽の場合の値)
📖 条件が3つ以上の場合:
例:=IF(LEFT(A3,3)="120", TEXT(A3,"0120-###-###"), IF(LEFT(A3,1)="3", TEXT(A3,"0#-####-####"), TEXT(A3,"0##-####-####")))
IFS関数を使う(Excel 2019以降の場合)

複数の条件を左から順番に並べていき、条件に一致したハイフンの位置を適用させます。
例:=IFS(LEFT(A2,1)="3", TEXT(A2,"0#-####-####"), TRUE, TEXT(A2,"0##-####-####"))
💡 ポイント:最後の条件を「TRUE」にすることで、それより前の条件と一致しなかった場合に最後の「値」を返します。
IFS関数の引数:(条件1, 値1, [条件2, 値2, 条件3, 値3…])
📖 条件が3つ以上の場合:
例:=IFS(LEFT(A3,3)="120", TEXT(A3,"0120-###-###"), LEFT(A3,1)="3", TEXT(A3,"0#-####-####"), TRUE, TEXT(A3,"0##-####-####"))