エクセルで名簿や商品一覧を扱っていると、入力した覚えのない空白がセルの先頭や末尾に残り、検索や照合がうまくできないことがあります。
見た目には同じ文字列でも、余分なスペースが含まれるとCOUNTIF関数、VLOOKUP関数、XLOOKUP関数などの結果が一致しない場合があります。
このような文字列の乱れを整える際に役立つのがTRIM関数です。
TRIM関数は、文字列の先頭と末尾にある半角スペースを削除し、単語間に連続した半角スペースがあれば1つに整える関数です。
この記事では、基本の数式、コピー貼り付け時の注意点、削除できない全角スペースへの対処まで順番に確認していきましょう。
エクセルでTRIM関数を使う基本操作

| A列 元データ | B列 TRIM後 |
|---|---|
| 佐藤 花子 | 佐藤 花子 |
| 東京 営業部 | 東京 営業部 |
それではまず、TRIM関数で余分な半角スペースを削除する基本操作について解説していきます。
TRIM関数の書式
TRIM関数の書式は、TRIM(文字列)です。
=TRIM(A2)
文字列には、空白を整理したいセル番地、文字列を直接入力した値、または別の関数の結果を指定できます。
たとえばA2セルに「 半角スペース付きの文字列 」が入力されている場合、B2セルに数式を入力すると、前後の半角スペースを取り除いた結果が表示されます。
サンプルデータでは1行目を見出し行とし、実際のデータは2行目から始まる前提で数式を入力します。
文字列の途中に半角スペースが2個以上連続しているときも、TRIM関数は連続部分を半角スペース1個へ変更します。
氏名、部署名、住所の一部など、単語の間隔をそろえたい場面でも便利です。
セルに数式を入力する手順
まず、元データがA列にある場合は、その右隣のB2セルを選択します。
数式バーまたはセル内に=TRIM(A2)と入力して、Enterキーを押しましょう。
B2セルには、A2セルの先頭と末尾の半角スペースが削除された文字列が表示されます。
元データそのものを直すのではなく、整形済みの結果を別列に作る操作です。
この方法なら、処理前のデータを残したまま結果を確認できます。
意図しない文字列変換を防ぐためにも、最初は別列で試す方法が安心です。
オートフィルによる数式のコピー
B2セルで結果を確認できたら、セル右下に表示される小さな四角形のフィルハンドルを下方向へドラッグします。
すると、B3セルには=TRIM(A3)、B4セルには=TRIM(A4)というように、行番号を自動調整した数式がコピーされます。
隣接するA列にデータが連続している場合は、フィルハンドルをダブルクリックして最終行まで数式を反映することも可能です。
数式のコピー後は、空白があったセルと空白がなかったセルの両方を確認すると、処理の違いを把握しやすくなります。
【操作のポイント】最初の数式は必ずデータ開始行のB2セルに入れ、結果を確認してからオートフィルを実行します。
TRIM関数で削除できるスペースの種類

| 入力内容 | =TRIM(A2)の結果 |
|---|---|
| 半角スペースあり | 半角スペースあり |
| 営業 部 | 営業 部 |
続いては、TRIM関数がどのような空白を処理するのか確認していきます。
先頭と末尾の半角スペース
TRIM関数が最も得意とするのは、文字列の先頭や末尾にある半角スペースです。
Webサイト、CSVファイル、他システムからコピーしたデータには、入力者が気付きにくい余分な半角スペースが混ざることがあります。
この空白はセル内で見えにくい一方、比較や検索の結果には影響します。
たとえば「田中」と「田中 」は人の目では同じように見えますが、エクセルでは異なる文字列として扱われます。
TRIM関数を使うと、比較前に文字列の端を整えられるため、照合ミスの予防につながります。
途中に連続する半角スペース
TRIM関数は、単語の途中にある連続した半角スペースも1個にまとめます。
たとえば「大阪 支店」のように半角スペースが2個ある文字列は、「大阪 支店」へ整形されます。
ただし、途中の半角スペースをすべて削除する関数ではありません。
単語の区切りとして必要な半角スペース1個は残る仕様です。
「山田 太郎」のような全角スペースは、TRIM関数だけでは通常そのまま残ります。
空白を完全に除去したい場合は、SUBSTITUTE関数との組み合わせを検討しましょう。
全角スペースと特殊な空白文字
日本語データで特に注意したいのが、全角スペースです。
全角スペースは見た目が広く、氏名の区切りとして意図的に使われる場合もあります。
TRIM関数は基本的に半角スペースを対象とするため、全角スペースを消したい目的にはそのままでは対応できません。
また、Webページからコピーした文字列には、改行しないスペースなどの特殊な空白文字が含まれることがあります。
空白が消えない場合は、TRIM関数の故障ではなく、空白文字の種類が異なる可能性を考えることが大切です。
【操作のポイント】削除後も空白が残るときは、半角か全角か、コピー元に特殊文字がないかを確認します。
TRIM関数の数式を複数行へ適用する方法
| A列 氏名 | B列 整形結果 |
|---|---|
| 鈴木 一郎 | =TRIM(A2) |
| 高橋 次郎 | =TRIM(A3) |
続いては、TRIM関数を一覧データへ効率よく適用する方法を確認していきます。
オートフィルで最終行まで反映する操作
氏名や商品名が数十行、数百行に並んでいる場合、各セルへ数式を手入力する必要はありません。
B2セルに=TRIM(A2)を入力した後、フィルハンドルをダブルクリックすると、左隣のA列にデータがある範囲まで数式がコピーされます。
途中に空白行がある場合は、そこで自動コピーが止まることがあります。
その場合は必要な範囲を選択してから、CtrlキーとDキーで下方向へ数式をコピーする方法もあります。
大量データでは、先頭行、途中行、最終行の3か所を確認して、数式が正しい行を参照しているか確かめましょう。
テーブル機能で自動入力する方法
データ範囲をテーブルとして設定すると、計算列の数式を追加した際に同じ列へ自動的に数式が反映されます。
データ範囲を選択してCtrlキーとTキーを押し、先頭行をテーブルの見出しとして使用する設定を確認します。
テーブルの新しい列にTRIM関数を入力すると、同じ列にある各行へ数式が展開されます。
新しいデータ行を追加した場合にも数式が引き継がれるため、継続的に更新する一覧表に向いた方法です。
=TRIM([@氏名])
テーブル内ではセル番地の代わりに列見出しを使う構造化参照も利用できます。
数式の結果を値として置き換える操作
TRIM関数で整形した結果を別のシステムへ渡す場合、数式ではなく値だけを残したいことがあります。
そのときは、TRIM関数の結果が入った列をコピーし、貼り付け先で値の貼り付けを実行します。
ホームタブの貼り付けメニューから値を選ぶか、右クリックメニューの値貼り付けを使いましょう。
値へ置き換えた後は、元データ列を消す前に検索や照合の結果を確認することが重要です。
元データを別シートにバックアップしておけば、想定外の変換があっても戻りやすくなります。
【操作のポイント】元データを直接上書きする前に、TRIM関数の結果を値貼り付けして内容を確認します。

TRIM関数とSUBSTITUTE関数を組み合わせる方法
| A列 元データ | B列 整形結果 |
|---|---|
| 山田 太郎 | 山田太郎 |
| 東京 営業部 | 東京 営業部 |
続いては、全角スペースも処理したい場合のTRIM関数とSUBSTITUTE関数の組み合わせを確認していきます。
全角スペースを削除する数式
全角スペースをすべて削除したい場合は、SUBSTITUTE関数で全角スペースを空文字へ置き換えます。
=SUBSTITUTE(A2,” ”,””)
この数式では、A2セル内の全角スペースがすべて削除されます。
氏名の「山田 太郎」を「山田太郎」に統一したい場合などに使えます。
ただし、住所や文章では全角スペースに意味があるケースもあるため、削除前にデータの用途を確認しましょう。
全角スペースを残すか消すかは、見た目ではなく、後工程で文字列をどう利用するかで判断します。
TRIM関数と全角スペース削除の組み合わせ
先頭と末尾の半角スペースを取り除きながら、全角スペースも削除したい場合は、SUBSTITUTE関数をTRIM関数の中に入れます。
=TRIM(SUBSTITUTE(A2,” ”,””))
数式は内側のSUBSTITUTE関数から実行され、まずA2セルの全角スペースを空文字へ置き換えます。
次に外側のTRIM関数が実行され、残った先頭や末尾の半角スペースと、連続する半角スペースを整理します。
関数を重ねると複雑に見えますが、内側の結果を外側の関数で加工する仕組みです。
数式を読むときは、最も内側にある関数から順番に追うと、処理内容を理解しやすくなります。
全角スペースを半角スペースへ統一する数式
氏名の間や部署名の単語間にスペースを残したい場合は、全角スペースを削除するのではなく半角スペースへ置き換えます。
=TRIM(SUBSTITUTE(A2,” ”,” “))
この数式では、全角スペースが半角スペースに変換された後、TRIM関数によって余分な半角スペースが整理されます。
たとえば「 山田 太郎 」は「山田 太郎」という結果になります。
データを英数字中心のシステムへ渡すときや、入力ルールを半角スペースへ統一したいときに役立つ方法です。
【操作のポイント】全角スペースを削除するか半角へ変換するかは、氏名や住所など元データの意味に合わせて決めます。
TRIM関数で空白が削除できない場合の対処
| 症状 | 確認する内容 |
|---|---|
| 空白が残る | 全角スペースや特殊文字 |
| 検索で一致しない | 改行・文字コード・数値形式 |
続いては、TRIM関数を使っても問題が解決しない場合の確認方法を解説していきます。
改行コードが含まれている場合
セル内に改行が含まれている場合、TRIM関数だけでは改行を削除できません。
改行を削除したいときは、SUBSTITUTE関数でCHAR(10)を空文字に置き換えます。
=TRIM(SUBSTITUTE(A2,CHAR(10),””))
CHAR(10)は、Windows版エクセルでセル内改行として使われる文字コードです。
Webフォームの入力内容や複数行のメモを貼り付けたデータでは、見えない改行が混ざることがあります。
表示がそろわないときは、空白だけでなく改行も文字列の一部として含まれていないか確認します。
改行しないスペースへの対応
WebサイトやPDFからコピーしたデータには、通常の半角スペースとは異なる改行しないスペースが含まれる場合があります。
この文字はCHAR(160)で指定でき、TRIM関数だけでは削除されないことがあります。
=TRIM(SUBSTITUTE(A2,CHAR(160),” “))
この数式は、CHAR(160)を通常の半角スペースへ変換してから、TRIM関数で不要な空白を整理します。
コピー元によって文字コードが異なるため、結果を見ながら数式を調整する姿勢が必要です。
海外サイト由来のデータやHTMLを経由した文字列では、特殊スペースを疑うと解決の近道になります。
文字列として扱われていない場合
TRIM関数は文字列を整える関数ですが、数値や日付に見えるデータへ使っても、多くの場合は文字列として結果を返します。
商品コードの先頭のゼロや、日付の表示形式を保ちたい場合は、処理後の表示を必ず確認しましょう。
数値として計算に使う列では、TRIM関数の結果をVALUE関数で数値に戻す方法もあります。
=VALUE(TRIM(A2))
ただし、先頭のゼロが意味を持つ社員番号や郵便番号にはVALUE関数を使わないほうが安全です。
【操作のポイント】空白が消えないときは、全角スペース、改行、CHAR(160)、数値形式の順に確認します。
TRIM関数を検索や照合に活用する方法
| A列 元の氏名 | B列 整形済み氏名 | C列 照合結果 |
|---|---|---|
| 田中 一郎 | =TRIM(A2) | 一致 |
続いては、TRIM関数を検索、重複確認、データ照合に活用する方法を確認していきます。
COUNTIF関数で一致しない問題
COUNTIF関数で同じはずの氏名が数えられない場合、セルの前後に余分なスペースがある可能性があります。
先にTRIM関数でデータ列を整形し、その整形済み列をCOUNTIF関数の範囲に指定すると、比較結果が安定します。
検索用の値にも余分な空白が混ざる可能性があるため、検索条件側にもTRIM関数を使うと効果的です。
=COUNTIF(B:B,TRIM(E2))
この式では、E2セルの検索語を整形してから、B列の整形済みデータと比較します。
照合エラーを減らすには、比較する片方だけでなく、両方の文字列を同じルールで整えることが重要です。
VLOOKUP関数とXLOOKUP関数での利用
VLOOKUP関数やXLOOKUP関数で検索結果が見つからない場合にも、空白文字の違いが原因になることがあります。
検索値をTRIM関数で整えたうえで、検索範囲も別列で整形しておくと、データの揺れに強い表を作れます。
=XLOOKUP(TRIM(E2),B:B,C:C,”該当なし”)
この例では、E2セルの検索値の余分な半角スペースを取り除き、B列から検索してC列の値を返します。
検索対象のB列は、あらかじめTRIM関数で作成した整形済み列にしておくことが前提です。
元データ列をそのまま検索するよりも、整形用の補助列を用意するほうが、原因調査や保守をしやすくなります。
重複データを確認する前の整形
重複の削除や条件付き書式での重複チェックを実行する前にも、TRIM関数による整形が役立ちます。
「鈴木太郎」と「鈴木太郎 」が混在していると、重複の削除では別データと判定されることがあります。
整形済み列を作り、その列を基準に重複確認をすると、表記揺れによる見落としを減らせます。
値貼り付けで整形結果を固定する場合は、処理前のデータを別シートへ保管しておくと安心です。
【操作のポイント】検索、照合、重複確認を始める前に、対象列をTRIM関数で統一しておくとエラーを減らせます。
まとめ エクセルの余分なスペース削除とTRIM関数の使い方
| 目的 | 主な数式 |
|---|---|
| 半角スペースの整理 | =TRIM(A2) |
| 全角スペースの削除 | =TRIM(SUBSTITUTE(A2,” ”,””)) |
TRIM関数は、セルの先頭と末尾にある余分な半角スペースを削除し、途中で連続する半角スペースを1個に整える便利な関数です。
基本の数式は=TRIM(A2)であり、1行目に見出しがある表では2行目から数式を入力してオートフィルでコピーします。
文字列が見た目どおりに一致しないときは、まず余分なスペースを疑うことが実務上の大切な習慣です。
全角スペースが残る場合は、SUBSTITUTE関数を組み合わせて削除するか、半角スペースへ統一します。
改行や改行しないスペースなど、TRIM関数だけでは処理できない文字がある点にも注意が必要です。
検索、VLOOKUP関数、XLOOKUP関数、COUNTIF関数、重複確認の前にデータを整形すれば、照合ミスを減らせます。
元データを残しながら補助列でTRIM関数を試し、内容を確認してから値貼り付けへ進めると、安全で扱いやすい表になります。