今天給大家聊一下數據清理整理過程中比較常見的一個問題:刪除單元格中的空格。這個問題看似簡單,但其實有點兒復雜。它大致可以分為四種類型的小問題,接下來,咱們由淺入深,一個一個聊。

1、 正經的空格刪除

先說第1種最簡單的情況。

如下圖所示,A:B是數據源,A列是人名,B列是成績。由于A列人名的前后包含了大量空格,導致E列的函數返回錯誤值。

excel怎么去除空格_空格去除軟件_空格去除器

對于這種情況,直接查找替換,將空格替換為空白即可。

excel怎么去除空格_空格去除軟件_空格去除器

需要注意的是,這里的空格,最好是從單元格中復制一個,而不是手動輸入。后文你會了解到,空格有幾十上百種風情,而空格鍵鍵入的只是其中普通的一種~

2、身份證中的空格

說一種比較特殊的情況,刪除身份證中的空格。

如下圖所示,A列身份證號中存在空格,需要刪除。

excel怎么去除空格_空格去除器_空格去除軟件

有朋友第一反應是查找替換,但是由于身份證屬于長文本,替換后會被轉換為數值,而單元格有效保存的數值最大長度是15位,這就導致18位的身份證的后3位數值會被轉換為0.

空格去除軟件_excel怎么去除空格_空格去除器

常用的解法方法有兩個,一個是函數,文本函數返回的結果必然是文本,所以不會導致身份證號變形:

=(A2,” “,””)

另外一個還是查找替換,只不過增加了一點前戲,用格式刷強制單元格轉換為文本格式。

excel怎么去除空格_空格去除軟件_空格去除器

3、去除首尾空格

有時候我們不需要把數據中全部的空格都刪除掉,而需要刪除首尾的全部空格,中間連續的空格保留一個,對此提供了一個專門的函數:TRIM。

如下圖所示,A列的數據包含了大量的空格,需要轉換為B列的樣式。

空格去除軟件_空格去除器_excel怎么去除空格

B2單元格輸入以下公式即可:

=TRIM(A2)

4、刪除系統導出的空格

上文我們說過,空格有成百上千種,空格鍵鍵入的只是其中普通的一種。

你在A2單元格輸入公式:

=(ROW(A1))

將它填充到A1:區域,就可以見到各種各樣的字符圖形,牛啊羊啊飛機啊大炮啊輪船啊漢堡啊等等,也有各種各樣的可見不可見的空格。

?飛機大炮要啥有啥,

如果你有閑,也可以用這些圖形作畫兒…

空格去除器_空格去除軟件_excel怎么去除空格

從系統導出的數據,有時候包含的空格,就不是正經的空格鍵生下來的。

對于這種,如果是可見的,你可以從中復制一個,然后查找替換。

如果查找替換失敗了,可以換用TRIM+的函數組合:

=(TRIM(A1))

,在英語中是清潔打掃的意思,它可以清理掉一部分不可見的空格。

但不管是查找替換,還是函數,都是近古時代開發出的功能了,這就導致它們解決不了很多新生代的空格。

比如,著名的零寬空白8203。8203是它的編碼,如果你的版本是2019及以上,可以使用(8203)返回該字符。

零寬空白8203就像一個幽靈,完全不可見,不但不可見,數據復制到寫字板、Word等軟件也不可見,但它真實存在的不要不要的,一樣會造成等條件查詢或統計函數無法正確計算。

如下圖所示,使用LEN函數,可以發現該函數返回的字符串長度和肉眼所見完全不同,但在編輯欄里你又發現不了任何多余的贅肉字。

空格去除器_excel怎么去除空格_空格去除軟件

對于這種情況,由于不可見字符通常出現在數據的首尾,可以使用LEFT函數查找首個字符是否返回空白。

空格去除器_excel怎么去除空格_空格去除軟件

如果LEFT函數返回結果為空白,則使用函數將它替換即可。

=(A2,LEFT($A$2),””)

空格去除器_excel怎么去除空格_空格去除軟件

同理,如果空格在尾部,可以使用函數:

=(A2,($A$2),””)

或者管它是頭是尾是左是右是男是女,二元對立多煩啊?統統一刀切了!

代碼看不全可以左右拖動..

=((A2,($A$2),””),LEFT($A$2),””)

……

有目的的刪除空格,除了以上方法之外,也可以借助 等工具處理,不過工作中并不常用,這里就不再說了,攤手,反正說多了你們也不看,多浪費啊圖片。

?案例文件下載百度網盤:

提取碼: 42rx

出處: