在學習數(shù)據(jù)分析回顧EXCEL函數(shù)過程中,本著輸出是第一學習力的原則,給自己挖下了整理函數(shù)的坑,但我卻花了3天才爬出這個坑,抹淚~。在整理的過程中,也發(fā)現(xiàn)一些平時用不到的三角函數(shù)等,考慮生命時間的寶貴就果斷舍棄了。本文主要匯總的是EXCEL常用函數(shù),并根據(jù)自己的習慣分為七大類,見下圖:
說明:函數(shù)的介紹和用法,主要來自微軟幫助。在我剛接觸EXCEL函數(shù)的時候,主要也是通過微軟幫助和百度學習的。所以,各位對下述總結如有不明之處,試著百度搜索,特別是百度經(jīng)驗和一些知名的OFFICE論壇有更多的案例可供大家學習理解。
第一類:文本處理函數(shù)
Trim函數(shù):
- 作用:除了單詞之間的單個空格之外,移除文本中的所有空格。
- 語法:TRIM(text),Text為必需項,為要移除空格的文本。
Concatenate函數(shù):
- 作用:將兩個或多個文本字符串聯(lián)接為一個字符串。
- 語法:CONCATENATE(text1, [text2], ...),至少包含一個項目,最多255個項目,最多支持8192個字符,項目可以是文本值、數(shù)字、或單元格引用。
- 說明:可以利用連接符&實現(xiàn)相同的功能。
Replace函數(shù):
- 作用: 將特定位置的字符串替換為不同的文本字符。
- 語法:REPLACE(old_text, start_num, num_chars, new_text),old_text為需要替換的文本,start_num替換字符的位置,num_chars利用new_text替換的字符數(shù),new_text要替換old_text的新文本。
Substitue函數(shù):
- 作用:在某一文本字符串中替換指定的文本
- 和Replace區(qū)別:Substitue根據(jù)文本內(nèi)容進行替換,Replace根據(jù)字符位置進行替換。
- 語法:SUBSTITUTE(text, old_text, new_text, [instance_num]),text為包含需要替換的文本,old_text為需要替換的文本,new_text為替換old_text的文本,instance_num為可選參數(shù),指定了數(shù)字則只替換相應順序的old_text,否則全部替換。
Left函數(shù):
- 作用:從文本字符串的第一個字符開始返回指定個數(shù)的字符。
- LEFT(text, [num_chars]),text包含要提取的字符,num_chars為指定要提取的自負數(shù)量,必須≥0,如果大于文本長度,則返回全部文本,如果省略則假定其值為1。
Right函數(shù):
- 用法同Left,只是取數(shù)方向相反,從右側開始取數(shù)。
Mid函數(shù):
- 作用:從指定位置開始提取特定數(shù)目的字符
- 語法:MID(text, start_num, num_chars),text包含要提取字符的文本,start_num文本中要提取第一個字符的位置,num_chars希望提取的字符個數(shù)。
第二類:信息反饋函數(shù)
Exact函數(shù):
- 作用:比較兩個文本字符串,如果它們完全相同,則返回 TRUE,否則返回 FALSE。 函數(shù) EXACT 區(qū)分大小寫,但忽略格式上的差異。 使用 EXACT 可以檢驗在文檔中輸入的文本。
- 語法:EXACT(text1, text2),text1和text2兩個需要比較的字符串。
Len函數(shù):
- 作用:返回文本中字符的個數(shù),一般和其他函數(shù)配合使用。
- 語法:LEN(text),text為需要查詢長度的文本,空格將作為字符進行計數(shù)。
IS函數(shù):
- 作用:此類函數(shù)可檢驗指定值并根據(jù)結果返回 TRUE 或 FALSE。 在對某一值執(zhí)行計算或執(zhí)行其他操作之前,可以使用 IS 函數(shù)獲取該值的相關信息。
- 語法:ISBLANK(value),ISERR(value),ISERROR(value),ISLOGICAL(value),ISNA(value),ISNONTEXT(value),ISNUMBER(value),ISREF(value),ISTEXT(value)。value指的是要測試的值。 參數(shù) value 可以是空白(空單元格)、錯誤值、邏輯值、文本、數(shù)字、引用值,或者引用要測試的以上任意值的名稱。
第三類:查找引用函數(shù)
Vlookup函數(shù):
- 作用:在表格區(qū)域中按行查找對應內(nèi)容。
- 語法:VLOOKUP(要查找的值,要在其中查找值的區(qū)域,區(qū)域中包含返回值的列號,精確匹配或近似匹配 – 指定為 0/FALSE 或 1/TRUE)。
- 視頻:微軟VLOOKUP函數(shù)培訓課程
- 注意事項:要查找的值需要始終位于所在區(qū)域的第一列
Hlookup函數(shù):
- 作用:在表格中按列查找對應內(nèi)容。
- 語法:HLOOKUP(lookup_value, table_array, row_index_num, [range_lookup]),參數(shù)和VLOOKUP相對應,第三個參數(shù)為行號,VLOOKUP第三個參數(shù)為列號。
Index函數(shù):
- 作用:返回表格或區(qū)域中的值或值的引用
- 語法:INDEX(array, row_num, [column_num]),array單元格區(qū)域或數(shù)組常量,row_num為數(shù)組的某行,column_num為數(shù)組中的某列。除此之外還有引用的形式,感興趣的話可以自行百度或使用微軟幫助。
- 視頻:微軟INDEX函數(shù)培訓課程
- 說明:如果使用參數(shù)row_num和column_num,則INDEX函數(shù)返回行列號交叉處單元格的值;如果將row_num設置為0,則返回整列數(shù)值的值,對column同樣適用;若要輸入數(shù)組公式,需要在公式輸入完后,按Ctrl + Shift + Enter。
Match函數(shù):
- 作用:在范圍單元格中搜索特定的項,然后返回該項在此區(qū)域中的相對位置。
- 語法:MATCH(lookup_value, lookup_array, [match_type]),lookup_value要查找的值,look_arrary單元格區(qū)域,match_type=1或省略,查找≤lookup_value的最大值,lookup_arrary需要升序排列;=0,查找完全等于lookup_value的第一個值;=-1,查找≥lookup_value的最小值,lookup_arrary需要降序排列。
- 視頻:微軟MATCH函數(shù)培訓課程
- 說明:MATCH不區(qū)分大小寫字母,可以再lookup_value使用?或,?匹配任意單個字符,匹配任意一串字符,如果要查找實際的問號或者星號,需要在字符前添加~。
Search函數(shù):
- 作用:函數(shù)可在第二個文本字符串中查找第一個文本字符串,并返回第一個文本字符串的起始位置的編號,該編號從第二個文本字符串的第一個字符算起。
- 語法:SEARCH(find_text,within_text,[start_num]),find_text為需要查找的文本,with_text包含要查找的文本,start_num為從開始搜索的字符編號。
- 說明:SEARCH不區(qū)分大小寫,F(xiàn)IND函數(shù)區(qū)分大小寫,可以使用通配符?和*。
Find函數(shù):
- FIND函數(shù)區(qū)分大小寫,并且不能使用通配符,其他用法和SEARCH函數(shù)一致。
Choose函數(shù):
- 作用:根據(jù)參數(shù)返回數(shù)值參數(shù)列表中的數(shù)值。
- 語法:CHOOSE(index_num, value1, [value2], ...),index_num指選定的數(shù)值參數(shù),介于1到254之間,index_num為1則返回value1,為2則返回value2...
- 示例:SUM(CHOOSE(2,A1:A10,B1:B10,C1:C10))=SUM(B1:B10)
Row / Column函數(shù):
- ROW([reference])返回引用的行號,COLUMN([reference])返回引用的列號,如果reference省略,則返回該函數(shù)所在位置的行/列號。
Offset函數(shù):
- 作用:返回對單元格或單元格區(qū)域中指定行數(shù)和列數(shù)的區(qū)域的引用。
- 語法:OFFSET(reference, rows, cols, [height], [width]),reference為偏移量的參考位置,rows偏移的行數(shù),cols偏移的列數(shù),height和width為指定返回的行高和列寬。
- 說明:引用的位置不能超過工作表邊緣;省略height和width,則其高寬和reference相同。
Indirect函數(shù):
- 作用:返回文本字符串指定的引用
- 語法:INDIRECT(ref_text, [a1]),ref_text對單元格的引用,如果對另一個工作簿引用,則引用的工作簿必須已打開。a1為true或省略,則為A1樣式,否則為R1C1樣式。
Address函數(shù):
- 作用:根據(jù)指定行號和列號獲得工作表中的某個單元格的地址,如ADDRESS(2,3) 返回 $C$2。
- 語法:ADDRESS(row_num, column_num, [abs_num], [a1], [sheet_text]),row_num為行號,column_num為列號,abs_num可以用來指定返回的引用類型,=1或省略返回絕對值;=2返回絕對行號,相對列號;=3返回相對行號,絕對列號;=4返回相對值。a1的用處同INDIRECT函數(shù)中參數(shù)介紹。sheet_text用于指定外部引用的工作表的名稱。
第四類:邏輯運算函數(shù)
If函數(shù):
- 作用:對值和期待值進行邏輯比較
- 語法:IF(logical_test, value_if_true, [value_if_false]),當logical_test成立時,返回value_if_true,當logical_test不成立時,返回value_if_false。IF函數(shù)最多嵌套64個。
Iferror函數(shù):
- 作用:如果公式的計算結果錯誤,則返回您指定的值;否則返回公式的結果。 使用 IFERROR 函數(shù)可捕獲和處理公式中的錯誤。
- 語法:IFERROR(value, value_if_error),value為要檢查的值,value_if_error為在value為錯誤時返回的值,錯誤類型包括:#N/A、#VALUE!、#REF!、#DIV/0!、#NUM!、 #NAME? 或 #NULL!。
Ifna函數(shù):
- 作用:如果公式返回錯誤值 #N/A,則結果返回您指定的值;否則返回公式的結果。
- 語法:IFNA(value, value_if_na),和IFERROR語法相同,只是檢查的錯誤值范圍不同。
And函數(shù):
Or函數(shù):
Not函數(shù):
第五類:數(shù)學統(tǒng)計函數(shù)
Sum函數(shù):
- 作用:可以將單個值、單元格引用或是區(qū)域相加,或者將三者的組合相加。
- 語法:SUM(number1,[number2],...)
Sumif函數(shù):
- 作用:對符合條件的值求和,例如,對B2~B25單元格大于5的值求和,可以使用公式=SUMIF(B2:B25,'>5')
- 語法:SUMIF(range, criteria,[sum_range]),range為需要計算的區(qū)域,字符數(shù)不能超過255個;criteria求和的條件,可以使用通配符?和*;sun_range為可選條件,指定實際求和的區(qū)域。
- 視頻:微軟SUMIF函數(shù)培訓課程
Sumifs函數(shù):
- 作用:用于計算其滿足多個條件的全部參數(shù)的總量。
- 語法:SUMIFS(sum_range, criteria_range1, criteria1, [criteria_range2, criteria2], ...) ,sum_range要求和的區(qū)域,criteria_range1為條件區(qū)域1,criteria1為對區(qū)域1進行條件限定的條件1,之后的參數(shù)以此類推。
Sumproduct函數(shù):
- 作用:在給定的幾組數(shù)組中,將數(shù)組間對應的元素相乘,并返回乘積之和。
- 語法:SUMPRODUCT(array1, [array2], [array3], ...),array1 / array2...為對其相應元素進行相乘并求和的幾組數(shù)組參數(shù),數(shù)組參數(shù)需要具有相同的維數(shù),非數(shù)值型數(shù)組元素將作為0處理。
Count函數(shù):
- 作用:計算包含數(shù)字的單元格個數(shù)以及參數(shù)列表中數(shù)字的個數(shù)。
- 語法:COUNT(value1, [value2], ...),value1為要計算數(shù)字個數(shù)的第一項、單元格應用或區(qū)域,value2可選參數(shù),作用同value1。
- 說明:參數(shù)為數(shù)字、日期、代表數(shù)字的文本(如“1”)、邏輯值和直接鍵入?yún)?shù)列表中的數(shù)字將被計算在內(nèi)。
Countif函數(shù):
- 作用:用于統(tǒng)計滿足某個條件的單元格的數(shù)量
- 語法:COUNTIF(range,criteria),類似SUMIF初級使用方法
Countifs函數(shù):
- 作用:將條件應用于跨多個區(qū)域的單元格,然后統(tǒng)計滿足所有條件的次數(shù)。
- 語法:COUNTIFS(criteria_range1, criteria1, [criteria_range2, criteria2],…),criteria_range1為條件區(qū)域1,criteria1為對criteria_range1指定的限定條件1,其他以此類推。
Counta函數(shù):
- 作用:計算不為空的單元格的個數(shù)。
- 語法:COUNTA(value1, [value2], ...),value1表示要計數(shù)區(qū)域,value2可選參數(shù),作用同value1。
Countblank函數(shù):
- COUNTBLANK(range)計算選中區(qū)域的空單元格個數(shù)。
Max / Min函數(shù):
- MAX(number1, [number2], ...),MIN(number1, [number2], ...)計算選中區(qū)域的最大值和最小值。
Rank函數(shù):
- 作用:返回一列數(shù)字的數(shù)字排位, 數(shù)字的排位是其相對于列表中其他值的大小。
- 語法:RANK(number,ref,[order]),number需要排位的數(shù)字;ref數(shù)字排列的數(shù)組;order可選參數(shù),=0或省略降序排列,=不為零升序排列。
Rand函數(shù):
- 作用:返回大于等于 0 且小于 1 的均勻分布隨機實數(shù),每次計算工作表時都將返回一個新的隨機實數(shù)。
- 語法:RAND(),如要產(chǎn)生a與b之間的隨機實數(shù),可用公式RAND()*(b-a)+a
Randbetween函數(shù):
- 作用:返回位于兩個指定數(shù)之間的一個隨機整數(shù)。 每次計算工作表時都將返回一個新的隨機整數(shù)。
- 語法:RANDBETWEEN(bottom, top),bottom將返回的最小整數(shù),top將返回的最大整數(shù)。比如RANDBETWEEN(1,100)=RAND()*99+1將返回1-100之間的隨機數(shù)。
Average函數(shù):
- 作用:返回參數(shù)的平均值(算術平均值)。
- 語法:AVERAGE(number1, [number2], ...),number1為求平均值的區(qū)域,number2為可選參數(shù),作用等同number1。
Subtotal函數(shù):
- 作用:返回列表或數(shù)據(jù)庫中的分類匯總。
- 語法:SUBTOTAL(function_num,ref1,[ref2],...),function_num為數(shù)字1-11或101-111,用于指定要為分類匯總使用的函數(shù)。如果使用1-11,將包括手動隱藏的行;如果使用101-111,則排除手動隱藏的行;始終排除已篩選掉的單元格。
第六類:日期時間函數(shù)
Datedif函數(shù):
- 作用:計算兩個日期間隔的年數(shù)、月數(shù)、天數(shù),常用于計算年齡的公式中。
- 語法:DATEDIF(start_date,end_date,unit),start_date表示起始日期,end_date表示結束日期。日期值的輸入方式有多種:帶引號的文本字符串(例如:'2001/1/30')、序列號(例如 36921,在商用 1900 日期系統(tǒng)時表示 2001 年 1 月 30 日)或其他公式或函數(shù)的結果(例如 DATEVALUE('2001/1/30'))。
- 說明:日期存儲為可用于計算的序列號。默認情況下,1899 年 12 月 31 日的序列號是 1,而 2008 年 1 月 1 日的序列號是 39448,這是因為它距 1900 年 1 月 1 日有 39448 天。
Networkdays函數(shù):
- NETWORKDAYS(start_date, end_date, [holidays])返回兩個日期之間的工作日個數(shù)。
Now函數(shù):
- 作用:返回當前的日期和時間,每次打開工作表時間會更新。
- 語法:NOW(),無參數(shù)。
- 說明:1.Excel 可將日期存儲為序列號,以便可以在計算中使用它們。 默認情況下,1900 年 1 月 1 日的序列號為 1,2008 年 1 月 1 日的序列號為 39,448,這是因為它距 1900 年 1 月 1 日有 39,447 天。2.序列號中小數(shù)點右邊的數(shù)字表示時間,左邊的數(shù)字表示日期。 例如,序列號 0.5 表示時間為中午 12:00。3.NOW 函數(shù)的結果僅在計算工作表或運行含有該函數(shù)的宏時才改變。
Today函數(shù):
- 作用:返回當前日期,在打開工作簿自動更新日期,常用于計算年齡等。
- 語法:TODAY(),無參數(shù)。
Weekday函數(shù):
- 作用:返回對應日期為一周中第幾天
- 語法:WEEKDAY(serial_number,[return_type]),Serial_number 一個序列號,代表嘗試查找的那一天的日期。 應使用 DATE 函數(shù)輸入日期,或者將日期作為其他公式或函數(shù)的結果輸入。 例如,使用函數(shù) DATE(2008,5,23) 輸入 2008 年 5 月 23 日。Return_type可選參數(shù),用于確定返回值類型的數(shù)字。
Weeknum函數(shù):
- 作用:返回日期的周數(shù)
- 語法:WEEKNUM(serial_number,[return_type]),Serial_number 必需。 代表一周中的日期。 應使用 DATE 函數(shù)輸入日期,或者將日期作為其他公式或函數(shù)的結果輸入。 例如,使用函數(shù) DATE(2008,5,23) 輸入 2008 年 5 月 23 日。Return_type可選參數(shù),確定星期從哪一天開始,默認值為 1。
Date函數(shù):
- 作用:將三個獨立的值合并為一個日期
- 語法:DATE(year,month,day),year年,month月,day天
Year / Month / Day函數(shù):
Hour / Minute / Second函數(shù):
- 參數(shù)為時間,分別可以得到小時、分鐘、秒。
Time函數(shù):
- 將三個獨立的值合并為一個時間,功能類似DATE函數(shù)。
第七類:格式顯示函數(shù)
Text函數(shù):
- 作用:將數(shù)字按指定方式顯示,常和其他函數(shù)配合使用,例如合并文本數(shù)值,需要數(shù)值以特定的格式顯示,這時候可以使用TEXT函數(shù)。
- 語法:TEXT(Value you want to format, 'Format code you want to apply')
Upper / Lower函數(shù):
- UPPER(text)、LOWER(text)可以分別將text以大寫和小寫字母的形式輸出。
Proper函數(shù):
- 將文本字符串的首字母轉換成大寫,將其余字母轉換為小寫。
Roud函數(shù):
- 作用:將數(shù)字四舍五入到指定的位數(shù)。
- 語法:ROUND(number, num_digits),number要四舍五入的數(shù)字,num_digits需要四舍五入運算的位數(shù),>0四舍五入到指定的小數(shù)位數(shù),=0四舍五入到最接近的整數(shù),<0四舍五入到小數(shù)點左邊相應位數(shù)。
Roudup函數(shù):
- RANDUP語法同RAND,只是采用的使用將數(shù)字向上舍入而非四舍五入。
Rouddown函數(shù):
- RANDDOWN語法同RAND,只是采用的是將數(shù)字向下舍去而非四舍五入。
Rept函數(shù):
- 作用:將文本重復指定次數(shù),一般用于在單元格填充文本字符串。
- 語法:REPT(text, number_times),text需要重復顯示的文本,number_times需要重復的次數(shù)。
Fixed函數(shù):
- 作用:將數(shù)字舍入到指定的小數(shù)位數(shù),使用句點和逗號,以十進制數(shù)格式對該數(shù)進行格式設置,并以文本形式返回結果。
- 語法:FIXED(number, [decimals], [no_commas]),number要進行四舍五入并轉換為本文的數(shù)字,decimals(可選)小數(shù)點右邊的位數(shù),no_commas(可選)邏輯值,如果為TRUE則會禁止FIXED返回的文本包含逗號。
總結
至此,EXCEL七大類常用函數(shù)介紹完畢。關于本文,如有不明之處,歡迎和大家探討交流。
最后,附上幾個EXCEL常用幫助/學習網(wǎng)址: