TRIM関数の使い方|余分な空白を消す・全角スペースも消える・消えないときの対処

TRIM関数の使い方|余分な空白を消す・全角スペースも消える・消えないときの対処

エクセルで、文字列の前後にある余分な空白(スペース)を消すには、TRIM関数を使います。たとえば「 山田太郎 」の前後の空白は、=TRIM(A3) で消えて「山田太郎」になります。

2つのセルの文字が同じかを「〇」「×」で判定したいときは、文字列を比較する方法(一致・不一致の判定)を見てください。

TRIM関数は、単語の間に空白が続いているときは1つだけ残して整えます。日本語版のエクセルでは、半角だけでなく全角の空白も対象です。この記事では、TRIM関数の基本、全角の空白の扱い、間の空白も全部消す方法、TRIM関数で消えない空白の直し方を、1つの表で説明します。下の練習ツールで、元の文字列を書き換えて結果の変わり方を試せます。

目次

TRIM関数の書き方

TRIM関数の構文
数式=TRIM(文字列)
ひとことで余分なスペースを削除
文字列
文字列です
消えるもの残るもの
文字列の前(先頭)の空白単語と単語の間の空白(1つだけ残る)
文字列の後ろ(末尾)の空白空白以外の文字
間に続いている2つ目以降の空白ノーブレークスペース(Webからコピーした空白など)

まず動かしてみよう|この記事のサンプルをその場で試せます

練習用ファイルをダウンロードしなくても、記事と同じデータ・同じセル番地のサンプルをここで動かせます。黄色いセルを書き換えると、結果がその場で変わります。各解説の最後にある「▶ この式を試す」を押すと、このツールの該当セルへ移動します。

TRIM関数の使い方|やりたいこと別の式

やりたいこと式(例)結果
前後の空白を消す=TRIM(A3)山田太郎
間の連続した空白を1つにする=TRIM(A4)Excel 関数
前後の全角の空白を消す=TRIM(A5)東京都
空白を消した後の文字数=LEN(TRIM(A7))7
間の空白も全部消す=SUBSTITUTE(A8,” “,””)山田太郎
空白を消して比べる=TRIM(A9)=”東京”TRUE
エクセルのTRIM関数で余分な空白を消した表
エクセルのTRIM関数で余分な空白を消した表

前後の空白を消す

1
結果を出したいセル(C3)を選びます。
2
「=TRIM(」と入力し、元の文字列のセル(A3)をクリックします。
3
「)」と入力して Enter キーを押します。
TRIM関数の式
数式=TRIM(A3)
ひとことで余分なスペースを削除
A3
文字列です

前後の半角の空白が消えて、結果は 山田太郎 です。見た目では分かりにくいですが、=LEN(A7) は 8 文字、=LEN(TRIM(A7)) は 7 文字になり、先頭の空白が1つ消えたことが分かります。

間の連続した空白を1つにする

「Excel 関数」のように、単語の間に空白が3つ続いているときは、1つだけ残ります。

TRIM関数の式
数式=TRIM(A4)
ひとことで余分なスペースを削除
A4
文字列です

結果は Excel 関数 です。間の空白を1つも残したくないときは、後の「間の空白も全部消す」を使います。

全角の空白も消える(日本語版のエクセル)

日本語版のエクセルの TRIM関数は、全角の空白も消します。実際に試すと、「 東京都 」は 東京都 に、「山田  太郎」(全角の空白2つ)は「山田 太郎」(全角の空白1つ)になりました。

ポイントポイント:間に全角と半角の空白が混ざっているときは、1つ目の空白が残ります。全角か半角のどちらかにそろえたいときは、先に SUBSTITUTE関数で変換します(SUBSTITUTE関数の使い方)。

間の空白も全部消す(SUBSTITUTE)

TRIM関数は間の空白を1つ残すので、すべての空白を消したいときは SUBSTITUTE関数を使います。

SUBSTITUTE関数の式
数式=SUBSTITUTE(A8," ","")
ひとことで文字を置き換える
A8
文字列です
" "
検索する文字です
""
置き換える文字です

結果は 山田太郎 です。全角の空白も消すときは、=SUBSTITUTE(SUBSTITUTE(A8," ","")," ","") のように入れ子にします。空白の削除は空白を削除する方法でもくわしく説明しています。

空白があると「一致しない」原因になる

「東京 」(後ろに空白)は、見た目は同じでも「東京」とは別の文字列です。実際に =A9="東京" は FALSE でしたが、TRIM関数で空白を消してから比べると TRUE になりました。

=TRIM(A9)="東京"

VLOOKUP関数や COUNTIF関数で「あるはずなのに見つからない」ときは、余分な空白が原因のことがよくあります(VLOOKUP関数の使い方)。

TRIM関数で消えない空白(ノーブレークスペース)

Webページからコピーした文字には、普通の空白に見えるノーブレークスペース(文字コード160)が入っていることがあります。これは TRIM関数では消えません。実際に「abc」の後ろにノーブレークスペースを付けた文字列は、TRIM関数を使っても4文字のままでした。

この場合は、先に SUBSTITUTE関数で普通の空白に変えてから TRIM関数を使います。

TRIM関数の式
数式=TRIM(SUBSTITUTE(A1,CHAR(160)," "))
ひとことで余分なスペースを削除
SUBSTITUTE(A1,CHAR(160)," ")
文字列です

こうすると、文字数は3文字になりました。

TRIM関数がうまくいかないときの確認表

症状考えられる原因対処
空白が消えないノーブレークスペースが入っているSUBSTITUTE(セル,CHAR(160),” “) で変えてから TRIM。
間の空白が1つ残るTRIM関数は間の空白を1つ残すSUBSTITUTE関数で全部消す。
改行が消えない改行は空白ではないCLEAN関数か SUBSTITUTE(セル,CHAR(10),””) を使う(改行を削除する方法)。
元のセルを直したいTRIM関数は別のセルに結果を出す結果をコピーして「値」で貼り付ける(形式を選択して貼り付け)。

TRIM関数のよくある質問

数字の前後の空白も消せる?

消せますが、結果は文字列になります。計算に使うときは VALUE関数で数値に戻します(VALUE関数の使い方)。

表全体の空白をまとめて消すには?

隣の列に TRIM関数の式を入れて下までコピーし、結果を値で元の列に貼り付けます。

あわせて読みたい:文字列を整える関連記事

練習用ファイル:練習用Excelファイル(.xlsx・無料)

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

この記事を書いた人

目次