Excel清理功能

使用CLEAN功能刪除已復製或導入到工作表中的許多不可打印的計算機字符以及良好的數據。

這個低級代碼經常在數據文件的開始和/或結束處找到。

這些不可打印字符的一些常見示例是與上圖中單元格A2和A6中的示例中的文本混合在一起的字符。

這些字符可能會干擾在工作表操作中使用數據 ,如打印,排序和過濾數據。

使用CLEAN功能刪除不可打印的ASCII和Unicode字符

計算機上的每個字符(可打印和不可打印)都有一個被稱為Unicode字符代碼或值的數字。

另一個更老,更知名的字符集是ASCII,代表美國信息交換標準代碼,已被納入Unicode集。

因此,Unicode和ASCII組的前32個字符(0到31)是相同的,它們被稱為程序用來控制外圍設備(如打印機)的控製字符。

因此,他們不打算在工作表中使用,並可能導致上面提到的各種錯誤。

在Unicode字符集之前的CLEAN函數旨在刪除前32個非打印ASCII字符,並從Unicode集中刪除相同的字符。

CLEAN函數的語法和參數

函數的語法引用函數的佈局,並包含函數的名稱,括號和參數

CLEAN函數的語法是:

= CLEAN(文本)

文本 - (必填)要清除不可打印字符的數據。 單元格引用此工作表中此數據的位置。

例如,要清除上圖中單元格A2中的數據,請輸入公式:

= CLEAN(A2)

到另一個工作表單元格中。

清潔數字

如果用於清除數字數據,CLEAN功能除了刪除任何非打印字符外,還會將所有數字轉換為文本 - 如果該數據在計算中使用,則可能會導致錯誤。

示例:刪除不可打印的字符

在圖像A列中,已經使用CHAR函數將非打印字符添加到單詞文本,如單元格A3的工作表上方的公式欄中所示,然後用CLEAN函數將其刪除。

在上面圖像的B和C列中,LEN函數(用於計算單元格中的字符數)用於顯示對列A中的數據使用CLEAN函數的效果。

單元格B2的字符數為7個字 - 文字為4個字符,周圍的非打印字符為3個。

單元格C2中的字符數為4,因為已將CLEAN功能添加到公式中,並在LEN函數計數字符之前去除三個非打印字符。

刪除角色#129,#141,#143,#144和#157

Unicode字符集包含ASCII字符集中未找到的其他非打印字符 - 數字129,141,143,144和157。

即使Excel的支持網站說它不能,CLEAN功能可以從數據中刪除這些Unicode字符,如上面第三行所示。

在這個例子中,列C中的CLEAN功能被用來去除這五個不可見的控製字符,並且在C3中再次為字文本留下四個字符計數。

刪除字符#127

在CLEAN函數無法刪除的Unicode集中有一個非打印字符 - 單元格A4中顯示的盒形字符#127 ,其中四個字符圍繞單詞文本

單元格C4中8個字符的字符數與單元格B4中的字符數相同,因為C4中的CLEAN功能嘗試自行刪除#127中的CLEAN功能。

但是,如上面第五行和第六行所示,還有一些使用CHAR和SUBSTITUTE函數的替代公式可用於刪除此字符:

  1. 第五行中的公式使用SUBSTITUTE和CHAR將字符#127替換為CLEAN函數可以刪除的字符 - 在這種情況下,字符#7(單元格A2中的黑點);
  2. 第六行中的公式使用SUBSTITUTE和CHAR函數替換字符#127,其中沒有任何內容,如單元格D6中公式結尾處的空引號( “” )所示。 因此,公式中不需要CLEAN功能,因為沒有可刪除的字符。

從工作表中刪除非破壞空間

與非打印字符類似,非破壞性空間也會導致工作表中的計算和格式問題。 non-breaking空間的Unicode值是#160。

非破壞性空間廣泛用於網頁 - 它的html代碼是  - 因此,如果數據從網頁複製到Excel中,則可能會包含非中斷空格。

從工作表中刪除非中斷空格的一種方法是使用此公式將SUBSTITUTE,CHAR和TRIM函數組合起來。