エクセルでスペースを削除する方法|TRIM関数・置換・SUBSTITUTE関数で、空白をまとめて消すやり方

スペースの削除|TRIM・置換 日付・文字列

名前や商品名の前後に、余計なスペースが入っていて、VLOOKUP関数でうまく検索できない。同じ名前なのに、別のデータとして集計される。そんな原因の多くは、目に見えにくい「スペース」です。

この記事では、エクセルでスペースを削除する3つの方法(TRIM関数、置換、SUBSTITUTE関数)と、それぞれの使い分け、削除できないときの原因を、図解で説明します。

スペースが残っていると起こる困りごと

  • VLOOKUP関数や、COUNTIF関数で、同じ名前なのに、一致しない
  • 重複の削除や、フィルターで、別々の項目として扱われる
  • 並べ替えたときに、スペースのあるデータが、先頭にまとまる
  • 文字数が、見た目と合わない

3つの方法の使い分け

方法削除されるスペース向いている場面
TRIM関数前後のスペースと、単語間の余分なスペース(1つは残す)名前や住所の、余計なスペースをそろえたい
置換(Ctrl+H)指定したスペースを、すべて削除すべてのスペースを、一括で消したい
SUBSTITUTE関数指定したスペースを、すべて削除(元データは残る)元データを残して、別のセルに結果を出したい

TRIM関数で、余分なスペースを削除する

=TRIM(文字列)

TRIM(トリム)関数は、文字列の前後にあるスペースを削除し、単語の間のスペースが2つ以上ある場合は、1つにまとめます。全角のスペースも、半角のスペースも、対象になります。

TRIM関数で、A2の前後のスペースを削除する式の図解

結果は、関数のセルに表示されます。元のデータを置き換えたいときは、結果をコピーして、元のセルに「値」として貼り付けます。

置換で、スペースを一括削除する

手順1|スペースを削除したい範囲を選ぶ

手順1:スペースを削除したい範囲を選ぶ

手順2|Ctrl+H を押して、「検索と置換」ダイアログを開く

手順2:Ctrl+H を押して、「検索と置換」ダイアログを開く

手順3|「検索する文字列」に、スペースを1つ入力する(全角と半角は、別々に行う)

手順3:「検索する文字列」に、スペースを1つ入力する(全角と半角は、別々に行う)

手順4|「置換後の文字列」は、空欄のままにする

手順4:「置換後の文字列」は、空欄のままにする

手順5|「すべて置換」をクリックする

手順5:「すべて置換」をクリックする

全角のスペースと、半角のスペースは、別の文字として扱われます。両方を消したいときは、それぞれ置換を行います。単語の間のスペースも、すべて消えるので、「田中 太郎」が「田中太郎」になります。

SUBSTITUTE関数で、すべてのスペースを削除する

=SUBSTITUTE(A2," ","")

「” “」の部分に、削除したいスペースを入れて、「””」(空の文字)に置き換えます。半角スペースを削除する場合は、「” “」の中に、半角スペースを入力します。全角スペースを消したいときは、中を全角スペースにします。

両方を削除したいときは、SUBSTITUTE関数を重ねて、それぞれを指定します。TRIM関数と組み合わせると、前後と、間の両方を整えられます。

スペースを削除できないときの原因

症状原因対処
TRIMで、スペースが消えないスペースに見えて、実は別の文字(ノーブレークスペースなど)別のセルに、その文字をコピーして、SUBSTITUTE関数や置換で指定する
置換で、見つからない全角と半角が、違う全角と半角を、それぞれ指定する
数値の前後のスペースが、消せない数値が、文字列になっているTRIM関数のあとに、VALUE関数で数値に変換する
改行が残る改行は、スペースではないSUBSTITUTE関数で、改行(Ctrl+Jで入力)を、空に置き換える

もう一歩進める|スペースの削除の応用的な使い方

名前の姓と名を、スペースで分ける

「田中 太郎」のように、スペースで区切られている名前は、「データ」タブの「区切り位置」で、スペースを区切り文字にすると、姓と名を、別々の列に分けられます。

スペースを削除した結果を、元のセルに戻す

関数の結果を、そのままコピーして、元のセルに貼り付けると、数式が壊れます。「形式を選択して貼り付け」で「値」を選んで貼り付けると、結果の文字だけが、元のセルに入ります。

スペースが、いくつ入っているかを数える

「=LEN(A2)-LEN(SUBSTITUTE(A2,” “,””))」と入力すると、セルの中の、半角スペースの個数を数えられます。データをきれいにする前に、問題の大きさを確認したいときに使えます。

スペース削除のよくある質問

データの量が多くても、TRIM関数を使えますか?

使えます。1つのセルに、TRIM関数を入力して、下へコピーすれば、何千行でも、一度に処理できます。元のデータは、別の列に残るので、安心して試せます。

TRIM関数は、日本語の文字列にも使えますか?

使えます。全角のスペースも、半角のスペースも、対象になります。単語の間のスペースは、1つ残るため、日本語の名前などでは、残った1つのスペースが気になる場合は、置換やSUBSTITUTE関数で、取り除きます。

名簿や住所録を整えるときの順番

名簿や住所録のデータを整えるときは、次の順番で行うと、トラブルが起きにくくなります。

  • 元のデータを、別のシートにコピーしておく
  • TRIM関数で、前後と、間の余分なスペースをそろえる
  • 結果を「値」として貼り付けて、元の列に戻す
  • 全角と半角が混ざっているときは、そろえてから、重複チェックをする

この順番で整えておくと、VLOOKUP関数や、重複の削除、ピボットテーブルの結果が、安定します。

まとめ

  • 前後や、余分なスペースだけを整えるなら、TRIM関数
  • すべてのスペースを、一括で消すなら、置換(Ctrl+H)
  • 元データを残して、すべて消すなら、SUBSTITUTE関数
  • 全角と半角のスペースは、別々に指定する
  • 消えないときは、別の文字や、改行が入っていないかを確認する

コメント

タイトルとURLをコピーしました