Excelのクリーン機能

CLEAN機能を使用して、 ワークシートにコピーまたはインポートされた多数の印刷不可能なコンピュータ文字を良好なデータと共に削除します。

この低レベルのコードは、データファイルの先頭および/または末尾によく見られます。

これらの印刷できない文字の一般的な例は、上記の画像のセルA2とA6の例のテキストと混ざった文字です。

これらの文字は、 データの印刷、ソート、フィルタリングなどのワークシート操作でデータを使用するのを妨げることがあります。

CLEAN機能を使用して印刷できないASCII文字とUnicode文字を削除する

コンピュータ上の各文字には、印刷可能で印刷不可能な文字のUnicode文字コードまたは値があります。

もう1つ、古い、そしてよりよく知られている文字セットは、Unicodeセットに組み込まれている、情報交換のためのアメリカ標準コードを表すASCIIです。

その結果、UnicodeとASCIIのセットの最初の32文字(0〜31)は同一であり、プリンタなどの周辺デバイスを制御するプログラムで使用される制御文字と呼ばれます。

したがって、これらはワークシートでの使用を意図しておらず、存在するときに上記のエラーの種類を引き起こす可能性があります。

Unicode文字セットの前にあるCLEAN関数は、最初の32文字の非ASCII文字を削除し、Unicodeセットから同じ文字を削除するように設計されています。

CLEAN関数の構文と引数

関数の構文は、関数のレイアウトを参照し、関数の名前、角括弧、および引数を含みます

CLEAN関数の構文は次のとおりです。

=クリーン(テキスト)

テキスト - 印刷可能でない文字のデータを消去する(必須)。 ワークシート内のこのデータの場所へのセル参照

たとえば、上記の画像のセルA2のデータを消去するには、数式を入力します。

=クリーン(A2)

別のワークシートセルに挿入します。

クリーニング番号

数値データを消去するために使用すると、CLEAN関数は印刷できない文字を削除するだけでなく、すべての数値をテキストに変換します。その結果、データが計算で使用されるとエラーが発生する可能性があります。

例:印刷不可能な文字を削除する

イメージの列Aでは、セルA3のワークシートの上の数式バーに示されているように、CLEAN関数で削除されたテキスト文字に非印字文字を追加するためにCHAR関数が使用されています。

上記の画像の列Bおよび列Cでは、セルの文字数をカウントするLEN関数を使用して、列Aのデータに対してCLEAN関数を使用する効果を示します。

セルB2の文字カウントは、 テキストの場合は7〜4 文字 、それを囲む非印字文字の場合は3文字です。

CLEAN関数が数式に追加され、LEN関数が文字をカウントする前に3つの非印字文字を取り除くため、セルC2の文字数は4です。

文字#129、#141、#143、#144、#157の削除

Unicode文字セットには、ASCII文字セット(129,141,143,144、および157)にはない追加の非印字文字が含まれています。

ExcelのサポートWebサイトではできないと言っていますが、CLEAN機能は上記の3行目に示すようにこれらのUnicode文字をデータから削除することができます。

この例では、C列のCLEAN関数を使用して、これらの5つの非表示の制御文字を取り除き、C3の文字テキストの文字カウントを4に戻します。

キャラクター#127の削除

CLEAN関数が取り除くことができないUnicodeセットには、印刷することができない文字が1つあります。ボックスの文字#127はセルA4に表示され、4つの文字が単語のテキストを囲んでいます

セルC4の8文字カウントはセルB4の文字カウントと同じであり、C4のCLEAN機能は#127を単独で削除しようとして失敗しているためです。

ただし、上記の行5と6に示すように、この文字を削除するために使用できるCHAR 関数SUBSTITUTE関数を使用する代替式があります。

  1. 行5の数式は、文字#127を、この場合は文字#7(セルA2に表示される黒い点)で削除できる文字に置き換えるためにSUBSTITUTEおよびCHARを使用します。
  2. 6行目の数式は、セルD6の数式の末尾に空の引用符( "" )で示されているように、文字#127を何も置き換えないためにSUBSTITUTE関数とCHAR関数を使用します。 その結果、削除する文字がないため、式にCLEAN関数は必要ありません。

ワークシートからの非破壊スペースの削除

印刷できない文字に似ているのは、ワークシートの計算や書式設定に問題を引き起こす可能性のある非改行スペースです。 非改行スペースのUnicode値は#160です。

非改行スペースはウェブページで広く使用されています.HTMLコードは  - データがWebページからExcelにコピーされる場合、改行されないスペースが含まれることがあります。

ワークシートから改行しないスペースを削除する方法の1つは、SUBSTITUTE、CHAR、TRIMの各機能を組み合わせた数式です。