文/花田半畝UMe
【摘要】:結合實際數據分析工作,簡要介紹了VLOOKUP函數的基礎應用,重點介紹親測高效有難度的VLOOKUP函數高級應用。最后分享我運用Excel的一點技巧。
畢業后,第一份工作是在一家互聯網公司做數據分析。
盡管和所學專業沒那么匹配,但我還是挺滿意。因為向來對數字很敏感,對常用統計軟件也都有所了解。
正式入職,發現面試時說的什么SPSS,Eviews統統都不用,基本就是用Excel。對于研究生畢業,第一份工作,我多少有些落差。既來之則安之,我心想用什么工具最方便,工作中應該可以自己選擇。對于word和ppt還算熟練,Excel也就一般。多學點總不會差。
開始工作,我發現Excel的功能簡直太強大,我之前了解的僅是皮毛。尤其在更新到2013版后,操作更智能和快捷,數據量大時計算較費時。對于日常工作影響倒不大,借助Excel我的數據分析工作也很快上手。
除了宏不太會,工作之余也會多琢磨一些公式和操作。以至于同辦公室的同事,甚至外部門的同事都來找我幫忙解決Excel的問題。時間久了,領導特意讓我在部門內部定期做教學分享。
我確實喜歡和數據打交道的感覺,從冗雜的繁瑣數據中分析出最終的結果相當有成就感。在簡書上也看到了許多實用的Excel操作指南或技巧。
今天分享一個職場中最常用,功能強大,卻少有人掌握的VLOOKUP函數。很多文章都提到過這個函數的基礎應用,此外還有一個高級應用,是我在工作中遇到,親測高效快捷的有力工具。
VLOOKUP函數---最最最常用的查找函數
四個必備參數=(要查找的值,要查找的區域,返回數據在查找區域的第幾列數,邏輯值)
注: ?FALSE或0,則返回精確匹配,如果找不到,則返回錯誤值 #N/A(首選)
? ? ? ?TRUE或1,則返回近似匹配值,如果找不到,則返回小于第一個參數的最大值。
VLOOKUP函數的基礎應用:一對一的匹配
理解上述文字很晦澀,用實例來說明。
例1: 下圖中左表為源數據:各類產品在三個城市的日銷售數據。
需求:查詢產品B和F在上海的銷售額。
因為提供的數據量很少,人工查找就能完成。但實際工作中數據量很龐大,人工查找費時費力且準確率低。這時用VLOOKUP一秒搞定。
做法:在G2單元格內,輸入公式,見紅框內。回車后,出現結果;將公式復制或下拉至G3,同理可得結果。
參數解釋:
(1)“F2”為我們要查找的參照值,即在源數據第一列查找“產品B”。當公式下拉復制時,自動切換為查找F3。 ? ?
(2)“A:C”指我們要在此范圍內查找數據。該參數也可寫為“$A$2:$C$9”,即絕對引用。這樣可保證無論公式如何拖拽復制,數據源始終固定引用該區域。 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
(3)參數“3”指在選擇的數據源“A列-C列”范圍內,要查詢的銷量在引用的第三列,即C列。
(4)FALSE,即精確查找。
這樣,通過應用該函數,實現了產品型號和銷量一對一的匹配查找。
應用該公式的硬性條件:
(1)必須保證需要查找的參照值與源數據格式一致。
即例1中:F列與A列完全一致,不僅內容相同,尤其保證單元格格式一致,否則只會返回錯誤值 #N/A。如不一致,查找前需轉換成一致的格式。有時較難分辨。
(2)必須保證源數據表中的第一列沒有重復項。
即A列中沒有出現重復的產品類型。假如源數據中出現了多行“產品B”,那么在查找時只能返回第一次“產品B”出現時對應的銷量。
當(2)無法滿足時,查找不再是一對一,而是一對多的匹配。需要對VLOOKUP函數進行擴展才得以實現查找功能。
VLOOKUP函數的高級應用:一對多的匹配
例2:下圖左表為客服中心的每日工作記錄,日積月累,這個表數據量龐大且信息冗雜。
需求:王丹和張鵬崗位變動,需將他們接待過的全部客戶匯總轉交其他同事維護。
數據量小手動篩選即可,使用透視表也可完成。這里我借助簡單的例子,介紹如何使用VLOOKUP完成。當數據量龐大,這是較便利的方法。
做法:
第一步:將A列排序,在A與B列間新插入兩列。
第二步:計數。在B2輸入公式=COUNTIF(A$2:A2,A2),回車,下拉即可。
目的是對A列中同一個名字的出現次數進行計算。如圖李珊出現了四次。
第三步:構建輔助列。在C2輸入公式=A2&B2,回車,下拉即可。目的在于將A列B列的內容合并。這時C列即為輔助列。保證了源數據的唯一性,此時已滿足VLOOKUP基礎應用的第二個硬性條件。
第四步:進行匹配查找。在H2輸入公式=VLOOKUP($G2&H$1,$C$2:$D$18,2,FALSE), ?復制公式至其他單元格即可得到結果。
與基礎應用相比,僅參數1有變化,涉及相對引用和絕對引用問題。
參數1:將“客服姓名&序號“合并作為第一個參數。公式向右向下復制后,“客服姓名”行變列不變,所以鎖定列。“序號”列變行不變,所以鎖定行。即為:“$G2&H$1”。鎖定即絕對引用。(此處較難理解,操作中通過嘗試能夠理解透)
參數2:絕對引用C2至D18區域。即為:“$C$2:$D$18”,新數據源。
參數3:返回所選區域C2至D18中的第2列數據。即為:客戶姓名
參數4:FALSE,即精確查找。
第五步:將H2中的公式向下向右復制至K3,即得全部結果。可對比源數據表驗證是否正確。
在序號為4的單元格內出現了#N/A值。表明沒有找到“王丹4”和“張鵬4”對應的內容,說明這兩人接待的客戶僅有3人。
這樣,通過其他功能輔助,實現了客服與客戶一對多的匹配查找。
總結:VLOOKUP的高級應用是在基礎應用的基礎上,借助了COUNTIF和&函數,構建輔助列,使得源數據表中第一列無重復。四個必備參數中僅參數1涉及絕對引用和相對引用,略有難度。
應用Excel的技巧
1.填充了公式的單元格,在得到結果后,最好將計算結果轉換為“值”。
兩個好處:一是避免源數據的任何變動再次影響公式的計算結果;二是Excel本身計算較費時。如公式一直存在,每次打開該文件,或是刷新時都會重新計算,嚴重影響Excel運算速度。
2.Excel的數據承載量相對較小。2013版每個sheet能夠填充接近105萬行。
如果涉及較多sheet,數據量可想而知。因此在上一條的基礎上,必須及時保存,否則數據量大時Excel難免會出現重啟。畢竟多數人用的都是免費版,為了避免做無用功,及時保存很重要。這可是次次抓狂的經驗教訓。
3.Excel的功能很豐富,沒有哪一本書或是哪一個老師能夠完全教會所有功能。
更實際的是,從點到面去學習。比如說我介紹了VLOOKUP函數的應用,其中涉及到了絕對引用的概念,以及countif函數的應用,這時就引導你去學習新知識。
任何功能的組合都能起到耳目一新的作用。
4.Excel做不到死記硬背,多練習才利于掌握。
比如說,在工作中我給同事教過無數次VLOOKUP函數的應用,當時似懂非懂,勉強會用。想不到的是他們下一次遇到早已忘得一干二凈。在我看來是很簡單的一個公式而已,僅需掌握四個參數。關鍵是他們不常用,而我幾乎天天用。
任何技能都是如此。孰能生巧,才能更快掌握更多功能。哪怕是多記幾個快捷鍵,都會為你使用Excel加分不少。
多學一點技能,就能少求助別人,且讓別人來求助于你。普通離優秀,永遠差一項技能。
寫出來為分享,也為記錄。
PS:如果沒有看懂,或是覺得現在用不到我介紹的公式。沒關系,請收藏,因為工作后,無論做什么工作一定一定一定會用到VLOOKUP。
請尊重原創的辛苦。
歡迎分享,歡迎交流。
END