excel數(shù)據(jù)處理: 如何用99個(gè)空格提取單元格數(shù)據(jù)

編按:腦洞大開,提取單元格數(shù)據(jù)用99個(gè)空格就成!真想扒開那些大神的腦袋看看,是怎么想出這樣匪夷所思的方法的。

需要從規(guī)格型號(hào)中提取容值、封裝、耐壓三組數(shù)據(jù),如下:

數(shù)據(jù)源在A列,數(shù)據(jù)量很大,需要提取的容值、封裝和耐壓三項(xiàng)數(shù)據(jù)在單元格中的字節(jié)位置不固定。能找到的規(guī)律就是提取的數(shù)據(jù)分別位于數(shù)據(jù)源的第二、三、四個(gè)逗號(hào)之后。
當(dāng)我們遇到問題的時(shí)候,找到規(guī)律是解決問題的關(guān)鍵?,F(xiàn)在規(guī)律找到了,因此解決方法也就有了。這里有三種方法,從最簡單的快捷鍵操作到腦洞大開的空格替換法都有,以下分別進(jìn)行介紹。
1.快速填充法Ctrl+E

操作要點(diǎn):
(1)在B2單元格輸入0402時(shí),要先輸入一個(gè)單引號(hào),或者把單元格修改為文本格式再輸入;
(2)只輸入一個(gè)數(shù)據(jù)可能無法通過Ctrl+E得到正確結(jié)果,這時(shí)候連續(xù)輸入兩個(gè)數(shù)據(jù)就可以了。
提示:組合鍵Ctrl+ E只能在Excel2013及以上的版本才能使用。
就本例而言,Ctrl+ E略微顯得有些麻煩,因此再介紹一種用分列的處理方法。
2.分列法

操作要點(diǎn):
(1)分列過程中使用逗號(hào)進(jìn)行分隔;
(2)需要跳過不導(dǎo)入的列;
(3)對容值這列數(shù)據(jù)設(shè)置為文本格式;
(4)手工指定數(shù)據(jù)存放的目標(biāo)區(qū)域。
相比第一個(gè)方法來說,使用分列就簡單了許多,同時(shí)通過這個(gè)例子,大家也可以對分列這個(gè)強(qiáng)大的功能有了深入的了解。
使用分列雖然比較方便,但如果經(jīng)常要處理這類數(shù)據(jù)的話,操作量也是蠻大的,最后我們再來分享一個(gè)公式的做法。
3. 腦洞大開法:TRIM-MID-SUBSTITUTE-REPT組合公式
使用公式:
=TRIM(MID(SUBSTITUTE($A2,",",REPT(" ",99)),COLUMN(B1)*99,99))
右拉下拉即可得到所需的結(jié)果。

公式解析:
這個(gè)公式里用到了五個(gè)函數(shù),其中有我們比較熟悉的MID和COLUMN,也有我們不太常用的TRIM、SUBSTITUTE和REPT函數(shù)。下面簡單來解釋一下這個(gè)公式的思路。
公式的核心部分是SUBSTITUTE($A2,",",REPT(" ",99)),這部分的作用是進(jìn)行替換。
SUBSTITUTE函數(shù)格式為:
SUBSTITUTE(在哪里替換,替換什么,換成什么,換第幾個(gè))
例如:
公式=SUBSTITUTE($A2,",","-",3)的效果就是把A2單元格的第3個(gè)逗號(hào)換成-號(hào)。

當(dāng)省略第四參數(shù)的時(shí)候,代表逗號(hào)全部替換,如圖:

本例中是把A2中的逗號(hào)換成了REPT(" ",99),也就是99個(gè)空格。
REPT函數(shù)的格式為:
REPT(要重復(fù)的字符,重復(fù)次數(shù))
例如:
REPT(“★”,5),就是將★重復(fù)五次。

至于公式中為什么要用99個(gè)空格,完全是一種套路,繼續(xù)看完公式的其他部分或許就理解了。
使用SUBSTITUTE得到的數(shù)據(jù)還需要用MID函數(shù)來進(jìn)行提取。MID函數(shù)大家應(yīng)該比較熟悉了,基本格式為:MID(數(shù)據(jù)源,從什么位置開始取,取幾個(gè)字)。在本例中要提取的數(shù)據(jù)源就是SUBSTITUTE(),而要提取的容值的位置原本是在第2個(gè)逗號(hào)之后,由于我們把逗號(hào)換成了99個(gè)空格,要提取的位置前面至少有兩組空格也就是2*99個(gè)字符;相應(yīng)封裝的提取的位置是3*99,耐壓的是4*99。采用公式右拉,所以這里用COLUMN(B1)*99作為提取位置。MID的最后一個(gè)參數(shù)是要取幾個(gè)字符,為了保險(xiǎn)起見,統(tǒng)一提取99個(gè)字。
也就是說,經(jīng)過MID(SUBSTITUTE(),COLUMN(B1)*99,99)這部分公式運(yùn)算后,得到的結(jié)果是我們實(shí)際需要的容值數(shù)據(jù)包含在前后空格中。為了便于大家理解,臨時(shí)將空格換成-,可以直觀地看出效果:

我們肯定不希望得到的結(jié)果中包含有大量無用的空格,因此在最外層套一個(gè)TRIM函數(shù)去掉這些空格。TRIM函數(shù)只有一個(gè)參數(shù),功能就是去掉字符串中多余的空格。
理解了這個(gè)公式嗎?為何要用99個(gè)空格呢?
****部落窩教育-excel數(shù)據(jù)提取技巧****
原創(chuàng):老菜鳥/部落窩教育(未經(jīng)同意,請勿轉(zhuǎn)載)
更多教程:部落窩教育(www.itblw.com)
微信公眾號(hào):exceljiaocheng