エクセルで特定の文字を削除する関数の使い方まとめ
2018/01/16
エクセルで、特定の文字を関数で削除する方法 について紹介します。
使う関数は、「SUBSTITUTE関数」だけです。
SUBSTITUTE関数の使い方を覚えれば、以下のような事が簡単にできるようになります。
- 郵便番号や電話番号の「-(ハイフン)」だけを削除する
- 会社名の「(株)」の文字だけを削除する
- 名前の「様」だけを削除する
- セルに含まれる「空白」を削除する
SUBSTITUTE関数の「使い方」と、5つの「具体例」を元に、指定の文字を削除する方法を見ていきましょう。
スポンサーリンク目次
SUBSTITUTE関数の使い方
SUBSTITUTE関数とは、文字列の中に含まれる特定の文字を、別の文字に置き換えることができる関数 です。
=SUBSTITUTE(文字列, 検索文字列, 置換文字列)
■特定文字の削除に使う場合
文字列 | 削除したい文字が含まれる大元の文字列を指定。 セル番地を指定しても良い。 |
検索文字列 | 削除したい文字を入力。 |
置換文字列 | 「""(空の文字)」を入力。 |
本来は、文字を置き換えるために使う関数ですが、置換文字列 に「""(空の文字)」を指定することで、指定の文字を削除することができます。
使用例1: 郵便番号や電話番号の「ハイフン」を削除する
「150-0000」という7桁の郵便番号から、ハイフン(-)だけを削除して、「1500000」としたい場合は、以下のようにします。
=SUBSTITUTE( A2, "-", "" )
上の図では、セルA2の「150-0000」という文字列の中から、「-」を検索して「""(空の文字)」に置き換えています。結果、セルB2に「1500000」という文字列が表示されています。
3つ全ての行に同じ処理を適用させたい場合は、セルB2の式をドラッグするだけです。
ハイフンが2つある場合はどうでしょうか?
郵便番号とは違って複数のハイフンが含まれる「電話番号」も、郵便番号の場合と同じ式でハイフンを取り除くことができます。
検索文字列を変えれば、ハイフンだけではなく「様」や「(株)」といった文字も削除できます。郵便番号や電話番号だけでなく、銀行の「口座番号」や「住所」「氏名」など、色んな場面で使えるでしょう。
スポンサーリンク使用例2: 複数の文字を指定して同時に削除する
「〒150-0000」のような文字から、「〒」と「-」の両方を同時に削除して、「1500000」にしたい場合は、以下のようにSUBSTITUTE関数を2つ組み合わせて使います。
=SUBSTITUTE( SUBSTITUTE( A2, "〒", "" ), "-", "" )
まず、ピンクのマーカーの部分で「〒」を取り除きます。「〒」が取り除かれた「150-0000」という文字列が、外側のSUBSTITUTE関数の引数として渡されます。
次に、外側のSUBSTITUTE関数が「150-0000」から「-」を取り除き、「1500000」という文字列にします。結果、セルB2に「1500000」が表示されます。
このように、関数の中に関数を入れて使うことを、関数のネスト(入れ子)と言います。「関数が出力したデータ」を外側にある関数に渡して「引数」として使えるわけです。
この仕組みを応用すれば、3つだろうが4つだろうが、いくつでも組み合わせて、複数の特定の文字を同時に削除することが可能です。
■3つ入れ子にして使った例
=SUBSTITUTE( SUBSTITUTE( SUBSTITUTE( A2, "(株)", "" ), "〒", "" ), "-", "" )
使用例3: 半角と全角の空白を両方削除する
「半角」と「全角」の空白(スペース)は、それぞれ別の文字として認識されます。
そのため、半角と全角の空白を両方とも削除したい場合には、上で紹介した入れ子を使って「半角の空白」と「全角の空白」を両方指定します。
=SUBSTITUTE( SUBSTITUTE( A2, " ", "" ), " ", "" )
この例では、内側の関数で「半角」のスペースを削除し、外側の関数で「全角」のスペースを削除しています。
空白以外にも、ハイフン、カタカナ、アルファベットなども同様に半角と全角が区別されます。
使用例4: 大文字と小文字のアルファベットを両方削除する
「大文字」と「小文字」のアルファベットなども区別されます。例えば、「A」と「a」は別の文字として扱われるので、両方削除したい場合は、関数を入れ子にして2つとも指定します。
=SUBSTITUTE( SUBSTITUTE( A2, "A", "" ), "a", "" )
この例では、内側の関数で「大文字」のAを削除し、外側の関数で「小文字」のaを削除しています。
「全角/半角」と同じように、「大文字/小文字」も区別されることを覚えておきましょう。
アルファベットのみを全て削除する方法については、「アルファベットを削除する方法」で詳しく解説していますのでそちらをご覧下さい。
スポンサーリンク使用例5: 特定の文字をセルで指定して削除する
削除したい文字を、SUBSTITUTE関数に直接入力するのではなく、セルで参照しても構いません。
=SUBSTITUTE( A2, $D$2, "" )
「特定の文字」をセルで参照する場合は、絶対参照を忘れないようにしましょう。絶対参照は、セルを指定したときにF4キーを押せば付けることができます。
削除したい文字が数多くある場合は、ここで紹介したように、削除したい文字を一元管理しておいて、そのつど参照するのが分かりやすくて便利でしょう。
また、「やっぱりハイフンはあった方がいい」という場合にも、付け替えが容易になります。
関数を使わずに指定文字を削除する
最後に、関数を使わずに、特定の文字を削除する方法についても触れておきます。
キーボードで「Ctrl + H」と押すと、「検索と置換」ダイアログボックスが表示されます。
「150-0000 」といった文字列から「-(ハイフン)」だけを取り除く場合の手順は以下の通りです。
- 「検索する文字列」に「-(ハイフン)」を入力
- 「置換後の文字列」には何も入力しない
- 「すべて置換」をクリックして処理を実行する
指定の範囲のみ削除したい場合は、必ず適用させたい範囲を選択してから行って下さい。例えば、A列のみ「-」を削除したい場合は、AをクリックしてA列のみ選択してから置換を行います。
「検索と置換」ダイアログボックスを使う方法は、関数を使わないのでとても手軽で簡単ですが、SUBSTITUTE関数を使う場合とは違って、元の値は残さずにそのまま編集してしまうことに注意して下さい。
元の値も残したい場合は、上で紹介したSUBSTITUTE関数を使ったほうがいいです。
指定の文字を削除する方法についての情報は以上です。
スポンサーリンク