Excelで住所や商品コード、電話番号などを扱っていると、不要な記号、特定の文字列、空白だけを消したい場面があります。

手作業でセルを1つずつ編集すると時間がかかり、元データを壊してしまう心配もあります。

エクセルでは、置換機能を使った一括削除、SUBSTITUTE関数を使った文字の除去、複数条件への対応など、目的に応じた方法を選べます。

特定の文字を消す主な方法は、置換で直接削除する方法、SUBSTITUTE関数で別列に結果を出す方法、複数の不要文字を段階的に処理する方法です。

この記事では、関数と置換を使って特定の文字を消す方法を、サンプル表と操作イメージを交えて解説していきます。

 

エクセルで特定の文字を消す方法1【置換で一括削除】

それではまず、検索と置換を使って同じ文字をまとめて消す方法について解説していきます。

商品名 削除したい文字 削除後のイメージ
りんご【特売】 【特売】 りんご
みかん【特売】 【特売】 みかん

 

検索と置換を開く操作

置換機能は、選択した範囲やシート内にある同じ文字列を、まとめて別の文字列へ変更できる機能です。

消したい文字を置換後の文字列に何も入力せず指定すると、対象の文字だけを削除できます。

まず、削除したいデータがあるセル範囲をドラッグして選択します。

エクセルで特定の文字を消す方法1【置換で一括削除】 - 検索と置換を開く操作

表全体を対象にする場合は、表内の任意のセルをクリックしてから操作しても構いません。

キーボードでCtrlキーとHキーを同時に押すと、検索と置換の画面が開きます。

リボンから操作する場合は、ホームタブの右側にある検索と選択をクリックし、置換を選びましょう。

置換前の文字列には消したい文字を入力し、置換後の文字列は空欄のままにすることが基本です。

 

置換前と置換後の入力

検索と置換のダイアログが表示されたら、検索する文字列に削除対象を入力します。

たとえば、セル内の【特売】を消したいときは、検索する文字列へ【特売】と入力します。

エクセルで特定の文字を消す方法1【置換で一括削除】 - 置換前と置換後の入力

置換後の文字列には、スペースも入力せず空欄のままにしてください。

この状態で置換をクリックすると、現在選択しているセルから順に内容を確認しながら削除できます。

対象が多く、すべて同じ条件で問題ない場合は、すべて置換をクリックすると一括処理が可能です。

一括置換は元に戻す操作ができるうちに確認することが大切です。

置換結果として何件変更したかが表示されたら、OKを押して内容を確認します。

 

範囲指定と置換時の注意点

置換を実行する前に、どの範囲が選ばれているかを確認しましょう。

範囲を選択してから置換すれば、その選択範囲だけに処理を限定できます。

選択せずにすべて置換を行うと、アクティブなシート内にある同じ文字列が広く削除される可能性があります。

商品名だけでなく備考欄や注記にも同じ文字がある場合、意図しない箇所まで消えることがあります。

不安があるときは、ファイルを保存してから操作するか、最初は置換を使って1件ずつ結果を確認する方法が安心です。

【操作のポイント】削除対象の列だけを選択してから置換を開くと、別の列を誤って変更しにくくなります。

 

エクセルで特定の文字を消す方法2【SUBSTITUTE関数】

続いては、元のセルを残しながら別のセルに削除結果を表示するSUBSTITUTE関数を確認していきます。

A列 元データ B列 数式 B列 結果
東京都-新宿区 =SUBSTITUTE(A2,”-“,””) 東京都新宿区
大阪府-大阪市 =SUBSTITUTE(A3,”-“,””) 大阪府大阪市

 

SUBSTITUTE関数の基本構文

エクセルで特定の文字を消す方法2【SUBSTITUTE関数】 - SUBSTITUTE関数の基本構文

SUBSTITUTE関数は、文字列の中から指定した文字や文字列を別の文字列へ置き換える関数です。

削除したい場合は、置き換え後の文字列を空の文字列として指定します。

=SUBSTITUTE(文字列,検索文字列,置換文字列)

たとえばA2セルのハイフンを消す数式は、=SUBSTITUTE(A2,”-“,””)です。

最初のA2は元の文字列が入っているセル、2つ目の”-“は検索するハイフン、最後の””は何も置き換えない指定です。

ダブルクォーテーション2つだけの””は、Excelでは空の文字列を意味します。

元データをそのまま残せるため、住所や管理番号を加工する業務では特に使いやすい方法です。

 

数式の入力とオートフィル

サンプルデータで1行目に見出しがある場合、最初のデータは2行目から始まります。

たとえばA列に元の文字列があり、B列に結果を出すなら、B2セルへ数式を入力します。

エクセルで特定の文字を消す方法2【SUBSTITUTE関数】 - 数式の入力とオートフィル

=SUBSTITUTE(A2,”-“,””)を入力してEnterキーを押すと、A2セル内のハイフンだけが削除された値が表示されます。

次に、B2セル右下の小さな四角であるフィルハンドルを下方向へドラッグします。

これによりB3以降ではA3、A4のように参照先が自動で変わり、各行の文字列をまとめて処理できます。

数式をコピーするときは、先頭セルで期待どおりの結果になることを確認してからオートフィルを行いましょう。

データ量が多い場合は、フィルハンドルをダブルクリックすると、隣接するデータ列の最終行付近まで数式をコピーできます。

 

結果を値に変換する手順

SUBSTITUTE関数の結果は数式なので、元のA列が変わるとB列の結果も連動して変わります。

加工後の文字列を固定したい場合は、数式の結果を値として貼り付けましょう。

B列の結果範囲を選択してコピーし、同じ範囲または別の場所で右クリックします。

貼り付けのオプションから値を選ぶと、数式ではなく表示結果だけがセルに残ります。

値として貼り付けた後は、元データを変更しても削除済みの結果は変化しません。

元の列を置き換える必要がある場合も、最初に別列で結果を確認してから値貼り付けを行うと安全です。

【操作のポイント】関数で結果を作成してから値貼り付けを行えば、置換を直接実行するよりも確認と復元がしやすくなります。

 

複数の特定文字を消す数式

続いては、ハイフンと空白のように複数の不要な文字を消す数式について確認していきます。

A列 元データ 削除対象 結果
123-456 789 ハイフンと半角空白 123456789
ABC- 123 全角ハイフンと半角空白 ABC123

 

SUBSTITUTE関数を入れ子にする方法

削除したい文字が2種類以上ある場合は、SUBSTITUTE関数の中にさらにSUBSTITUTE関数を書きます。

=SUBSTITUTE(SUBSTITUTE(A2,”-“,””),” “,””)

この数式では、内側のSUBSTITUTE関数が最初にハイフンを削除します。

その結果に対して外側のSUBSTITUTE関数が半角スペースを削除する仕組みです。

複数文字の削除では、内側から順番に処理されることを理解すると数式を読みやすくなります。

全角スペースも消したい場合は、さらにSUBSTITUTE関数を追加し、検索文字列に全角スペースを指定します。

=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2,”-“,””),” “,””),” ”,””)

見た目では区別しにくい半角空白と全角空白は、別の文字として扱われる点に注意が必要です。

 

全角と半角の記号の違い

電話番号やコードに含まれるハイフンには、半角の-と全角の-が混在していることがあります。

SUBSTITUTE関数は、指定した文字と完全に一致する文字だけを置換します。

そのため、半角ハイフンを指定した数式では全角ハイフンは削除されません。

削除できない文字が残る場合は、文字の全角半角や種類が異なっていないか確認しましょう。

数式バーでセルの内容を確認し、実際に使われている記号をコピーして検索文字列へ貼り付ける方法も有効です。

波線、スラッシュ、中黒、かっこなども同様に、対象の文字を正確に指定する必要があります。

 

複数削除の数式入力イメージ

住所データ.xlsx – Excel − □ ×
ファイル ホーム 挿入 ページ レイアウト 数式 データ 校閲 表示
貼り付け
太字 B
罫線
中央揃え
数式
fx=SUBSTITUTE(SUBSTITUTE(A2,”-“,””),” “,””)
A B C
1 元データ 削除結果
2 123-456 789 123456789
3 987-654 321
B2へ数式を入力 ←

このようにB2セルへ数式を入力し、先頭セルの結果が正しいことを確認します。

その後はB2セルのフィルハンドルを下へ引っ張り、下の行へ数式をコピーしましょう。

数式を入れた先頭セルだけを確認してからオートフィルする流れなら、誤った条件を大量のデータへ反映しにくくなります。

【操作のポイント】不要文字が増えたときは、SUBSTITUTE関数を1つずつ追加し、どの文字を消す処理なのかを確認しながら作成します。

 

空白や改行を消す方法

続いては、見た目では気付きにくい空白や改行を削除する方法について確認していきます。

元データの状態 使用する関数 処理内容
前後や途中に余分な空白 TRIM 連続した半角空白を整理
セル内の改行 SUBSTITUTEとCHAR 改行コードを削除

 

半角スペースを整理するTRIM関数

TRIM関数は、文字列の先頭と末尾にある余分な半角スペースを削除し、単語間の連続した半角スペースを1つにまとめる関数です。

=TRIM(A2)

入力ミスによって文字列の前後に空白が入っているデータでは、TRIM関数が役立ちます。

ただし、TRIM関数は単語間の半角スペースを完全に消す関数ではありません。

すべての半角スペースを削除したいときは、TRIM関数ではなくSUBSTITUTE関数を使います。

氏名の前後に余白だけがある場合と、商品コード中の空白をすべて消したい場合では、選ぶ関数が変わります。

 

全角スペースを削除する数式

日本語の氏名や住所には、全角スペースが含まれているケースがあります。

全角スペースはTRIM関数だけでは期待どおりに処理できない場合があるため、SUBSTITUTE関数を組み合わせます。

=SUBSTITUTE(A2,” ”,””)

上の数式では、A2セルにある全角スペースをすべて空欄へ置換します。

半角スペースも全角スペースも削除するなら、それぞれを指定したSUBSTITUTE関数を入れ子にします。

空白は見えない文字なので、削除結果が変わらないように見えるときほど数式バーで元データを確認することが重要です。

データの照合やVLOOKUP関数で一致しない原因が、余分な空白であることも少なくありません。

 

セル内改行を削除する方法

AltキーとEnterキーで入力したセル内改行は、画面では改行として見えますが、データとしては改行コードを含んでいます。

Windows版Excelでセル内改行を削除する場合は、CHAR関数で10を指定します。

=SUBSTITUTE(A2,CHAR(10),””)

改行を空白へ置き換えたい場合は、最後の””を” “に変更します。

住所の途中で改行されているときなど、文字をつなげずに区切りを残したい場面で便利です。

改行を削除すると前後の文字が連結するため、必要に応じて半角空白へ置換しましょう。

【操作のポイント】空白と改行は表示上では分かりにくいため、処理前後の文字数や数式バーの内容も確認します。

 

特定の文字だけを残すデータ整理

続いては、削除を繰り返して必要な文字だけを残すデータ整理について確認していきます。

A列 元データ 整理の目的 結果例
TEL 03-1234-5678 TELと記号を削除 0312345678
No. A-001 不要な接頭語と空白を削除 A001

 

固定の接頭語を削除する方法

電話番号のTELや、管理番号のNo.のように、毎回同じ位置にある文字列はSUBSTITUTE関数で削除できます。

たとえばA2セルのTELを消す場合は、=SUBSTITUTE(A2,”TEL”,””)と入力します。

続けて空白やハイフンも消すなら、各文字を対象にしたSUBSTITUTE関数を追加します。

文字列の一部を消す場合でも、元データに含まれる表記と同じ大文字小文字、記号、空白を指定することが必要です。

表記がTEL、Tel、電話のように複数あるデータでは、置換を複数回行うか、データをあらかじめ統一してから処理します。

 

数字だけを扱いたい場合

電話番号や郵便番号では、ハイフンや括弧を除き、数字だけを使いたいことがあります。

決まった記号だけを取り除くなら、SUBSTITUTE関数を重ねる方法が分かりやすい選択です。

たとえば括弧、ハイフン、半角空白を順番に空欄へ置き換えると、数値部分だけに近い文字列を作れます。

ただし、文字列中に予期しない文字が混ざる可能性がある場合は、削除対象を増やすだけでは十分ではないかもしれません。

先頭の0を残す電話番号や郵便番号は、数値へ変換せず文字列として扱うことが基本です。

セルの表示形式を文字列に設定するか、数式結果をそのまま文字列として管理しましょう。

 

データを分けて検証する考え方

大量データを一度に加工すると、例外的な表記を見落としやすくなります。

まずは数件のサンプル行で数式を作り、長い文字列、空欄、記号だけのセルなども確認します。

結果列の隣にLEN関数を入れると、文字数が予想と違うデータを探す手掛かりになります。

=LEN(B2)

たとえば電話番号を数字10桁または11桁に整える作業では、文字数を確認することで削除漏れを発見しやすくなります。

空白セルでエラーが出ないか、すでに記号がないセルでも結果が正しいかも確認しましょう。

【操作のポイント】加工用の列を残したまま検証し、問題のないことを確認してから値貼り付けや元列への反映を行います。

 

まとめ エクセルで特定の文字を消す方法(置換・一括・関数)

エクセルで特定の文字を消すには、同じ文字をその場でまとめて削除したいときは検索と置換、元データを残して加工したいときはSUBSTITUTE関数を使う方法が便利です。

置換では、検索する文字列へ削除したい文字を入力し、置換後の文字列を空欄にすると一括削除できます。

SUBSTITUTE関数では、=SUBSTITUTE(A2,”削除したい文字”,””)の形で、元セルから不要な文字を除いた結果を別列へ表示できます。

ハイフン、半角空白、全角空白、改行などが複数混在する場合は、SUBSTITUTE関数を入れ子にして順番に処理しましょう。

全角と半角、見えない空白、セル内改行は別の文字として扱われるため、削除できない場合は元データの文字を確認することが重要です。

大量のデータでは、最初に数行で結果を検証し、問題がなければオートフィルやすべて置換で対象範囲へ広げると、効率と正確性を両立できます。

ABOUT ME
white-circle7338
私自身が今まで経験・勉強してきた「エクセル」「ビジネス用語」「生き方」などの情報を、なるべくわかりやすく、楽しく、発信していきます。 一緒に人生を楽しんでいきましょう