當前位置:
首頁 > 最新 > 決勝職場的必備Excel函數

決勝職場的必備Excel函數

如果我們把工作職場也當作一個Excel水平的競技場,大家覺得憑藉自己已經掌握的這些函數卡牌可以站上哪一級呢?有沒有哪些函數或者函數的組合是在某個層級上的必備之選呢?那麼接下來的時間呢,我就來為大家描繪一下職場當中的Excel水平層級劃分,同時呢根據各個層級為大家推薦一些最有必要了解和掌握的函數和公式技巧。

我們首先看到的是1級競技場,也就是最初級的水平。在這個層級當中的需求呢,通常是一些最基本的統計需求,例如求和、統計個數、求平均值、最大值、最小值等等;有時候還需要在統計的基礎上對結果的精度做一些調整,例如四捨五入並保留幾位小數,或者直接保留整數結果等等。

那麼在這裡需要用到的就是跟這些統計需求相關的函數,比如SUM求和函數和COUNT/COUNTA計數函數,就是使用頻率很高的函數,就好像哥布林兩兄弟一樣。

這幾個函數都非常簡單易用,掌握這些函數幾乎不需要具備什麼背景知識或技巧,使用Excel的自動求和功能甚至可以幫你自動生成這些函數公式。

這裡唯一需要提醒的,就是要注意COUNT函數和COUNTA函數的區別。這兩個函數都是用來統計個數,但前者的統計對象只有數值,而後者會把其他類型的數據單元格也包含其中,只要不是空白單元格,就都會統計進去。

例如上面這張圖當中,同樣都是對7個單元格進行統計,但COUNT函數的眼裡只有那三個數字,剩下的幾個名字都被忽略了;而COUNTA函數就把包含數字和名字的這幾個單元格一股腦兒統計在內,只把空白單元格排除在外。COUNTA函數名稱當中的字母A可以看作是英文「All」全部、所有的意思。

接下來進入2級競技場。從這一級開始,才算是真正踏上函數公式的道路了。在這裡,你需要了解一些有關於函數參數的知識,學會讀懂函數的語法(沒錯,函數公式就像遣詞造句一樣,也有語法規則),了解每個參數的具體含義是什麼,以及參數的不同設置會對結果產生什麼樣的影響。

在這一級別當中,你需要掌握一些簡單的文本處理公式技巧;

了解和掌握多個函數嵌套組合的使用方法,函數就像卡牌,組合起來使用才更具威力;

學會使用IF函數進行一些簡單的邏輯判斷;

除了獲取最大值和最小值之外,還會使用LARGE或SMALL函數提取任意排名中的數據;

除此之外,如果需要進行排班、抽籤等涉及公平性、隨機性方面的事務,你還有必要了解一下隨機函數RAND。

野豬騎士是遊戲中很多人喜歡使用的一張卡牌,進攻非常犀利。類似的,在對文本字元串進行拆分處理的一些問題當中,LEFT、MID和RIGHT這幾個函數也是出場頻率最高的函數,簡單而實用。但在一些現實工作當中,各種情況複雜多變,光靠前面這三個函數往往無法做到靈活處理,還需要搭配LEN函數、FIND函數等一些函數來進行配合使用。這就好比野豬同樣也需要搭配閃電或冰凍法術來使用一樣。

來舉兩個例子。

第一個例子,有B列這樣一列文本,每個單元格的內容是兩個站點的名稱,需要將其中的兩個名稱分別提取出來,生成C列和D列這樣的結果。這裡由於每個站點名稱的長度都不盡相同,如果單純使用LEFT或RIGHT函數很難找到一個統一的第二參數一次性得到全部對象的提取結果。

因此更科學高效的方案是利用每兩個站點名稱當中出現的標誌性字元「至」,比如「新天地至南京西路」中間的「至」、「上海圖書館至靜安寺」中間的「至」,利用這個字的分隔性作用,藉助FIND函數來找到這個字的所在位置,再根據這個位置進行一些調整,這樣就能夠確定LEFT或RIGHT函數所需要的第二參數的具體取值了。我們來看一下下面這張圖:

先通過FIND函數先查找「至」字所在的位置,將這個位置減去1,就是左側站點名稱的長度;類似的,如果將整個字元串的長度減去「至」的位置,就可以確定右側站點名稱的長度。有了這兩個長度結果,最後再使用LEFT和RIGHT函數就可以分別提取出左側站點和右側站點的名稱了。

所以最終的解決方案可以是下面圖中這個樣子的,C列使用第12行中所顯示的公式,D列的公式顯示在第13行當中:

再來看第二個例子:

第二個例子,B列當中有中文和英文數字混排的字元串,比較有規律的地方在於中文字元都在左側,而字母和數字都出現在右側,沒有相互混雜的情況,現在需要把這兩部分分別提取出來,生成C列和D列這樣的結果。這個問題應該如何處理呢?

需要說明的是,到目前為止,Excel當中還沒有能夠自動識別中文還是英文的這樣一個函數,但是中文字元和英文字元以及數字之間,存在一個比較隱蔽的差異,就是中文字元都是全形字元,每個字元包含兩個位元組;而普通的英文數字都是半形字元,每個字元只包含一個位元組。利用這個特性,我們可以使用LEN函數和LENB函數分別測量出目標字元串中的字元個數和位元組個數,兩者對比產生的差異,就可以反映出其中中文字元的個數了。

具體的原理可以看一下下面這張圖:

使用LENB函數可以獲取整個字元串當中所包含的位元組數,比如圖上的這些A就代表了位元組;而使用LEN函數可以獲取整個字元串當中的字元個數,這張圖上的這些B就代表了字元;可以很明顯的看出來,每個漢字會多出一個A,因此A的總數量會比B的數量多出4個,也就是其中漢字的個數。所以,漢字的個數就等於位元組數減去字元數。

所以最終的解決方案可以是上面圖中的這個樣子,通過LENB和LEN函數分別獲取字元串中的位元組個數和字元個數,通過兩者的差值得到漢字個數,再用LEFT函數將其提取出來;另一方面,英文和數字的個數就等於總字元個數減去漢字個數,做一下數學換算可以知道實際就等價於兩倍的字元個數減去位元組個數,獲取到這個結果以後就可以使用RIGHT函數提取出右邊的這些字母和數字,這樣就能實現中英文的分離處理了。

所以通過上面的兩個例子,我們可以了解到對於一些複雜的字元串處理問題,通常都需要多種不同功能的文本處理函數一起協同工作、配合使用,才能有效的達到目的。

接下來進入到3級競技場,到了這一層級,就有必要掌握一些有關於日期時間數據的處理方法了。在工作當中很多數據都是跟日期相關的,比如每天的進銷存數據、每天每個時刻的用戶訪問數據、項目計劃的時間安排等等,要對這類數據進行有效處理分析,就有必要了解日期的相關背景知識。其中包括日期和數值之間的轉換關係、日期的規範化處理以及日期相關的運算方法等等。

其實,在Excel當中,日期的實質就是從1900年1月1日這天開始每天累計遞增的一個數字,了解了這個本質特性之後,日期的常規運算都可以轉化成數學上簡單的算術運算。要處理一些更複雜的日期換算呢就需要用到圖上所顯示的這些常用的日期函數了,但這些日期函數在使用上也都算不上複雜,只有一些簡單的參數設置。

YEAR/MONTH/DAY函數可以從日期當中分別拆分出年/月/日信息;

TODAY和NOW函數可以自動獲取系統當前的日期和時間,可以用於建立一些具備到期提醒功能的自動化模型;WEEKDAY和WEEKNUM可以處理與星期相關的問題;

而WORKDAY和NETWORKDAYS函數則主要進行跟工作日有關的運算。

這裡我選擇了一些有時間限制的遊戲卡牌作為他們的象徵。

其中值得特別一提的是WORKDAY函數,它可以用來推算若干個工作日以後的具體日期,在一些項目管理的場景中應用較多。在常規的用法當中,這個函數對工作日的定義就是一周當中排除掉周六和周日以後的其他幾天。比如下面圖中所顯示的這個例子:

2016年4月25日之後的第10個工作日的日期,使用WORKDAY函數得到的結果是2016年5月9日,實際上就是把這段日期當中所包含的四個周六和周日都排除在外了,可以看一下下面這張圖的示意:

但是除了常規的周六周日之外,有時候也會有一些法定假日不能算在工作日之內,比如今年的五一節,除了30號和1號之外,五月二號禮拜一也是安排為假日。在這種情況下,如何可以把法定假日也排除在外,正確的推算工作日日期呢?

在這種情況下就可以利用WORKDAY函數隱含的第三個參數,來為函數指定一些需要特殊處理的非周末假期。具體操作方法是將這些非周末假期羅列在表格當中,然後使用WORKDAY函數時將第三參數引用這個羅列了假期的單元格區域,就可以正確計算了。具體公式可以看下面這張圖。與此類似,NETWORKDAYS函數也可以在計算工作日天數時排除一些特定的假期。

下面這張圖就示意了定義過特殊假期以後,WORKDAY函數的實際運算方式:

從這個案例當中,可以了解到,有些函數會包含一些比較隱蔽的參數,這些參數在平常函數的使用中可以不參與不出現,所以往往容易被人忽略,但有一些時候這些參數卻能起到非常重要的作用,除了上面提到的WORKDAY、NETWORKDAYS函數之外,類似的情況還有RANK函數的第3個參數、FIND函數的第3個參數、SUBSTITUTE函數的第4個參數等等。

下面圖片當中簡單羅列了這些需要注意的函數:

圖上這些函數當中都包含了比較隱蔽的參數,這些參數平時可以忽略掉,也就是不去使用,但是不應該忽視他們的作用,說不定什麼時候就用得上了。

再往上就可以進入到4級競技場了。

到了這個層級,很多人見到了熟悉的VLOOKUP函數。這個函數是許多朋友對於函數公式的初戀,很多人都是通過這個函數開始認識和了解Excel函數公式的,也有很多人從這裡開始體會到函數公式的強大。因為熟悉,所以很多人覺得VLOOKUP函數比較簡單,但要把這個函數真正理解吃透還是需要下點功夫。

這就好比遊戲當中的巨人卡牌,這張牌從一開始就可以使用,非常強大也非常好用,但是越到後面才越體會到這張牌用得好不好還是有很大差別的;

HLOOKUP函數和VLOOKUP用法幾乎一樣,所以經常會放到一起來介紹;

接觸到這些查詢函數之後,難免有時候會出現查找不到目標的情況,因此有時還要對查找產生的錯誤值進行一些優化處理,IFERROR函數就是這類需求當中一個比較好的選擇;

到了這個層級之後,許多公式往往需要進行大範圍的填充複製來發揮更大的作用,在這種情況下就必須清楚的理解單元格地址的絕對引用和相對引用這兩個概念了;

除此之外,ROW函數和COLUMN函數是表格中的高級計數器,可以對函數公式的大範圍應用起到非常重要的輔助作用,要讓公式從跑變飛,往往少不了它倆的出手相助,就好比遊戲里的狂暴藥水一樣,非常有用的一種輔助類法術;

COUNTIF函數和SUMIF函數,可以把單一的個數統計和求和運算,變成具備一定篩選功能的統計,這就比原先的統計方式更加提升了一步;

最後一個RANK函數可以在不改變數據原有排列順序的情況下得到每個數的排名,比排序操作來的更加靈活方便。

以上這些就是這個層級當中這些函數的一個基本介紹。

接下來,我也舉一個具體的例子,來詳細講一講VLOOKUP函數的用法。

很多時候我們都會整理出一些信息表,比如員工信息表、商品信息表、材料明細表等等,有時候我們會需要根據某些關鍵信息去這些表裡面查詢與之相關的內容,比如根據員工的姓名去信息表中查詢他的學歷,根據某個商品編號去信息表中查詢它的進貨價格等等,在這類需求當中,如果依靠人工查找的話既費時又費力,而使用VLOOKUP函數則可以很輕鬆的實現大批量的自動查詢,因此也有朋友把VLOOKUP函數稱為「查表函數」。

比如在上面這張圖當中,F列到J列提供了一份培訓信息庫,裡面包含了許多員工參加培訓的一些信息。現在B列當中提供了一些待查詢的員工姓名,需要根據這些提供的名單,找出他們參加的培訓課程名稱以及取得的學分。這個問題就是適合使用VLOOKUP函數來處理的一個典型問題。

下面先來看一下VLOOKUP函數的語法規則:

VLOOKUP函數需要設置四個參數來進行具體的查詢,第一個參數是查詢依據,也就是用於查詢的關鍵信息,例如待查詢的某個姓名或是某個商品編號等等。

第二個參數是信息源,也就是需要給出存放具體信息的信息庫所在的單元格範圍。這裡需要注意的一個問題是,不管信息庫本身有多少列,必須用可以找到關鍵信息的那一列作為查詢範圍的首列。比如假定用姓名作為關鍵信息進行查詢的話,這個單元格範圍就必須以信息庫當中的姓名列作為首列,而是要編號進行查詢的話,就必須以編號列作為首列。

下面這個圖上就給出了一個具體的例子,比如我希望根據姓名作為關鍵信息來查詢學歷,那麼第二參數選擇信息庫範圍時就應該從姓名列開始一直包含到學歷列;而如果希望根據編號來查詢學歷,那麼第二參數的選擇範圍就要從編號列開始選取一直包含到學歷列為止。

第三個參數要給出目標位置,也就是想要查詢的具體信息在信息源範圍當中的相對列序號,這句話聽上去比較拗口,實際操作的時候可以這樣來確定:假定希望根據姓名找出學歷信息,那麼在信息庫當中以姓名作為首列,從姓名列開始一直到學歷所在的列,總共包含了多少列,就是這個參數的取值。

比如在前面的圖中可以看到,如果用姓名查學歷的話,那麼第三參數就是5,從姓名列到學歷列一共包含了5列;如果用編號來查詢學歷的話,那麼第三參數就應該取6,其中一共包含了6列。

第四個參數用來設定VLOOKUP函數的工作模式,通常取值為0表示工作模式為精確查找。

搞清楚這四個參數的具體含義和設置規則之後,就不難寫出整個VLOOKUP公式了。在前面那個案例當中使用這個公式,就可以完成幾個人的信息查詢,具體可以看一下下面這張圖:

這張圖上,查找課程名稱和查找學分使用了兩個不同的VLOOKUP公式,其中的區別就在於第三參數的設置上,需要根據具體信息存放的位置來調整,一個設成2,另一個設成4。

在這個結果當中,我們看到庄偉、王美芬、黃桂晶這幾個人的相關信息都用公式查找到了,但是周愛暉的查詢結果顯示了兩個錯誤值#N/A,這是因為在F列提供的培訓信息庫名單當中沒有這位員工的相關信息。因此VLOOKUP函數會得到一個錯誤值,以此來表示沒有找到目標的這麼一個結果。與此類似的,LOOKUP、MATCH等其他一些查找函數也會在查詢不到目標的情況下返回這樣的錯誤值。

有些朋友覺得錯誤值太扎眼,希望進行一些優化處理,不讓這些錯誤值顯示出來,而是使用一些更加友好的提示信息來替代,比如「信息不存在」等等。這類需求就可以派IFERROR函數來登場了。

IFERROR函數和IF函數的用法有些相似,但也有不同。它只需要兩個參數,第一個參數是需要判斷是否出現錯誤值的對象,通常是另外的某個公式,比如我們上面所使用的VLOOKUP查詢公式,如果這個對象沒有出現錯誤,就直接得到它的結果,如果出現錯誤,那就得到第二參數中設定的另外一個結果。因此,我們把這個函數用上,就可以讓前面案例中的結果顯得更好看一些:

從這張圖上可以看到,我們把VLOOKUP函數這部分作為IFERROR函數的第一個參數來使用,如果VLOOKUP函數能夠正常查找的話,就直接顯示結果了;如果找不到目標產生錯誤值呢,那麼就用IFERROR函數第二個參數中所設定的結果來替代。所以周愛暉的查詢結果就會顯示「無」這個字表示沒有找到。

更進一步就來到了5級競技場。

在這一級別當中,你應該了解更多的查詢引用函數例如MATCH函數和INDEX函數,來處理一些更加複雜的查詢問題,例如交叉查詢。這兩個函數經常配合起來一起使用,就好比遊戲當中白王子和黑王子兩張卡牌;

與他們關係密切的還有OFFSET函數和INDIRECT函數,這兩個函數的特點是可以通過給定的行列坐標,定位到一個具體的單元格對象上。這就好比遊戲中的閃電和火箭這樣的遠程武器卡牌,可以精確打擊戰場上的任意一個位置;

最後兩個COUNTIFS函數和SUMIFS函數是前一級競技場中COUNTIF函數和SUMIF函數的升級版,他們差別就在於函數名稱當中的那個字母S,從單數變成了複數,從處理單個條件的統計變成可以處理多個條件的統計,這兩個函數的統計能力又再一次得到了提升。

下面舉一個具體的例子,來介紹一下MATCH函數和INDEX函數配合使用的方法。

上面的圖中顯示了這樣一個場景,某個公司制定了非常細緻的獎金係數規則,需要根據不同的崗位級別以及所屬的部門來確定具體的獎金係數,即使在同一個崗位級別上也會因為部門的不同而造成係數的差異。

具體的規則形成了G列到L列當中顯示的這張係數對照表。現在呢,需要根據B列到D列當中所提供的這些人員名單,來查詢他們具體的獎金係數應該取多少。大家來思考一下這個問題憑藉你們現在所掌握的函數卡牌,有沒有理想的解決方案呢?

如果仔細觀察這個案例的話,其實可以發現跟前一個案例當中的信息查詢有那麼一些類似,假定以部門作為關鍵信息,忽略崗位級別的話,就是要根據每個人所屬的部門去數據源當中進行查詢,這就看上去跟我們前面VLOOKUP函數的場景很像了。

但是隨著而來的問題是,如果使用VLOOKUP函數,那麼第三參數應該怎麼取呢?

這裡的第三參數貌似並不是一個固定的取值,而是需要根據不同的崗位級別來確定的,如果崗位級別為A,第三參數就取2;如果為B,就取3等等。所以需要提供一種機制,能夠根據崗位級別來進行自動判斷。

因此這裡實際上不僅要在縱向上查詢部門,還要在橫向上查詢崗位級別,兩者確定以後的交叉位置,才是真正需要尋找的目標信息所在,因此這類問題也稱為交叉查詢問題。僅僅依靠VLOOKUP函數或HLOOKUP函數這種單一方向的查詢函數很難奏效。因此有必要再學習了解一下MATCH函數的用法。

MATCH函數又稱為位置查詢函數,它的作用是查詢某個對象在一組對象當中的排列位置。

使用這個函數需要提供三個參數,第一個參數是具體的查找對象;

第二個參數目標範圍,也就是包含這個查找對象的一組對象所在範圍,通常是某一行或某一列的單元格區域;

第三個參數也是工作模式,通常我們也選擇0使用精確查找的工作模式。

有了這個函數,我們就可以分別根據部門和崗位級別,找出對照表裡面相應的行列坐標位置。我們可以在表格中添加兩個輔助列,先用MATCH函數來獲取行坐標和列坐標,就像下面圖中所顯示的這樣:

F列用MATCH函數對部門進行一個縱向查找,這樣可以找到部門所在行的坐標。比如黃曉薇屬於客服部,客服部根據MATCH函數找到相關的係數信息位於第8行,8就是這個行的坐標。

類似的,G列根據崗位級別進行MATCH函數的橫向查詢。比如黃曉薇A級的相關係數信息就找到都位於第10列(也就是J列)當中。

那麼有了這兩個坐標以後,怎麼樣可以定位到具體的獎金係數呢?下面就輪到INDEX函數出場了。

INDEX函數可以根據行列坐標來具體定位到目標單元格。

它需要三個參數,第一個參數是先確定一個區域範圍;

第二參數和第三參數分別代表行坐標和列坐標;

如果只用一個坐標,也可以在單獨某一行或某一列中進行定位。

從這裡可以看出來,INDEX函數和MATCH函數簡直就是天生的好基友,兩個函數一個能找坐標,另一個就能根據坐標找到目標。

因此在前面的這個案例當中,我們最終可以藉助INDEX函數查詢到具體的獎金係數,詳細公式顯示在下面的圖中:

功力繼續精進的話,就可以到達6級競技場了。在這個層面上,你需要認識一些平時不太關注但卻非常有用的函數。

比如VLOOKUP函數的大師兄LOOKUP函數,這個函數的不僅能夠實現精確查詢的作用,更重要的是他具備區間分段查詢的功能,並且在具體使用上比VLOOKUP函數更加靈活。他們兩者的關係就好像皇家巨人跟巨人之間的關係,兩張牌各有千秋,都擁有不少的粉絲;

如果你已經用慣了COUNTIFS和SUMIFS函數,也許就不太會注意到SUMPRODUCT這個函數了,事實上SUMPRODUCT函數比前面兩個函數更加強大、更加靈活。如果把COUNTIF家族比作骷髏卡牌的話,那麼SUMPRODUCT就是加了盾牌的骷髏;

DATEDIF函數是一個Excel當中的隱藏函數,在函數列表和函數嚮導當中甚至找不到它的蹤影。但是它卻是用來計算兩個日期之間間隔了多少個月、多少年的有力武器,最重要的是,它在計算過程當中可以精確到具體的某一天。想要算周歲年齡嗎,就可以用它來處理;

TEXT函數非常神奇,它和單元格格式的作用有一些相似,可以把一個數據變換成另外一種樣子,就好像一面魔鏡,鏡子里顯現出另一番景象。用好這個函數的關鍵在於需要掌握許多格式代碼,通過這些格式代碼來呈現不同的效果,這些格式代碼就像對魔鏡念的咒語;

SUBSTITUTE函數,因為這個函數名稱字母很多,很難念也很難寫,因此幾乎被很多人遺忘了。但事實上要記住這個函數並不困難,在體育比賽中的換人用的就是這個詞,而它在函數中的作用就是在文本字元串當中進行查找替換,就像換人一樣;

最後一個PHONETIC函數的經歷也很奇特,它的功能是可以同時引用一批單元格,把這些單元格當中的文字內容拼接成一個完整的字元串,但這個函數被創造出來的初衷其實並不是用來干這個活兒的,被大家這麼用來拼接字元串完全屬於無心插柳。

所以,到了這個層級,你自然而然就會去了解許多函數背後的故事。在這個層級上,你也許還會慢慢認識數組公式這個強大的工具,它就好像一把強大的螺絲刀,可以把普普通通的函數拼裝出更加高效更加強力的公式來。這是一個可以讓公式能力得到飛躍的工具,如果你希望達到更高水平的話,很有必要了解一下。

下面呢同樣舉個例子,來為大家介紹一下LOOKUP函數在區間分段查詢場景當中的使用方法。

現在許多公司都施行精細化管理,在考核和激勵機制上的設計都非常細緻,比如有這樣一家公司,為了更好的激勵員工的銷售,設計了一套銷售提成比例的規則,為各個不同檔次的銷售業績制定了不同的銷售提成比例,形成了F列到H列這樣五六個分檔區間。

現在需要根據C列當中每位員工實際的銷售業績,來確定到底應該按照多少的提成比例進行提成計算。

有很多初學者碰到類似這樣的問題,會首先考慮使用IF函數來羅列一個個判斷條件,通過一串複雜的邏輯組合得到最終的查詢結果。沒錯,這種做法算不上錯,還可以很好的鍛煉邏輯分析能力,但從公式編寫效率上來講是非常失敗的,整個公式會變得非常複雜,編寫當中還容易出錯。對於這類需要在不同區間分段上進行判斷的場景,更高效實用的方案還是使用LOOKUP函數來進行處理。

LOOKUP函數有兩種不同的用法,比較常用的一種方式需要三個參數。

第一個參數是具體需要判斷查詢的目標數值,比如某個員工的具體銷售額;

第二個參數是每個分段區間的下限數值所組成的一個數組,比如1000~2999、3000~4999、5000~9999這幾個分段區間的話,他們的區間下限就分別是1000、3000、5000這幾個數。把這幾個數組成數組,並且要求從小到大排列,就構成了第二個參數;

第三個參數就是要給出每個區間所對應的具體信息,比如目標是查詢提成比例,那麼剛才那幾個區間所對應的幾個具體的提成比例,組成一個數組,就是它的第三參數。

這個LOOKUP函數的難點主要在原理的理解上,具體的參數設置其實並不複雜。把前面介紹的這些參數規則套在剛才那個具體的案例當中,就不難寫出公式了,具體實現方法可以參考下面的圖片:

D列當中就是簡簡單單使用了LOOKUP函數,不需要一個個區間去人工判斷,它自動就能夠將銷售業績在每個區間裡面進行查詢判斷,最終得到所在區間所對應的提成比例。

再往高處走,就到達本次分享當中的最高層級7級競技場了,但這並不意味著函數學習的終點。在這個層級當中,你會接觸到一些更加冷門的函數,冷門意味著知道和使用的人不是那麼多,並不代表函數本身沒有太大用處。

女巫是骷髏軍團的大Boss,在統計類的函數一族當中,我們之前接觸過小骷髏COUNTIF、骷髏軍團COUNTIFS以及帶盾牌的骷髏守衛SUMPRODUCT函數。而現在,家族中的另一位成員FREQUENCY函數也體現出了更高級別的功能,它可以將數值分成多個區間分組,並且統計每個分組當中的數值個數,也就是計算頻數。因此它會生成一組結果,而不是單一的結果;

TRIMMEAN函數,學名叫做修剪平均值,通俗的講就是可以在去除一些極大值和極小值之後,再來計算平均數,在體育比賽例如跳水、體操這類比賽的打分當中經常能看到這種評分方式,相當於小皮卡AVERAGE平均值函數的升級版,因此我用大皮卡來代表它。這個函數在計算平均值時可以去除一些異常數據的干擾,對於數據分析工作很有幫助,在招投標等一些場景當中也很有使用價值;

PERCENTRANK函數,RANK排名函數的兄弟,它可以用百分比的形式來體現排名位置;

MMULT函數,又被稱為MM函數,因此我用女武神作為它的形象代言人。它的作用是對數組進行矩陣乘法運算,聽著就很高大上,在一些複雜的統計處理當中可以發揮作用。但是這個函數在學習和參數構造上都有比較高的難度,因此實際使用者寥寥;

HYPERLINK函數,一個非常另類的函數,絕大部分函數都是在單元格中得到一個具體的數據結果,而這個函數卻可以在單元格當中產生一個超級鏈接,鏈接到其他位置、其他文件甚至鏈接到網頁等等。就好像非常另類的狂暴樵夫卡牌,遊戲中的大部分卡牌我們都希望能夠活得越久越好,而使用樵夫的時候,通常我們總是希望他能早點掛掉;

WEBSERVICE函數,同樣也是一個非常特殊的函數,從Excel 2013版開始才提供了這個函數。它的作用是可以直接從網路上動態的獲取數據。比如有些網站提供了查詢股票信息的網路服務,將服務地址填寫在這個函數的參數當中,通過這個函數就能實時獲取到相應的股票數據信息(例如:=WEBSERVICE("http://hq.sinajs.cn/list=s_sh000001"))。這是非常有想像力的一個函數,它實現了網路數據與Excel之間的無縫鏈接,藉助它可以實現許多自動化智能化的實時數據查詢解決方案,而在以往,這樣的功能往往需要通過VBA編程才能實現。

由於時間關係,這個層級的函數我就不再具體舉例詳細說明了。

下面我們可以換個角度再來回顧一下今天提到的幾個函數:

有些函數功能和用法比較相近,但能力上會有些差異,其中一個函數可以看作是另外一個函數的升級版,例如圖上所提到的這四對,能力上都分別有所提升,有些甚至可以替代低級版的函數。

查詢引用類函數所包含的七大函數是Excel當中最重要的函數代表之一,掌握他們就至少掌握了半個函數江湖。

以上就是今天我為大家帶來的函數功力七大層級的猜想和一些函數的推薦和介紹,希望能夠幫助大家查漏補缺、按圖索驥。Excel當中總共有400多個函數,全部都去學習和了解既不現實也沒必要,職場當中常用的函數其實也就是這樣四五十個。掌握和熟練運用這些函數,就能讓你在大部分工作當中遊刃有餘。

經常有朋友會詢問如何學習函數,經常抱怨記不住等等。在這裡我也給出一些學好函數的建議:

首先第一條,建議通過聯想式的方式來記憶函數名稱以及他們的作用。就好比今天這樣,我把函數跟遊戲結合起來,把有關聯的函數放到一起來介紹,通過這樣的一些聯想式記憶,可以幫助你更好的記住函數名稱,可以幫你更好的理解這些函數的作用和相關性;

第二條,深刻理解函數的參數語法規則。每個函數都有特定的參數語法規則,其中包括參數的順序位置、參數的含義作用、甚至參數的類型等等。比如有的函數參數類型是ref,這就表示這個參數只能通過單元格地址引用來設定,而不能直接使用某個常量或使用另外某個函數的運算結果。只有深刻理解了這些規則,才能正確而合理的運用好函數。

第三條,建議使用一些手段,去跟蹤了解公式運算的中間過程。比如通過F9這個快捷鍵,在公式編輯欄當中選中一段公式內容,然後按F9快捷鍵,就可以看到這段公式的內部運算結果。通過這樣的方式就可以了解到公式運算的中間過程。因為許多公式很長,大都會由多個函數組合而成,通過這種方法可以查看到每一部分的中間運算結果,這個對於整個公式的演算法理解和編輯修改是非常有幫助的,有了這個手段以後可以讓函數的學習能力得到極大的提升。

當然,學習函數公式也和遊戲當中練功升級一樣,並非一朝一夕之功,找到合適的學習方法,養成良好的學習習慣,經常性的實踐操作和鍛煉,嘗試用函數公式去高效的解決問題,這樣才能形成長期的經驗積累,幫助你邁向更高的水平層次,迎接更大的挑戰。


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 數據挖掘與大數據分析 的精彩文章:

如何快速成為數據分析師
單身狗用python寫了個國慶景點推薦,妹子再也不擔心去哪了……

TAG:數據挖掘與大數據分析 |