TRIM関数で文字列からスペース(余白)を削除する方法|エクセル

他部門からのデータやインターネットからのデータを
エクセルにコピペした際に、スペースが多用されていて、
困ったケースはありませんか?
今回はTRIM関数を使った処理にいてご紹介します。
TRIM関数を使うことで、文字列の前後に入ったスペースや、
文字列間に複数挿入されたスペースを整理できます。

なお、この方法は元の文字列を残したまま
別のセルで余分なスペースを削除した文字列を作成したい場合に有効です

元の文字列を直接操作する場合は、先に下記ページをご参考ください

あわせて読みたい
置換機能って使ってる? 余分なスペースも削除できる|エクセル この記事は約3分で読めます このスペース邪魔!と思ったケースないですか?置き換え機能を使うとラクに整理できますので、まだ知らない方は是非この機会にご確認くださ...
この記事でわかること

文字列に含まれる余分なスペースを削除した文字列を別セルに作成する方法
・TRIM関数を使った余分なスペースの処理について
・TRIM関数と他の関数をかけ合わせた応用方法について

目次

TRIM関数とは

TRIM関数とは、セル内の文字列に含まれるスペースを以下の方法で処理する関数です
・文字列の前後のスペース
 →不要とみなして削除します
・文字列の間に存在するスペース
 →スペースが1個の場合は必要とみなして残します
 →スペースが2個以上の場合は1個を残して削除します

関数は次のように表します

=TRIM(文字列)

例題でTRIM関数のイメージをつける

それでは、TRIM関数がどのような処理になるのか
数パターンの例題で見ていきましょう

パターン① 文字列の前にスペースがある場合

次の図で、文字列の前にスペースが入っている場合に
TRIM関数で除去できるか見てみましょう

まず、A列に元となる文字列を入れてみました
文字列の前にスペースを入れましたが、
見づらいので、左詰めでA列は表示し、
スペースの数をB列に書いてます

C列がTRIM関数の使用結果です
C列にセットされている関数は、
D列に注記しておきました

結果は、文字列の前のスペースは、
全角半角問わず、除去され
のが分かります

このケースで実際、社内でたまに見る例をご紹介します

上記のような資料が回ってきて、
集計の前処理が面倒なケースありませんか?

パターン② 文字列の後にスペースがある場合

今度は文字の後にスペースが入っている場合です
こちらは見落としやすくて非常に厄介です

使い方はパターン①と同様ですので結果だけご紹介します
(A列とC列は右詰めにしました)

TRIM関数で一掃できますね

パターン③ 文字と文字の間にスペースが入っている場合

TRIM関数のクセを理解する上で、
このパターンが一番重要かもしれません
まずは下図をご覧ください

規則性は見えましたか?
・文字列の間にスペースが1個の場合は残します
・2個以上のスペースがつながっている場合は1個だけ残します
・残すスペースは最初のスペースです
 →スペースが、半角、全角の順にあった場合、半角となります

ここまでがTRIM関数の基本です

全角、半角スペースを統一する方法

例題でも見たように、
TRIM関数だけでは半角と全角のスペースを上手く整理できません

そこで、応用編としてSUBSTITUTE関数と組み合わせる方法をご紹介します

SUBSTITUTE関数とは
文字列内の特定の文字を置き換える関数
です

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

なお、置換対象は省略可能です(今回は使いません)

SUBSTITUTE関数にTRIM関数を入れ子にすることで、
文字列間のスペースが半角でも全角でも気にすることなく、
どちらかに統一が可能です

上図でイメージを掴んでいただければと思いますが、
C列の結果が全て全角スペースに統一できています。

=SUBSTITUTE(文字列, 検索文字列, 置換文字列
 文字列→TRIM関数の結果
 検索文字列→半角スペース
 置き換え文字列→全角スペース
以上により、全角スペース置き換えることで全て全角スペースとなります

TRIM関数で消せないケースについて

私自身は未経験ですが、
消せないスペースというのが存在するようですので、
対処法を備忘しておきます

ネット上からエクセルにコピペした際に
見えない空白が存在することがあります

それは、文字コード160と呼ばれるもので、
HTMLで使用されるNBSP(ノーブレークスペース)というものです

仮にA1セルに見えないスペースがが存在した場合、
下記の関数で対応が可能です

=TRIM(CLEAN(SUBSTITUTE(A1,CHAR(160),” “)))

最後に

いかがだったでしょうか?
余分なスペースは無いに越したことはないですが、
他部署やネット上からのデータについて、
前処理の方法として使えるケースはあるかもしれません

お役に立てれば、幸いです

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

CAPTCHA


目次