TRIM 関数:構文、使用例、エラーの解決法
2026-10-15 更新 · 無料 · Excel と Google Sheets に対応
構文
=TRIM(text)クイック回答
TRIM はテキストの余分なスペースを取り除きます:=TRIM(A2) は先頭と末尾のスペースを削除し、文中の連続スペースを 1 つに圧縮して「 jane doe 」を「jane doe」にします。対象はスペース文字だけ——改行なしスペースや改行コードはそのまま——そして結果は常にテキストです。
構文
=TRIM(text)| 引数 | 意味 |
|---|---|
| text | クリーンアップするセルまたはリテラル。必須——唯一の引数です。削除する文字を選ぶオプションはなく、TRIM は常にスペース文字(U+0020)だけを対象にします。 |
引数が 1 つしかないため区切り文字の問題は発生しません:=TRIM(A2) はどの言語環境でも同じ見た目です。
TRIM は 2 つの役割を同時に果たします:テキストの先頭と末尾のスペースを完全に削除し、文中の連続スペースをちょうど 1 つに圧縮する。「 jane doe 」は「jane doe」になります——単語の間の 1 スペースは残り、くっつきません。
基本的な使用例
=TRIM(A2)貼り付け・インポートデータの日常的な修復:「 jane doe 」が「jane doe」になり、末尾スペースで「AE-041 」と「AE-041」が一致しなかった検索も正しく機能します。
=TRIM(SUBSTITUTE(A2, CHAR(160), " "))Web 取得データの救済式:CHAR(160) は改行なしスペースで、TRIM はこれを見つけられません。先に通常のスペースへ変換してから TRIM に引き継がせる——「TRIM が効かない」問題の大半はこの 1 行で解決します。
=UPPER(TRIM(A2))クリーンしてから正規化:TRIM が余白を取り除き、UPPER が英字を統一します。ネストの順序が重要——先にクリーン、後に変換——表示名なら同じ形で PROPER に差し替えるだけです。
=LEN(A2)-LEN(TRIM(A2))スペース カウンター:長さの差が TRIM が削除した文字数そのもの。2 なら余分なスペースが 2 個——クリーンアップ確定前の列監査に最速の方法です。
=IF(TRIM(A2)=TRIM(B2), "Match", "Diff")寛容な比較:両辺を TRIM してから比べるので、「 AE-041 」と「AE-041」がようやく等しくなります。Excel の通常の = はスペースを字として比較する——だからキー照合では両辺 TRIM が定石です。
TRIM は数値を文字列化します:TRIM(12345) はもう合計できないテキスト「12345」を返します。列全体が文字列化した数値なら VALUE と組み合わせます:=VALUE(TRIM(A2))——数値の前後のスペースは VALUE エラーの定番原因です。
よくあるエラーと解決法
| 症状 | 最も多い原因 | 解決法 |
|---|---|---|
| TRIM が何もしないように見える | 余白が改行なしスペース(U+00A0)。Web ページ由来で、TRIM は通常のスペース(U+0020)しか削除できません。 | 先に変換:=TRIM(SUBSTITUTE(A2, CHAR(160), " "))。 |
| 文中の重複スペースが残る | 仕様です:TRIM は単語間の 1 スペースを保持し、連続スペースを圧縮するだけ——単語をくっつけません。 | すべてのスペースを消すなら =SUBSTITUTE(A2, " ", "")。 |
| 結果を合計できない | TRIM は常にテキストを返す——数字っぽい「12345」はラベルです。 | =VALUE(TRIM(A2)) で数値に戻します。 |
| クリーンアップ後も改行が残る | TRIM の対象はスペース文字だけ。CHAR(10) の改行コードは扱いません。 | 制御文字は CLEAN、改行は =SUBSTITUTE(A2, CHAR(10), " ")。 |
| 空白行が空白でなくなる | 空セルの TRIM は ""(空テキスト)を返し、ISBLANK からは空白でなくなります。 | ガードを付ける:=IF(A2="", "", TRIM(A2)) で本当の空行は空のまま。 |
エラーではありませんが知っておくべき点:TRIM はスペースの専門家です。タブ(CHAR(9))、改行(CHAR(10))、改行なしスペース(CHAR(160))など他の不可視文字には触れません——必要なら外側に CLEAN や SUBSTITUTE を重ねます。
TRIM と CLEAN・SUBSTITUTE の比較
| TRIM | CLEAN | SUBSTITUTE | |
|---|---|---|---|
| 対象 | スペース文字のみ(U+0020) | 31 番までの制御文字(改行、タブ) | 指定した任意の文字や部分文字列 |
| 動作 | 両端は削除、文中は 1 つに圧縮 | そのまま削除 | 指定した内容に置換——"" も可能 |
| 典型的な用途 | 単語の周りの貼り付け余白 | セル内の改行 | 改行なしスペース、ピンポイント除去 |
| 盲点 | U+00A0、改行、タブ | U+00A0 は 31 超なので CLEAN でも無効 | なし——ただし置換対象を知っている必要がある |
汚れたインポートの実戦的な順序:まず SUBSTITUTE(CHAR(160), " ")、次に TRIM、改行が残れば CLEAN。3 関数は互いの盲点を補い合うため、ほぼ必ずネストして登場します。
TRIM とフラッシュフィルの比較
| TRIM 数式 | フラッシュフィル(Ctrl+E) | |
|---|---|---|
| 出力 | ヘルパー列の生きた数式。ソース変更で再計算 | 静的な値の 1 回書き込み。新しい行は再実行 |
| 精度 | 決定的——すべてのスペース、すべての行で同じ | パターン推測——結果列の spot チェックが必要 |
| 向いている作業 | 継続的に届くインポートとレポート | 完成テーブルの一回きりのクリーンアップ |
| 利用可能環境 | すべての Excel バージョンと Google Sheets | Excel 2013 以降。Sheets はスマートフィルが対応 |
データの寿命で選びます:続けて届くデータは TRIM 数式、1 回だけ整形して貼り付けで置き換えるならフラッシュフィル。数式を残すなら、列が確定した時点で値貼り付けを忘れずに。
Google Sheets での TRIM
- 同じ名前・同じ 1 引数——上記の数式はすべてそのまま Sheets に貼り付けられます。
- Sheets にはメニュー操作「データ → データクリーンアップ → 余白を削除」もあり、フラッシュフィル同様に静的な値を書き込みます。
- 改行なしスペースの盲点も同一:SUBSTITUTE(CHAR(160), " ") は Sheets でも同じ働きをします。
- LEN 差の技(=LEN(A2)-LEN(TRIM(A2)))もそのまま転用でき、列監査に使えます。
制限と実践テクニック
- 1 回 1 役:TRIM が担当するのはスペースだけ——タブ、改行、改行なしスペースは外側の CLEAN や SUBSTITUTE に任せます。
- Web データでは CHAR(160) と通常スペースが混在しがち:=TRIM(SUBSTITUTE(A2, CHAR(160), " ")) は再利用率最高のクリーンアップ式です。
- 確定前に監査:=LEN(A2)-LEN(TRIM(A2)) で各行が何文字減るか分かるので、値貼り付け前に外れ値を発見できます。
- 数値列は VALUE とセット:=VALUE(TRIM(A2)) で、変換を拒んでいた数字テキストの余白を取り除きます。
- 値を貼り戻す:ヘルパー列をコピー → 形式を選択して貼り付け → 値 → ヘルパー列を削除。以降ソース列をどう掃除しても表は無傷です。
TRIM はクリーンアップ ラインの最初の工程と考えます:不可視の余白を変換し、TRIM でスペースを整え、LEN で検収し、値を貼り戻す。工程ごとに列を分ければレシピは監査可能——形式が変わっても 1 式直すだけで済みます。
関連ツール
関連関数
よくある質問
Excel の TRIM 関数は何をしますか?
余分なスペースを取り除きます:先頭と末尾のスペースは完全に削除し、文中の連続スペースは 1 つに圧縮します。=TRIM(A2) は「 jane doe 」を「jane doe」にします。結果は常にテキストです。
なぜ TRIM はスペースをすべて削除しないのですか?
仕様です。TRIM は単語間の 1 スペースを保持します——連続スペースの圧縮と両端の削除のみです。すべてのスペースを消すには SUBSTITUTE を使います:=SUBSTITUTE(A2, " ", "") で全スペースを空に置換します。
TRIM がデータに効かないのはなぜですか?
その余白はほぼ間違いなく改行なしスペース(CHAR(160))で、TRIM はこれを認識できません。先に変換します:=TRIM(SUBSTITUTE(A2, CHAR(160), " "))。Web コピー データの定番修復です。
TRIM は改行を削除しますか?
いいえ——TRIM の対象はスペース文字(U+0020)だけです。改行は CHAR(10) なので残ります。=SUBSTITUTE(A2, CHAR(10), " ") で改行を削除し、他の制御文字は CLEAN に任せます。
TRIM は数値をテキストに変えますか?
はい——TRIM は常にテキストを返すので、クリーン後の「12345」は合計できません。VALUE を外に付けます:=VALUE(TRIM(A2)) で数値に戻り、先に TRIM しておくことで VALUE のスペース系エラーも防げます。
TRIM が削除したスペースの数を数えるには?
=LEN(A2)-LEN(TRIM(A2)) がセルごとの削除数そのものです。0 は掃除するものなし、2 は余分なスペース 2 個——値貼り付け前の最速監査です。
TRIM は Google Sheets で使えますか?
使えます——同じ名前・同じ 1 引数・同じ動作です。Sheets には「データ → データクリーンアップ → 余白を削除」というメニュー代替もあり、SUBSTITUTE(CHAR(160)) の救済式も同様に機能します。
自分のファイルで試す準備はできましたか?
Excelセルの空白を削除を開く — 無料