Microsoft Excel 是每個上班族必備的工具,它大大提升了數據分析與報表生成的效率,適用於各個行業,顯著提升工作表現。而讓 Excel 如此強大的關鍵,正是它的公式與函數。
但是 Excel 有超過 450 種以上的函數,真正實用的函數到底有哪些?
在親自試過所有函數後,我最終統整出了 30 個必學函數,總共超過 8000字的內容。如果你想一次搞懂所有重要的函數,這篇文章絕對能夠幫助到你!
那麼我們就開始吧!
EXCEL公式是什麼?
Excel 公式是指 Excel 內建一系列超過 450 種的語法,用來對資料進行計算、處理或分析,最後回傳結果,即使處理資料的過程出現錯誤也會回傳。
Excel公式通常以等號「=
」開頭,後面跟著不同的函數、運算符號或數值,讓我們得以執行加減乘除、計算總和或平均、查找資料等各式操作。
EXCEL公式與EXCEL函數的區別
一般情況下,我們可以將「公式」與「函數」視作同樣的東西,指的都是位於工作表上方,允許我們輸入數字與運算符號的欄位。
但如果真的要計較起來,「公式」與「函數」還是有細微的區別:
公式 | 函數 |
---|---|
是 Excel 中的資料進行計算或處理的「表達式」,公式其中可以包含數字、單元格引用、運算符號以及函數。 | 是 Excel 預先定義好的計算方法,用來執行「特定類型」的計算或處理(如:VLOOKUP、SUM、COUNTIF 等等),且函數是公式的一部分。 |
舉個例子:以下示範 A3 加上 A4 的 2 種方法:
=A3+A4
可以看到「=A3+A4」就是很單純的一行「公式」,其中並沒有包含任何「函數」。
但如果公式長這樣:
=SUM(A3,A4)
這個公式中就有包含「函數」,也就是「=SUM()」的部分
了解「公式」與「函數」的差異後,我們來看看 EXCEL 中最重要的 30 個必學函數吧!
EXCEL必學30大公式
1. VLOOKUP
函數說明:VLOOKUP 用於垂直查找資料,並且回傳你指定的欄位:
=VLOOKUP(查找資料名稱,欲查找之範圍,回傳欄位,完全符合/部分符合)
使用範例:如果你想要抓出「柯佳瑩」的分數,可以輸入以下 VLOOKUP 函數:
=VLOOKUP("柯佳瑩",A:B,2,0)
2. XLOOKUP
函數說明:XLOOKUP 用於「垂直或水平」查找資料,並且回傳你指定的欄位:
=XLOOKUP(查找資料名稱,欲查找之範圍,回傳欄位,[若查無資料則回傳...],[查找方式],[查找方向])
基本上就是 VLOOKUP 的進階版。以下補充「查找方式」與「查找方向」可以輸入的值:
- 查找方式:可輸入 0 / -1 / 1。本例將示範使用頻率最高的「0」,也就是「完全符合」。
- 查找方向:可輸入 1 / -1 / 2 / -2。本例將示範使用頻率最高的「1」,也就是「順向查找」。
使用範例:如果你想要抓出「柯佳瑩」的分數,可以輸入以下 XLOOKUP 函數:
=XLOOKUP("柯佳瑩",A2:A6,B2:B6,"無符合資料",0,1)
3. IF
函數說明:IF 函數用於設定某種條件,滿足該條件時顯示一種值,不滿足時則顯示另一種值:
=IF(設定條件,滿足時顯示...,不滿足時顯示...)
使用範例:如果想要知道班上的及格情況,可以輸入以下 IF 函數:
=IF(B2>=60,"及格","不及格")
4. IFERROR
函數說明: IFERROR 函數用於設定當遇到錯誤提示時(如:#N/A!、#VALUE!、#DIV/0!等),欲回傳的值:
=IFERROR(值,如果出現錯誤則回傳...)
使用範例:遇到除以 0 的情況時,EXCEL 會出現「#DIV/0!」的錯誤提示:
此時可以利用 IFERROR 函數消除錯誤提示:
=IFERROR(A2/B2,"除數為0")
5. COUNT
函數說明: COUNT 函數用於計算某範圍中的「數字儲存格」數量:
=COUNT(選定範圍,選定第二個範圍)
使用範例:利用 COUNT 函數計算 A 欄的「數字儲存格」數量:
=COUNT(A2:A6)
另外,以下是 COUNT 函數納入計算的資料型態:
- 數字(如:20)
- 百分比(如:20%)
- 日期(如:2024/1/1)
- 時間(如:10:00 AM)
6. COUNTA
函數說明: COUNTA 函數用於計算某範圍中的「非空儲存格」數量:
=COUNTA(選定範圍,選定第二個範圍)
使用範例:利用 COUNTA 函數計算 A 欄的「非空儲存格」數量:
=COUNTA(A2:A7)
另外,以下是 COUNTA 函數納入計算的資料型態:
- 文字、數字(如:雞蛋、5000)
- 含有「空格」的儲存格
- 日期(如:1999/05/08)
- 錯誤(如:#NAME!、#VALUE! 等等)
- Boolean(如:TRUE 和 FLASE)
其實不需要背,只要儲存格裡有任何東西,就是會被 COUNTA 函數計算到。
7. COUNTIF
函數說明: COUNTIF 函數用於計算某範圍中「符合單一自訂條件」的儲存格數量:
=COUNTIF(選定範圍,自訂條件)
使用範例:利用 COUNTIF 函數計算班上分數大於等於 60 的人數:
=COUNTIF(B2:B6,">=60")
非常反直覺的是:COUNTIF 函數中自訂條件的運算,要加上雙引號「”>=60″」。只打「>=60」的話 EXCEL 是不會理你的!
8. COUNTIFS
函數說明: COUNTIFS 函數用於計算某範圍中「符合多個自訂條件」的儲存格數量:
=COUNTIFS(選定範圍1,自訂條件1,選定範圍2,自訂條件2,...)
使用範例:利用 COUNTIFS 函數計算班上性別是「女」,且分數大於等於 60 的人數:
=COUNTIFS(B2:B6,"女",C2:C6,">=60")
與 COUNTIF 一樣,COUNTIFS 函數中自訂條件的運算,也要加上雙引號「”>=60″」。只打「>=60」的話 EXCEL 是不會理你的!
9. SUM
函數說明: SUM 函數用於計算選取範圍中的資料總和:
=SUM(數值或範圍1,數值或範圍2,...)
使用範例:利用 SUM 函數計算今日的花費:
=SUM(B2:B6)
10. SUMIF
函數說明: SUMIF 函數用於計算選取範圍中,「符合單一自訂條件」的數值總和。
=SUMIF(選取範圍,自訂條件,要加總的欄位)
使用範例:利用 SUMIF 函數計算今天花在「飲料」上的總花費:
=SUMIF(B2:B6,"飲料",C2:C6)
11. SUMIFS
函數說明: SUMIFS 函數用於計算選取範圍中,「符合多個自訂條件」的數值總和。
=SUMIFS(要加總的欄位,選取範圍1,自訂條件1,選取範圍2,自訂條件2,...)
使用範例:利用 SUMIFS 函數計算今天花在類型為「正餐」且「金額大於等於 100」的總花費:
=SUMIFS(C2:C7,B2:B7,"正餐",C2:C7,">=100")
非常反直覺的是:SUMIF 和 SUMIFS 函數中自訂條件的運算,都要加上雙引號「”>=100″」。只打「>=100」的話 EXCEL 是不會理你的!
12. AVERAGE
函數說明: AVERAGE 函數用於計算選取範圍中的數值平均。
=AVERAGE(數字或範圍1,數字或範圍2,...)
使用範例:利用 AVERAGE 函數計算班上同學的平均分數:
=AVERAGE(B2:B6)
13. FILTER
函數說明: FILTER 函數用於篩選出符合特定條件的資料,並且可以設定若無符合條件時的回傳值。
=FILTER(欲回傳的資料範圍,設定篩選條件,若無符合條件的資料,則顯示...)
使用範例:利用 FILTER 函數抓出班上「女生」的資料,並過濾掉「男生」的資料:
=FILTER(A2:C6,B2:B6="女","班上無女生")
14. UNIQUE
函數說明: UNIQUE 函數用於回傳範圍中「所有出現過的值」,或者回傳「只出現過1次的值」:
=UNIQUE(選定資料範圍,0:以欄為主/1:以列為主,0:回傳所有出現過的值/1:回傳只出現過1次的值)
使用範例 1:利用 UNIQUE 函數回傳十年之間,所有得過總冠軍的隊伍:
=UNIQUE(B2:B11,0,0(回傳所有出現過的值))
使用範例 2:利用 UNIQUE 函數回傳十年之間,只有得過 1 次總冠軍的隊伍:
=UNIQUE(B2:B11,0,1(回傳只出現過1次的值))
15. REPLACE
函數說明: REPLACE 函數用於替換原字串的部分字元為新的字元:
=REPLACE(原字串,欲替換之字元起點,欲替換之字元數量,新字元)
使用範例:利用 REPLACE 函數將台灣六都地名中的「縣」替換為「市」:
=REPLACE(A2,3,1,"市")
16. SUBSTITUTE
函數說明: SUBSTITUTE 函數與 REPLACE 函數十分相似,用於替換原字串的部分字元為新的字元:
=SUBSTITUTE(原字串,欲替換之舊字元,新字元,[替換位置])
使用範例:利用 SUBSTITUTE 函數將台灣六都地名中的「縣」替換為「市」:
=SUBSTITUTE(A2,"縣","市")
SUBSTITUTE 與 REPLACE 一樣都可以起到「替換字元」的效果,差別是 SUBSTITUTE 是以你提供的「新舊文字」去替換;而 REPLACE 是以你提供的「字元位置」去替換。
17. CONCAT
函數說明: CONCAT 函數(舊稱 CONCATNATE)用於連接文字與文字,或連接儲存格與儲存格:
=CONCAT(文字或儲存格1,文字或儲存格2)
使用範例:利用 CONCAT 函數將「英文名字」與「姓氏」連接在同一個儲存格中:
=CONCAT(A2," ",B2)
或者,我們也可以用「&」連接字符,達到與 CONCAT 函數一樣的連接效果:
=A2&" "&B2
18. LEFT/RIGHT/MID
函數說明: LEFT/RIGHT/MID 函數用於回傳字串中「指定位置」的字元,三個函數差在找尋指定位置的「方法」:
- LEFT:從「左邊」開始找尋指定位置,並回傳該位置的字元
- RIGHT:從「右邊」開始找尋指定位置,並回傳該位置的字元
- MID:從「中間」開始找尋指定位置,並回傳該位置的字元
LEFT 函數說明與範例:
=LEFT(字串,回傳到從左邊數來第幾個字元)
RIGHT 函數說明與範例:
=RIGHT(字串,回傳到從右邊數來第幾個字元)
MID 函數說明與範例:
=MID(字串,從第幾個字元開始回傳,回傳字元數量)
完整教學:
19. UPPER/LOWER/PROPER
函數說明: UPPER/LOWER/PROPER 函數用於將指定儲存格或文字轉換為大寫/小寫/首字母大寫:
- UPPER:用於將文字全部轉為「大寫」。
- LOWER:用於將文字全部轉為「小寫」。
- PROPER:用於將文字的「每個首字母轉為大寫」。
UPPER 函數說明與範例:
=UPPER(字串)
LOWER 函數說明與範例:
=LOWER(字串)
PROPER 函數說明與範例:
=PROPER(字串)
20. LEN/LENB
函數說明: LEN/LENB 函數用於計算指定儲存格的字元數量,而 LENB 會將每個中文、日文、韓文計為 2:
- LEN:計算指定儲存格的字元數量
- LENB:計算指定儲存格的字元數量(中文、日文、韓文計為 2)
LEN 函數說明與範例:
=LEN(字串)
LENB 函數說明與範例:
=LENB(字串)
21. TRIM
22. TEXT
函數說明: TEXT 函數用於將儲存格格式轉換為「文字」格式,並且可以自訂呈現出來的形式:
=TEXT(儲存格,呈現形式)
使用範例 1:利用 TEXT 函數將日期轉為文字格式,並且以「年年年年/月月/日日」的形式呈現。
=TEXT(A2,"mmmm d, yyyy")
另外,以下提供一些常用的日期形式:
- yyyy:顯示 4 位數年份,如 2024、1999
- yy:顯示年份後 2 位數,如 24、99
- m:顯示數字月份(不補 0),如 5、11
- mm:顯示數字月份(補 0),如 05、11
- mmmm:顯示文字月份,如 May、November
- d:顯示數字日期(不補 0),如 3、22
- dd:顯示數字日期(補 0),如 03、22
使用範例 2:利用 TEXT 函數將數字轉為文字格式,並且在前面加上「$」、每三位加上「,」。
=TEXT(A2,"$###,###")
23. VALUE
函數說明與範例: VALUE 函數用於將儲存格格式轉換為「數值」格式:
=VALUE(函數作用儲存格)
值得注意的是:日期在 EXCEL 中是以「數字」的方式儲存。在 EXCEL 的眼中,2024/10/8 就是 45573。
24. INDEX+MATCH
INDEX 與 MATCH 函數雖然有各自的作用,但是組合在一起才可以真正體現他們的強大!
函數說明:INDEX+MATCH 函數用於查找特定資料,並且回傳你指定的欄位,與 XLOOKUP 十分相似:
=INDEX(總資料範圍,MATCH(查找資料名稱,查找資料範圍,0),回傳總資料欄位)
使用範例:利用 INDEX+MATCH 函數抓出「柯佳瑩」的分數:
=INDEX(A2:C6,MATCH("柯佳瑩",A2:A6,0),3)
完整教學:
25. MAX/MIN
函數說明: MAX/MIN 函數用於找出範圍中的最大值/最小值:
- MAX:回傳範圍中的最大值
- MIN:回傳範圍中的最小值
MAX 函數說明與範例:
=MAX(資料範圍)
MIN 函數說明與範例:
=MIN(資料範圍)
26. DATEDIF
函數說明: DATEDIF 函數用於計算日期之間的年份、月份或天數差距:
=DATEDIF(開始日期,結束日期,回傳年份、月份或天數差距)
使用範例 1:利用 DATEDIF 函數計算 2 個日期中間相差了幾天:
=DATEDIF(A2,B2,"d")
使用範例 2:利用 DATEDIF 函數計算 2 個日期中間相差了完整的幾個月:
=DATEDIF(A2,B2,"m")
使用範例 3:利用 DATEDIF 函數計算 2 個日期中間相差了完整的幾年:
=DATEDIF(A2,B2,"y")
注意!輸入=DATEDIF 函數時並不會出現下拉函數讓你選擇,不要怕,直接硬打 DATEDIF 函數還是可以正常運作喔!
27. ROUND
函數說明: ROUND 函數用於將資料進行四捨五入:
=ROUND(數字或儲存格,四捨五入到小數點第幾位)
使用範例 :利用 ROUND 函數將班上同學成績四捨五入至整數(小數第 0 位):
=ROUND(B2,0)
28. ROUNDUP/ROUNDDOWN
函數說明: ROUNDUP/ROUNDDOWN 函數用於將資料進行無條件進位/無條件捨去:
- ROUNDUP:將資料進行無條件進位
- ROUNDDOWN:將資料進行無條件捨去
ROUNDUP 函數說明與範例:
=ROUND(數字或儲存格,無條件進位到小數點第幾位)
ROUNDDOWN 函數說明與範例:
=ROUNDDOWN(數字或儲存格,無條件捨去到小數點第幾位)
29. 時間系列函數
時間系列函數包含:
- YEAR、MONTH、DAY:用於回傳日期的年份/月份/日期
- HOUR、MINUTE、SECOND:用於回傳時間的小時/分鐘/秒數
- NOW、TODAY:用於回傳目前的時間、日期
YEAR/MONTH/DAY 函數說明: YEAR/MONTH/DAY 函數用於回傳日期的年份/月份/日期:
=YEAR(A2)
=MONTH(A2)
=DAY(A2)
HOUR/MINUTE/SECOND 函數說明:HOUR/MINUTE/SECOND 函數用於回傳時間的小時/分鐘/秒數:
=HOUR(A2)
=MINUTE(A2)
=SECOND(A2)
NOW/TODAY 函數說明:NOW/TODAY 函數用於回傳現在的時間、日期:
=NOW()
=TODAY()
30. POWER
函數說明: POWER 函數用於計算數值的「次方」:
=POWER(底數,指數)
使用範例 :利用 POWER 函數處理資料的次方計算:
=POWER(A2,B2)
以上,就是我為你整理的 30個上班族必學的 Excel 函數。
看完這篇文章,相信你一定掌握了幾個函數的使用技巧,並且能夠開始實際運用在工作上。
你有什麼想法嗎?有沒有哪些函數是你特別想要了解的呢?歡迎在下方留言和我討論!
P.S. 這篇文章是我用生命在寫的,如果你願意留言和我互動或留下回饋的話,我會很開心 😀