excel查找函數(shù)應用:如何提取姓名的拼音首字母

編按:哈嘍,大家好!如果此刻讓你快速提取漢字拼音的首字母,你會怎么做呢?相信大多數(shù)小伙伴面對這個問題時,都會蒙圈,可能會想“這應該得用VBA解決吧,函數(shù)應該不行吧?!逼鋵嵮?,這個問題用大家都會的VLOOKUP函數(shù)就能搞定,趕緊來看看吧!
在某些特殊的情況下,我們可能需要用到拼音首字母。
例如A列是員工姓名,需要在B列填寫對應的拼音首字母:?

如果遇上這種問題該怎么辦??
據(jù)說需要VBA才能做到,可是對于連函數(shù)都還沒學會幾個的普通用戶來說,難道真的只能一個一個手動輸入嗎??
實際上使用一個大家都非常熟悉的VLOOKUP函數(shù)也是可以搞定這個問題的,不過公式嘛,就有點嚇人,是這個樣子的:?

看到這個公式是不是都蒙圈了。?
可千萬不要被這個表面上看起來很夸張的公式嚇到,我們換一種寫法,也許你就看明白了。?

怎么樣,這個公式是不是有點看明白了。?
與第一個公式的區(qū)別就在于,后面這個公式是把VLOOKUP的第二參數(shù)放在單元格區(qū)域中了,公式的本質(zhì)并沒有什么區(qū)別。?
因為名單中的姓名都不超過三個字,所以先用MID函數(shù)將每個字單獨提取出來,使用VLOOKUP得到每個字的拼音首字母,再把三個VLOOKUP函數(shù)用&連接起來。?
因此公式的核心其實是=VLOOKUP(MID(A2,1,1),$D$1:$E$24,2)。?
對于VLOOKUP函數(shù)的用法,大家應該都比較熟悉了,格式是:VLOOKUP(查找值,查找區(qū)域,在第幾列找,怎么找)。?
在本例中,要重點說明的有下面幾個要點:?
1.第一參數(shù)可以使用公式,本例中分別使用MID(A2,1,1)、MID(A2,2,1)和MID(A2,3,1)作為查找值;?
2.本例中的VLOOKUP函數(shù)只用了三個參數(shù),同時省略了第三參數(shù)2后面的逗號,這種寫法表示使用了VLOOKUP函數(shù)模糊匹配,與第四參數(shù)為1的功能相同;?
3.關于省略VLOOKUP函數(shù)最后一個參數(shù)的意義,一定要注意一點,省略參數(shù)而不省略逗號時,表示精確匹配,與第四參數(shù)為0的功能相同;?
4.有時候為了避免使用單元格區(qū)域作為查找區(qū)域,第二參數(shù)可以使用常量數(shù)組的方式,本例中開頭的公式就是用到了常量數(shù)組。?
當然,要完全明白這個公式的原理,僅僅解釋VLOOKUP函數(shù)還是不夠的,D列和E列又是什么意思,這些字都是怎么來的,為什么非得用這些奇奇怪怪的字呢??
簡單來說,漢字在電腦里是有一個機器編碼與之對應的,同時是按照一定的順序排列的,或者可以理解,漢字也是有“大小”的。?
為了讓大家更容易理解,我們可以先用數(shù)字來做個示例:?
假如有0到100之間的數(shù)字,十個數(shù)字對應同一個字母(紅框中的對應規(guī)則),我們可以使用公式=VLOOKUP(G2,$I$2:$J$12,2)得到某個數(shù)字所對應的字母。?

VLOOKUP函數(shù)的這種用法就是模糊匹配,或者說是區(qū)間匹配,之前我們出過專門介紹這個用法的教程。?
簡單來說,要使用模糊匹配,有兩個要點要牢記:?
1.查找區(qū)域的數(shù)據(jù)必須是升序排列的;?
2.區(qū)域的首列是區(qū)間所對應的下限值。?
如果理解了這些要點,再來看拼音的問題,就很容易明白,D列的每個字都是該拼音開頭的第一個字(下限)。?

最后一個問題,有細心的同學也許發(fā)現(xiàn)了,數(shù)據(jù)是從第二行開始的,為什么公式里的區(qū)域是從第一行開始的??
其實第一個字上面并不是空的,而是一個假空(由公式得到的空值)。?

之所以這樣做,是為了避免公式中出現(xiàn)錯誤,例如當名字是兩個字的時候,第三個VLOOKUP中的MID就會得到一個空值:?

如果在查找區(qū)域中,沒有空值的話,公式會得到錯誤值:?

好了,關于這個提取拼音首字母的公式就解釋到這里,可能這種問題并不常見,但今天的主要目的還是為了通過這個特殊的實例來分析一些公式中的細節(jié),細節(jié)掌握的越多,你就離高手的距離越近!?
最后把不需要輔助區(qū)域的公式分享給大家,有需要的話可以自己保存起來,萬一有一天用上的時候,這個公式一定能讓同事對你刮目相看:?
=VLOOKUP(MID(A2,1,1),{"",0;"吖","A";"八","B";"攃","C";"咑","D";"鵽","E";"發(fā)","F";"旮","G";"哈","H";"丌","J";"咔","K";"垃","L";"媽","M";"乸","N";"噢","O";"帊","P";"七","Q";"冄","R";"仨","S";"他","T";"屲","W";"夕","X";"丫","Y";"帀","Z"},2)&VLOOKUP(MID(A2,2,1),{"",0;"吖","A";"八","B";"攃","C";"咑","D";"鵽","E";"發(fā)","F";"旮","G";"哈","H";"丌","J";"咔","K";"垃","L";"媽","M";"乸","N";"噢","O";"帊","P";"七","Q";"冄","R";"仨","S";"他","T";"屲","W";"夕","X";"丫","Y";"帀","Z"},2)&VLOOKUP(MID(A2,3,1),{"",0;"吖","A";"八","B";"攃","C";"咑","D";"鵽","E";"發(fā)","F";"旮","G";"哈","H";"丌","J";"咔","K";"垃","L";"媽",
嗯,理解操作原理,然后你就可以自由發(fā)揮了!
****部落窩教育-excel提取拼音字母****
原創(chuàng):老菜鳥/部落窩教育(未經(jīng)同意,請勿轉(zhuǎn)載)
更多教程:部落窩教育(www.itblw.com)
微信公眾號:exceljiaocheng