コンピュータ上の各文字には、印刷可能で印刷不可能な文字のUnicode文字コードまたは値があります。
もう1つ、古い、そしてよりよく知られている文字セットは、Unicodeセットに組み込まれている、 情報交換のためのアメリカ標準コードを表すASCIIです。 その結果、Unicodeセットの最初の128文字(0〜127)はASCIIセットと同じになります。
最初の128個のUnicode文字の多くは制御文字と呼ばれ、プリンタなどの周辺デバイスを制御するためにコンピュータプログラムによって使用されます。
したがって、Excel ワークシートでの使用を目的とせず、存在する場合はさまざまなエラーを引き起こす可能性があります。 ExcelのCLEAN機能は、文字#127を除き、これらの印刷不可能な文字のほとんどを削除します。
01/03
Unicode Character#127
Unicode文字#127は、キーボードの削除キーを制御します。 したがって、これはExcelワークシートに存在することを意図したものではありません。
存在する場合は、上の画像のセルA2に示すように、それは狭い箱形の文字として表示され、おそらく、いくつかの良いデータと共に誤ってインポートまたはコピーされていました。
その存在は:
- ワークシートに簡単な書式設定の問題が発生する。
- データの並べ替えやフィルタリングに影響します。
- 数式で使用されているデータとともにセルに存在する場合、計算上の問題を引き起こします。
02/03
Unicode文字#127を削除する
この文字はCLEAN関数では削除できませんが、SUBSTITUTE関数とCHAR関数を含む式を使用して削除できます。
上の図の例では、四角形の4つの文字と、ExcelワークシートのセルA2にある数字10が表示されています。
セルE2内のセルの文字数をカウントするLEN関数は、セルA2に6桁の文字が含まれていることを示しています。つまり、10桁の2桁に文字#127の4桁の数字が含まれています。
セルA2に文字#127が存在するため、セルD2の加算式は#VALUE!を返します。 エラーメッセージ。
セルA3には、SUBSTITUTE / CHAR式が含まれています
= SUBSTITUTE(A2、CHAR(127)、 "")セルA2の4つの#127文字を何も置き換えない - (式の末尾に空の引用符で示す)。
結果として
- セルE3の文字数は2に減らされます - 数字10の2桁の場合
- セルD3の加算式は、セルA3 + B3(10 + 5)の内容を追加するときに正解が15を返します。
SUBSTITUTE関数は実際の置換を行いますが、CHAR関数を使用して式に置換する文字を指定します。
03/03
ワークシートからの非破壊スペースの削除
印刷できない文字に似ているのは、ワークシートの計算や書式設定に問題を引き起こす可能性のある非改行スペース(&nbsp)です。 非改行スペースのUnicodeコード番号は#160です。
非改行スペースはWebページで広く使用されているため、WebページからExcelにデータをコピーすると、改行しないスペースがワークシートに表示されることがあります。
非改行スペースを削除するには、SUBSTITUTE、CHAR、およびTRIM関数を組み合わせた数式を使用します。