概要
「セルの中に見えない改行が入っていて扱いづらい」
「コピペしたデータに謎の改行が混ざっている」
「TRIM しても空白が消えない…実は改行だった!」
こういう “改行コードを削除したい” ときに使えるのが CLEAN 関数です。
CLEAN は、文字列に含まれる 印字できない制御文字(改行・タブなど)を削除 してくれる関数です。
特に、改行コード(CHAR(10))を消すのに非常に便利です。
CLEAN 関数の基本
CLEAN の書式
=CLEAN(文字列)
文字列
改行や制御文字を削除したいセルや文字列を指定します。
CLEAN が削除する主なもの:
- 改行(LF:CHAR(10))
- タブ(CHAR(9))
- その他の制御文字(ASCII 0〜31)
つまり、「見えないゴミ」を一掃するクリーニング関数です。
基本パターン:改行を削除する
A2 に次のような文字列が入っているとします(Alt+Enter で改行)。
Excel
関数
講座
これを CLEAN で処理すると、改行が削除されて次のようになります。
=CLEAN(A2)
結果:
Excel関数講座
改行がすべて取り除かれ、1行に結合されます。
応用1:改行を削除してスペースに置き換えたい場合
CLEAN は改行を「削除」しますが、
「改行をスペースに置き換えたい」ケースもあります。
その場合は SUBSTITUTE と組み合わせます。
=SUBSTITUTE(CLEAN(A2), CHAR(10), " ")
ただし、CLEAN が先に改行を削除してしまうため、
改行をスペースに置き換えたい場合は CLEAN より SUBSTITUTE を先に使うのが正解です。
=SUBSTITUTE(A2, CHAR(10), " ")
結果:
Excel 関数 講座
応用2:改行+余計な空白をまとめて整形する
改行を削除したあと、前後の空白も整えたい場合は
CLEAN と TRIM を組み合わせます。
=TRIM(CLEAN(A2))
動き:
- CLEAN → 改行・制御文字を削除
- TRIM → 先頭・末尾の空白削除、連続スペースを1つに整形
コピペデータの「改行+空白」の混在を一気に整えられます。
応用3:改行を削除して1行にまとめてから処理したい
例えば、A2 に複数行の住所が入っている場合:
東京都江東区
豊洲1-1-1
マンション101
これを1行にまとめて検索や結合に使いたいとき、まず CLEAN で改行を削除します。
=CLEAN(A2)
結果:
東京都江東区豊洲1-1-1マンション101
その後、必要に応じてスペースを挿入したり、区切りを整えたりできます。
注意点:CLEAN では削除できないもの
CLEAN が削除できないもの:
- 全角スペース( )
- 半角スペース( )
- 改行コード CR(CHAR(13))※一部のデータで混在
特に、Windows の改行は CR+LF(CHAR(13)+CHAR(10)) のセットなので、
CLEAN だけでは CR が残る場合があります。
その場合は SUBSTITUTE を併用します。
=SUBSTITUTE(CLEAN(A2), CHAR(13), "")
例題
問題1
A2 に改行を含む文字列が入っています。
この改行を削除して1行にまとめる式を書いてください。
=CLEAN(A2)
問題2
A2 の改行を「削除」ではなく「半角スペース」に置き換えたいです。
SUBSTITUTE を使った式を書いてください。
=SUBSTITUTE(A2, CHAR(10), " ")
問題3
A2 の改行と余計な空白をまとめて整形し、きれいな1行にしたいです。
CLEAN と TRIM を組み合わせた式を書いてください。
=TRIM(CLEAN(A2))
問題4
A2 の文字列に Windows 改行(CR:CHAR(13))が残ってしまいます。
CLEAN と SUBSTITUTE を組み合わせて CR を削除する式を書いてください。
=SUBSTITUTE(CLEAN(A2), CHAR(13), "")
問題5
A2 に複数行の住所が入っています。
改行を削除して1行にまとめた文字列を B2 に表示したいです。
CLEAN を使った式を書いてください。
=CLEAN(A2)
CLEAN は「見えない改行・制御文字」を一掃するための強力なクリーニング関数です。
TRIM や SUBSTITUTE と組み合わせることで、
外部データの“汚れ”を一気に落とし、扱いやすい文字列に整形できます。
改行トラブルに遭遇したら、まずは CLEAN → 必要に応じて TRIM / SUBSTITUTE
この流れを思い出してみてください。
