編按:哈嘍,大家好!如果此刻讓你快速提取漢字拼音的首字母,你會怎麼做呢?相信大多數小夥伴面對這個問題時,都會蒙圈,可能會想「這應該得用VBA解決吧,函數應該不行吧。」其實呀,這個問題用大家都會的VLOOKUP函數就能搞定,趕緊來看看吧!
在某些特殊的情況下,我們可能需要用到拼音首字母。
例如A列是員工姓名,需要在B列填寫對應的拼音首字母:
如果遇上這種問題該怎麼辦?
據說需要VBA才能做到,可是對於連函數都還沒學會幾個的普通用戶來說,難道真的只能一個一個手動輸入嗎?
實際上使用一個大家都非常熟悉的VLOOKUP函數也是可以搞定這個問題的,不過公式嘛,就有點嚇人,是這個樣子的:
看到這個公式是不是都蒙圈了。
可千萬不要被這個表面上看起來很誇張的公式嚇到,我們換一種寫法,也許你就看明白了。
怎麼樣,這個公式是不是有點看明白了。
與第一個公式的區別就在於,後面這個公式是把VLOOKUP的第二參數放在單元格區域中了,公式的本質並沒有什麼區別。
因為名單中的姓名都不超過三個字,所以先用MID函數將每個字單獨提取出來,使用VLOOKUP得到每個字的拼音首字母,再把三個VLOOKUP函數用&連接起來。
因此公式的核心其實是=VLOOKUP(MID(A2,1,1),$D$1:$E$24,2)。
對於VLOOKUP函數的用法,大家應該都比較熟悉了,格式是:VLOOKUP(查找值,查找區域,在第幾列找,怎麼找)。
在本例中,要重點說明的有下面幾個要點:
1.第一參數可以使用公式,本例中分別使用MID(A2,1,1)、MID(A2,2,1)和MID(A2,3,1)作為查找值;
2.本例中的VLOOKUP函數隻用了三個參數,同時省略了第三參數2後面的逗號,這種寫法表示使用了VLOOKUP函數模糊匹配,與第四參數為1的功能相同;
3.關於省略VLOOKUP函數最後一個參數的意義,一定要注意一點,省略參數而不省略逗號時,表示精確匹配,與第四參數為0的功能相同;
4.有時候為了避免使用單元格區域作為查找區域,第二參數可以使用常量數組的方式,本例中開頭的公式就是用到了常量數組。
當然,要完全明白這個公式的原理,僅僅解釋VLOOKUP函數還是不夠的,D列和E列又是什麼意思,這些字都是怎麼來的,為什麼非得用這些奇奇怪怪的字呢?
簡單來說,漢字在電腦里是有一個機器編碼與之對應的,同時是按照一定的順序排列的,或者可以理解,漢字也是有「大小」的。
為了讓大家更容易理解,我們可以先用數字來做個示例:
假如有0到100之間的數字,十個數字對應同一個字母(紅框中的對應規則),我們可以使用公式=VLOOKUP(G2,$I$2:$J$12,2)得到某個數字所對應的字母。
VLOOKUP函數的這種用法就是模糊匹配,或者說是區間匹配,之前我們出過專門介紹這個用法的教程。
簡單來說,要使用模糊匹配,有兩個要點要牢記:
1.查找區域的數據必須是升序排列的;
2.區域的首列是區間所對應的下限值。
如果理解了這些要點,再來看拼音的問題,就很容易明白,D列的每個字都是該拼音開頭的第一個字(下限)。
最後一個問題,有細心的同學也許發現了,數據是從第二行開始的,為什麼公式里的區域是從第一行開始的?
其實第一個字上面並不是空的,而是一個假空(由公式得到的空值)。
之所以這樣做,是為了避免公式中出現錯誤,例如當名字是兩個字的時候,第三個VLOOKUP中的MID就會得到一個空值:
如果在查找區域中,沒有空值的話,公式會得到錯誤值:
好了,關於這個提取拼音首字母的公式就解釋到這裡,可能這種問題並不常見,但今天的主要目的還是為了通過這個特殊的實例來分析一些公式中的細節,細節掌握的越多,你就離高手的距離越近!
最後把不需要輔助區域的公式分享給大家,有需要的話可以自己保存起來,萬一有一天用上的時候,這個公式一定能讓同事對你刮目相看:
=VLOOKUP(MID(A2,1,1),{"",0;"吖","A";"八","B";"攃","C";"咑","D";"鵽","E";"發","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";"旮","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";"旮","G";"哈","H";"丌","J";"咔","K";"垃","L";"媽",
嗯,理解操作原理,然後你就可以自由發揮了!
****部落窩教育-excel提取拼音字母****
原創:老菜鳥/部落窩教育(未經同意,請勿轉載)
更多教程:部落窩教育(www.itblw.com)
微信公眾號:exceljiaocheng