CLEAN関数の使い方|セル内の改行・タブを消す・消えない空白の対処

CLEAN関数の使い方|セル内の改行・タブを消す・消えない空白の対処

エクセルで、セル内の改行やタブなど、印刷されない文字(制御文字)を消すには CLEAN関数を使います。セル内で改行された「ab」「cd」は、=CLEAN(A3) で abcd になります。

Webページやほかのシステムからコピーしたデータには、見えない改行やタブが入っていることがあり、検索や比較がうまくいかない原因になります。この記事では、CLEAN関数の基本、改行が文字数に入ること、タブの扱い、消えない空白(ノーブレークスペース)、改行をスペースに置き換える方法、TRIM関数との組み合わせまでを、1つの表で説明します。

目次

CLEAN関数の書き方

CLEAN関数の構文
数式=CLEAN(文字列)
ひとことで印刷できない文字を削除
文字列
文字列です

文字コード 0〜31 の制御文字(改行・タブなど)を取り除きます。ふつうの空白(スペース)は消えません。

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

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

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

やりたいこと式(例)結果
改行を消す=CLEAN(A3)abcd
改行も1文字に数える=LEN(A4)5
改行を消した後の文字数=LEN(CLEAN(A5))4
タブ文字も消える=CLEAN(A7)abcd
ノーブレークスペースは消えない=LEN(CLEAN(A8))5
改行をスペースに置き換える=SUBSTITUTE(A9,CHAR(10),” “)ab cd
改行と前後の空白を消す=TRIM(CLEAN(A10))東京都
エクセルのCLEAN関数で改行を消した表
エクセルのCLEAN関数で改行を消した表

セル内の改行を消す

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

改行が消えて abcd になります。住所の「東京都(改行)千代田区」も =CLEAN(A6) で 東京都千代田区 とつながります。

改行も1文字として数えられる

見た目は4文字の「ab」「cd」でも、=LEN(A4) は改行を含めて 5 です。CLEAN関数で消すと =LEN(CLEAN(A5)) は 4 になります。文字数が合わないときは、見えない改行を疑います(LEN関数の使い方)。

タブは消えるが、ノーブレークスペースは消えない

タブ文字(文字コード 9)も制御文字なので、=CLEAN(A7) で abcd になりました。一方、Webページによくあるノーブレークスペース(文字コード 160)は制御文字ではないので、=LEN(CLEAN(A8)) は 5 のままです。これは =SUBSTITUTE(A8,CHAR(160),"") で消します(TRIM関数の使い方)。

改行をスペースに置き換える

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

CLEAN関数は改行を消してつなげてしまうので、「ab cd」のように間を空けたいときは、改行(CHAR(10))を SUBSTITUTE関数でスペースに置き換えます。結果は ab cd です(改行を削除する方法)。

改行と余分な空白をまとめて消す(TRIM+CLEAN)

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

CLEAN関数で改行を消し、TRIM関数で前後の空白を消すと、東京都 になります。取り込んだデータを整えるときの定番の組み合わせです。

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

症状考えられる原因対処
空白が消えないCLEAN関数はスペースを消さないTRIM関数か SUBSTITUTE関数を使う。
見えない空白が残るノーブレークスペース(文字コード160)SUBSTITUTE(セル,CHAR(160),””) で消す。
文字がくっついてしまう改行を消すと前後がつながるSUBSTITUTE関数で改行をスペースにする。
元のセルを直したい関数は別のセルに結果を出す結果をコピーして「値」で貼り付ける。

CLEAN関数のよくある質問

セル内で改行するには?

セルの中で Alt+Enter を押すと改行できます。式では CHAR(10) を使い、セルの「折り返して全体を表示する」をオンにします。

置換で改行を消すには?

Ctrl+H の「検索する文字列」で Ctrl+J を押すと改行を指定でき、まとめて消せます(改行を削除する方法)。

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

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

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

この記事を書いた人

コメント

コメントする

目次