ExcelのCLEAN関数は、文字列から不要な非表示文字を削除するための便利な関数です。データのインポートやコピーを行う際に、制御文字や見えない文字が含まれてしまうことがよくありますが、CLEAN関数を使用すれば、これらの文字を取り除き、データを整理することができます。この記事では、CLEAN関数の基本的な使い方から応用的な活用法までを詳しく解説します。
CLEAN関数とは?
CLEAN関数は、文字列から印刷できない制御文字や非表示文字を取り除く関数です。制御文字とは、ASCIIコードで0~31に対応する文字で、通常の印刷や表示では見えないものの、データ処理の際に影響を与えることがあります。CLEAN関数は、これらの不要な文字を削除し、クリーンなデータを提供します。
CLEAN関数の基本的な構文
=CLEAN(文字列)
- 文字列: 非表示文字を削除したいテキストやセルを指定します。
CLEAN関数の動作イメージ
たとえば、セルA1に非表示文字が含まれている場合、次のようにCLEAN関数を使用します。
=CLEAN(A1)
CLEAN関数は、A1の文字列から不要な制御文字を取り除き、クリーンなデータを返します。
CLEAN関数の実際の例
例えば、以下のようにCLEAN関数を使って、非表示文字を削除し、文字列を整理することができます。
セル範囲 | CLEAN関数の使用例 | 結果 |
A1 (非表示文字含む) | =CLEAN(A1) | 非表示文字を削除したクリーンな文字列 |
“Hello [非表示]” | =CLEAN(A1) | “Hello” |
B1 (制御文字含む) | =CLEAN(B1) | クリーンな文字列 |
このように、CLEAN関数は、インポートや他のソフトウェアから持ち込まれた非表示文字を削除して、データを整えるのに役立ちます。
インポートされたデータに使用する例
たとえば、外部データベースやWebシステムからインポートしたテキストデータに非表示文字が含まれている場合、CLEAN関数を使ってデータを整理することができます。
=CLEAN(B2)
この場合、B2セルにあるデータからすべての非表示文字が削除され、クリーンなテキストが返されます。
CLEAN関数の応用例
データベースからのデータインポートの際の整形
データベースやテキストファイルからインポートされたデータには、しばしば制御文字が混在しています。CLEAN関数を使うことで、インポートされたデータから非表示文字を取り除き、Excelでの処理を円滑に行えます。たとえば、商品名に制御文字が含まれている場合、次のように使用します。
=CLEAN(C2)
これにより、C2セルに含まれる商品名がクリーンな形式に整えられます。
テキスト処理とTRIM関数との併用
CLEAN関数は、文字列の非表示文字を削除するのに対し、TRIM関数は文字列の前後や中にある余分なスペースを整理します。CLEAN関数とTRIM関数を組み合わせることで、さらにクリーンで整ったテキストを作成できます。
=TRIM(CLEAN(A1))
この数式では、A1セルにある文字列から、まずCLEAN関数で非表示文字を削除し、次にTRIM関数で余分なスペースを整理します。
CONCAT関数やTEXTJOIN関数との組み合わせ
CLEAN関数は、複数のセルを結合する際にも役立ちます。例えば、複数のセルに非表示文字が含まれている場合、CLEAN関数を組み合わせて結合することで、クリーンな結果を得ることができます。
=TEXTJOIN(“, “, TRUE, CLEAN(A1), CLEAN(B1), CLEAN(C1))
この数式では、A1、B1、C1セルの文字列を非表示文字を削除した上でカンマ区切りで結合します。
CLEAN関数の便利な豆知識
非表示文字は通常目に見えない
CLEAN関数が取り除く非表示文字は、通常の作業では目に見えないことが多いため、インポートデータに含まれていることに気づかない場合があります。データのインポート後にCLEAN関数を使ってクリーンアップすると、見えないトラブルを防ぐことができます。
印刷不可文字の削除に特化
CLEAN関数は、印刷不可の制御文字を削除することに特化していますが、削除できるのはASCIIコードの0〜31に該当する文字のみです。Unicodeの一部の制御文字はCLEAN関数で削除できないため、別の方法で処理する必要があります。
他のデータ処理関数との組み合わせ
CLEAN関数は、他のデータ処理関数(SUBSTITUTE、LEFT、RIGHTなど)と組み合わせて、非表示文字を取り除いたクリーンなデータを効率的に作成できます。たとえば、特定の文字列を削除した後にCLEAN関数を使って、クリーンなデータに仕上げることが可能です。
=SUBSTITUTE(CLEAN(A1), “不要な文字”, “”)
この数式では、A1から「不要な文字」を削除し、さらにCLEAN関数で非表示文字も取り除きます。
CLEAN関数のよくあるエラーと対処法
#VALUE!エラーは発生しない
CLEAN関数は、通常の使用でエラーが発生することはほとんどありません。たとえ無効なデータが含まれていたとしても、CLEAN関数はそのデータを正常に処理し、非表示文字を削除するだけです。
非表示文字が削除されないケース
CLEAN関数で削除できるのは、主にASCIIコードの0〜31に該当する制御文字です。Unicodeの制御文字やその他の特別な非表示文字が含まれている場合、CLEAN関数だけでは削除できないことがあります。このような場合は、SUBSTITUTE関数や他の方法で対処する必要があります。
=SUBSTITUTE(A1, CHAR(160), “”)
この数式は、Unicodeの非表示文字「CHAR(160)」を削除する例です。
まとめ
ExcelのCLEAN関数は、インポートデータや他のアプリケーションからのコピーで含まれる非表示文字や制御文字を削除して、データをクリーンにするための便利なツールです。データ処理を行う際に、見えない文字が原因で問題が発生することを防ぐため、CLEAN関数を活用して正確でクリーンなデータを作成しましょう。また、TRIM関数や他のテキスト関数と組み合わせることで、データをより効率的に整えることが可能です。