ExcelのTRIM関数:不要な空白・スペースを一括削除する方法
ExcelのTRIM関数を使って、VLOOKUPのエラー原因になる前後の不要な空白や重複スペースを一括削除する方法を解説。Webデータ特有の特殊な空白の消し方も網羅。
著者 Ayoub Farid · · 4 分で読めます
余分なスペースは目に見えないため、さまざまなトラブルの原因になります。VLOOKUP関数が #N/A エラーを返したり、COUNTIF関数が集計対象を見落としたり、重複データが正しく検出されなかったりします。こうした問題の多くは、TRIM関数で解決できます。
TRIM関数でできること
=TRIM(text)
- 文字列の先頭と末尾にあるスペースを削除します
- 単語と単語の間にある連続した複数のスペースを、半角スペース1つだけにまとめます
例えば、" Sam Lee " は "Sam Lee" に変換されます。
列全体のスペースを一括で削除する手順
- 元データの隣の空いている列に
=TRIM(A2)と入力し、下方向にオートフィルします。 - 作成した新しい列全体をコピーします。
- 元のデータ列に「形式を選択して貼り付け」>「値」で上書きします(または、きれいになった列をそのまま残し、元の列を削除しても構いません)。
Excel 365やGoogleスプレッドシートなら、セル範囲全体を一度に指定できます。=TRIM(A2:A500) と入力するだけで、結果がスピル(自動展開)されます。
他のExcel関数の中でTRIMを使う
元データを事前に修正する代わりに、数式の中でリアルタイムにスペースを取り除くことも可能です。
=VLOOKUP(TRIM(F2),$A$2:$C$500,3,FALSE)
=PROPER(TRIM(A2))
TRIM関数でスペースが消えない場合:ノーブレークスペースの対処法
Webページなどからコピーしたデータには、「ノーブレークスペース(文字コード160)」が含まれていることがよくあります。通常のTRIM関数はこのスペースを無視してしまいます。そのため、まずは通常のスペースに置換してからTRIMを適用します。
=TRIM(SUBSTITUTE(A2,CHAR(160)," "))
その他の目に見えない不要な文字を削除する
システムからエクスポートしたデータに含まれる改行コードや制御文字には、CLEAN関数を使用します。
=TRIM(CLEAN(A2))
隠れたスペースを見つけ出す方法
=LEN(A2) を使うと文字数をカウントできます。もし「Latte」という5文字の単語で結果が「6」と返ってきた場合、見えないスペースが存在しています。=LEN(A2) と =LEN(TRIM(A2)) の数値を比較してみるのが確実です。
あわせて覚えたいデータ整形関数
- UPPER、LOWER、PROPER:大文字・小文字の変換(TEXT関数と一緒に解説)
- LEFT、RIGHT、MID:指定した文字数を切り出す
- テキストの分割:複数列に文字列を分ける
- 重複データの削除
乱れたデータの整形(TRIM、TEXT、日付の処理など)は、近日登場予定のCellioでも学べるユニットの1つです。
よくある質問
Excelでスペースを削除するにはどうすればよいですか?
余分なスペースだけを取り除く場合は =TRIM(A2) を使用します。すべてのスペースを完全に消去したい場合は =SUBSTITUTE(A2," ","") を使ってください。
なぜTRIM関数を使ってもスペースが消えないのですか?
データにWeb由来の特殊な空白(ノーブレークスペース)が含まれているためです。=TRIM(SUBSTITUTE(A2,CHAR(160)," ")) を試してみてください。
TRIM関数は単語と単語の間のスペースも削除しますか?
単語間の半角スペース1つ分は維持され、2つ以上連続している余分なスペースのみが削除されます。
TRIM関数はGoogleスプレッドシートでも使えますか?
はい、同様に使えます。