1. 程式人生 > >比較有用的若干EXCEL常用函式

比較有用的若干EXCEL常用函式

1、vlookup
vlookup(lookup_value,table_array,col_index_num,[range_lookup])
lookup_value表示要查詢的物件;
table_array表示查詢的表格區域;
col_index_num表示要查詢的資料在table_array區域中處於第幾列的列號;
range_lookup表示查詢型別,其中1表示近似匹配,0表示精確匹配,一般我們用精確匹配的情況較多。

2、CLEAN
CLEAN函式,用於刪除文字中不能列印的字元
。對從其他應用程式中輸入的文字使用該函式,將刪除其中含有當前作業系統無法列印的字元。

3、EXACT
exact雖然歸類於文字函式,但是它的作用是邏輯判斷;用於檢測兩個字串是否完全相同。
格式是=exact(單元格1,單元格2),也可以exact(單元格1,"文字")
exact比較的是字串的匹配度,如果完全符合則顯示判斷值TRUE。
exact函式的字串比較區分大小寫。記住如果是手動輸入字串一定用“”引用起來。

4、TYPE
type函式是是以整數的數值來返回資料的型別的函式。
插入type函式,函式的格式是=type(value)
數值的資料型別返回整數值1
文字的資料型別返回整數值2
邏輯值的資料型別返回整數值4
錯誤值的資料型別返回整數值16
陣列的資料型別返回整數值64


5、MID
MID函式用於從指定位置開始,提取使用者指定的字元數,例如,從第3個字元開始,提取5個字元,公式表示為mid(引數1,3,5),引數2表示開始提取的位置,引數3表示提取的字元數。
mid函式的應用範圍比left和right函式要大,其可以根據使用者的要求,從任意字元開始提取,而left和right函式都是從首字元開始提取。
如同資料庫中的函式-substr。

6、排名函式
排名函式用於區域內資料的排名,三個函式用法及格式相同,只是在特殊細節的呈現上會稍有不同。
基本格式為:RANK(number,ref,order),其中,number為要排名的單元格或數字,ref為區域範圍,order為排名的順序,即降序(用0表示)或升序(用1表示)。
RANK.EQ函式,用於返回一個數字在數字列表中的排位,如果多個值都具有相同的排位,則返回該組數值的最高排位。
RANK.EQ(number,ref,order)
number:表示要查詢排名的數字。
ref:表示要在其中查詢排名的數字列表。
order:表示指定排名方式的數字。
RANK.EQ函式對相同的數值的排位相同。但是,相同數值的存在會影響後續數值的排位。
RANK.AVG函式是Excel2010版本中的新增函式,屬於RANK函式的分支函式。原RANK函式在2010版本中更新為RANK.EQ,可以與RANK函式同時使用並且作用相同。
RANK.AVG函式的不同之處在於,對於數值相等的情況,返回該數值的平均排名。而作為對比,原RANK函式對於相等的數值返回其最高排名。

7、IF
執行真假值判斷,根據邏輯計算的真假值,返回不同結果。
語法
IF(logical_test,value_if_true,value_if_false)
Logical_test    表示計算結果為 TRUE 或 FALSE 的任意值或表示式。例如,A10=100 就是一個邏輯表示式,如果單元格 A10 中的值等於 100,表示式即為 TRUE,否則為 FALSE。本引數可使用任何比較運算子。
Value_if_true    logical_test 為 TRUE 時返回的值。例如,如果本引數為文字字串“預算內”而且 logical_test 引數值為 TRUE,則 IF 函式將顯示文字“預算內”。如果 logical_test 為 TRUE 而 value_if_true 為空,則本引數返回 0(零)。如果要顯示 TRUE,則請為本引數使用邏輯值 TRUE。Value_if_true 也可以是其他公式。
Value_if_false    logical_test 為 FALSE 時返回的值。例如,如果本引數為文字字串“超出預算”而且 logical_test 引數值為 FALSE,則 IF 函式將顯示文字“超出預算”。如果 logical_test 為 FALSE 且忽略了 Value_if_false(即 value_if_true 後沒有逗號),則會返回邏輯值 FALSE。如果 logical_test 為 FALSE 且 Value_if_false 為空(即 value_if_true 後有逗號,並緊跟著右括號),則本引數返回 0(零)。Value_if_false 也可以是其他公式。
函式 IF 可以巢狀七層。
示例:
=IF(A1>100,"完成","未完成")
=IF(A1<60,"不及格",IF(A1<80,"良好","優秀"))
=IF(AND(A1>60,B1<>""),"已結束","未結束")

8、Countif、Countifs;Sumif、Sumifs;Averageif、Averageifs
根據條件統計個數,根據條件求和,根據條件計算平均數;及對應的多條件彙總。
示例:
=Countif(A:A,"財務部") 計算A列有多少財務部的人員
=Countif(A:A,"*北京*") 計算A列有多少個包括“北京”的公司名稱
=Sumif(C:C,">1000")  統計C列大於1000的銷售金額之和
=Sumif(A:A,"三星",B:B) 統計A列產品為“三星”所對應B列的銷售個數
=Averageif(C:C,"<10") 計算C列單價小於10的平均單價
=Averageif(A:A,"C",B:B) 計算C產品的平均單價(A列為產品名稱)
=Countifs(A2:A11,"公司1",B2:B11,"人事部") 公司1的人事部有多少人(A列公司名稱,B列部門名稱)
=Countifs(D2:D11,">3000",D2:D11,"<4000") 工資在3000~4000之間的有多少人(D列為工資)
=Sumifs(D2:D11,A2:A11,"公司1",B2:B11,"人事部") 公司1人事部工資和(A列公司名稱,B列部門名稱。D列工資)
=Sumifs(C:C,A:A,"電視",B:B,"*34*") A列為"電視",B列包括34的C列數量之和
=Averageifs(D2:D11,A2:A11,"甲公司",B2:B11,"經理") 計算甲公司,經理級的平均工資(A列公司名,B列職稱,C列工資金額)
=Averageifs(D2:D11,D2:D11,">4000",D2:D11,"<8000") 統計工資在4000~8000之間的平均工資

9、IFerror
把錯誤值顯示為指定的內容
=Iferror(a1/b1,"") 如果A1/B1返回錯誤值,則顯示空
=Iferror(vlookup(省略),"") 如果Vlookup查詢不到值,則顯示空

10、DATEDIF
DATEDIF函式是一個excel中隱藏的、但功能非常強大的日期函式,主要用於計算兩個日期之間的天數、月數或年數。
函式語法:
DATEDIF(start_date,end_date,unit)
引數1:start_date,表示起始日期
引數2:end_date,表示結束日期
引數1和引數2可以是帶引號的文字串(例如:"2014-1-1")、系列號或者其他公式或函式的結果
引數3:unit為所需資訊的返回時間單位程式碼。各程式碼含義如下:
"y"返回時間段中的整年數
"m"返回時間段中的整月數
"d"返回時間段中的天數
"md"引數1和2的天數之差,忽略年和月
"ym"引數1和2的月數之差,忽略年和日
"yd"引數1和2的天數之差,忽略年;按照月、日計算天數

11、日期時間相關
NETWORKDAYS:返回兩日期間的工作日數,語法:NETWORKDAYS(start_date,end_date,holidays)
Start_date代表開始日期,End_date代表終止日,Holidays是表示不在工作日曆中的一個或多個日期所構成的可選區域,法定假日以及其他非法定假日。
TODAY函式與NOW函式:確認後即刻顯示出系統日期和時間。如果系統日期和時間發生了改變,只要按一下F9功能鍵,即可讓其隨之改變。
TODAY函式:返回當前日期的序列號 ,語法:TODAY()  函式沒有引數。
NOW函式,用於返回電腦設定的當前日期和時間的序列號。不需要引數。
Weekday函式表示返回特定日期所對應的星期數。語法格式=weekday(特定日期,引數)。其中,引數 2表示中國的周,1是外國的周。
Weekday轉成中文或英文:=text(weekday(A1,1),“aaaa”);=text(weekday(A1,1),“dddd”) “aaaa”、“dddd”引數都是微軟的設定,為固定值。

12、LEN函式與LENB
表示返回文字串的字元數。2個函式都是統計文字字串字元的個數,區別是LEN函式把中文當1個字元,LENB當2個。

13、FIND
FIND(find_text,within_text,start_num)
FIND 用於查詢文字串 (within_text) 內的文字串 (find_text),並從 within_text 的首字元開始返回 find_text 的起始位置編號。
跟資料庫的index函式比較相似。

14、CONCATENATE
CONCATENATE(需要連線的單元格,需要連線的單元格,需要連線的單元格...)
用連線符號 :“&”
=E23&J23 =CONCATENATE(E23,J23)

15、DCOUNT
DCOUNT函式是一個返回資料庫或列表的列中滿足指定條件並且包含數字的單元格個數。
比如用在:班級考試後,計算及格人數或優秀人數等等。

16、frequency
以一列垂直陣列返回一組資料的頻率分佈。
語法格式
FREQUENCY(data_array,bins_array)
Data_array 是一組數值,然後根據Bins_array 中對 data_array 中的數值進行分組的情況,統計頻率。
Bins_array 用於對 data_array 中的數值進行分組。
注意,輸入公司的時候要首選中一系列單元格,而不是一個,然後一起按下Ctrl+Shift+Enter這三個鍵,才行。