1. 程式人生 > >常用的 Excel 函數

常用的 Excel 函數

網上 dex body 數組 輸入 png HR 參與 常用

概述

Excel 學的好,函數不可少。接下來就了解常用的函數。

首先作下簡要說明:

  • 本文的內容大多從網上搜集並加以個人理解整理而來,由於初學,可能會出現錯誤,如有歡迎指出;
  • 所用演示軟件為免費醜陋的 WPS 表格;
  • Excel 函數對字母大小寫不敏感,為了可讀性,均小寫。
    ?

主要內容

清洗處理類

concatenate

??功能: concatenate是一個文本連接函數。

??格式: concatenate(text1,text2,text3......)

??舉例:如圖

技術分享圖片

?

trim

??功能: 用來刪除字符串前後的單元格,但是會在字符串中間保留一個作為連接用途。

??格式: trim(text)

??舉例:如圖

技術分享圖片

?

replace

??功能: 用新字符串替換舊字符串,而且替換的位置和數量都是指定的。

??格式:replace(old_text,start_num,num_chars,new_text)

??舉例:發現上面的例子字錯了,我們改過來,如圖

技術分享圖片

?

substitute

??功能: 對指定的字符串進行替換。與 replace 相比,區別是全局替換,沒有起始位置概念。

??格式:substitute(text,old_text,new_text,[instance_num])

參數 Instance_num ——為一數值,用來指定以 new_text (新文本)替換第幾次出現的 old_text(舊文本)。參數 Instance_num 可省略,這表示用 new_text(新文本)替換掉所有的old_text(舊文本)。

??舉例:如圖

技術分享圖片

?

left,right,mid

??功能: 截取字符串中的字符。

??格式:left / right(指定字符串,截取長度),mid(指定字符串,開始位置,截取長度)

?

len,lenb

??功能: 返回字符串的長度。在 len 中,中文計算一個,在 lenb 中計算兩個。

??格式:len / lenb(字符串)

?

find

??功能: 查找並返回目標字符串在原始字符串的第幾個位置。

??格式: find(查找目標,查找區域,start_num)

參數 start_num 指定開始進行查找的字符數。比如 start_num 為1,則從單元格內第一個字符開始查找關鍵字。如果忽略 start_num,則假設其為 1. 註意 find 函數中不能出現通配符,否則錯誤。

??舉例:如圖

技術分享圖片

?

??功能: 返回一個指定字符或文本字符串在字符串中第一次出現的位置 ,從左到右查找,忽略英文字母的大小寫。

??格式: search(查找目標,查找區域,start_num)

參數 start_num 指定開始進行查找的字符數。比如 start_num 為1,則從單元格內第一個字符開始查找關鍵字。如果忽略 start_num,則假設其為 1. search函數的參數查找目標可以使用通配符“*”,“?”。如果參數find_text就是問號或星號,則必須在這兩個符號前加上“~”符號。
??舉例:如圖

技術分享圖片

?

text

??功能: 將各種形式的數值轉化為文本,並可使用戶通過使用特殊格式字符串來指定顯示格式。

??格式:text(數值,單元格格式)

??舉例:如圖

技術分享圖片

?


統計函數類

average

??功能:如其名,求數組的平均值。如果單元格引用參數中有文字、空單元格,則忽略其值。

??格式:average(數值區域或數組)

??舉例:如圖所示,如果輸入average(A1:E1),返回結果為 2.5,和 average(A1:D1)等價。盡管如此,我認為實際操作中,盡量避免這種情況。

技術分享圖片

類似的有函數:min,max,sum(,sumif,sumifs),stdev(標準差),不做詳細說明。
?

sumproduct

??功能:求多個數組對應元素相乘之後的和。如含有空單元格,則不參與計算。

??格式:sumproduct(數組1,數組2,···)
??舉例:如下圖所示

技術分享圖片
?

count

??功能:統計出是數字單元格和個數。

??格式:count(區域)
??舉例:

技術分享圖片

此外,還有函數 countif(區域,條件),countifs(區域,條件,區域,條件,···),?countifs 後面的括號可以加多個條件,但每個條件都需要有兩個參數,一個單元格選取,另外一個就是判斷條件。

技術分享圖片

?

rank

??功能:排序。返回指定值在引用區域中的排名,註意重復值是同一排名。order 為零或者省略代表降序,不為零則為升序。

??格式:rank(數值,區域,order)
??舉例:

技術分享圖片

?

rand

??功能:產生 0~1 之間服從平均分布的小數。不需要參數。

??格式:rand()

類似有個randbetween(bottom, top),需要註意的是它返回的是整數。
??舉例:

技術分享圖片

?

int / round

??功能:取整函數。int 向下取整,round 按小數位取整。

??格式:int(數值),round(數值,保留小數位數)

??舉例:

技術分享圖片
?


查找函數類

lookup

??功能:查詢一行或一列並查找另一行或列中的相同位置的值。

??格式:lookup(要查找的值, 區域(查找的值在此),查找的相應位置)
??舉例:以一份學生成績表為例,要查誰考了 59 分,可以如下圖操作

技術分享圖片

該lookup函數括號內的含義是,其中 59 就是我們查詢的得分條件,B2:B8 是得分項所在的列區間,也叫條件區域,那麽 A2:A8 就是我們要查找的對應區域。如果我們給的值不在查找區域內,比如要查找誰得了 58 分,表中沒有人考這個分,那就會報錯,我們的需求可能是誰“差不多”考這個成績,這就需要模糊查找,也就是下面要介紹的 vlookup.
?

vlookup

??功能:如果需要按行查找(在某列中)表或區域中的內容,請使用此函數。

??格式:vlookup(查找值,查找範圍,列序數,精確匹配或者近似匹配(false 或者 true))

註意查找值一定要在該區域的第一列。如果選擇模糊查找的話,引用的數字區域一定要從小到大排序,雜亂的數字是無法準確查找到的,模糊查找的原理是:給一定個數,它會找到和它最接近,但比它小的那個數。

??舉例:

技術分享圖片

類似函數hlookup,查找水平方向(行),不再介紹。
?

index

??功能:查找區域中的某行某列交叉位置的值。

??格式:index(查找範圍,行序數,列序數)
??舉例:

技術分享圖片

?

match

??功能:返回目標值在查找區域中的相對位置。

??格式:match(目標值,查找區域,match_type(0/1/-1))
註意:

  • 查找區域只能為一列或一行;
  • 參數 match_type=0,表示精確查找,如果查找區域按任意順序排列。一般只使用精確查找。
  • 參數 match_type=1,查找小於或等於目標值的最大數值在查找區域中的位置,查找區域中的值必須按升序排列(1)。
  • 參數 match_type=-1,查找大於或等於目標值的最小數值在查找區域中的位置,查找區域中的值必須按降序排列(-1)。

??舉例:查找的 77 在所選區域的第 4 個位置。

技術分享圖片


邏輯運算類

if

??功能:條件判斷函數

??格式:if(logical_test,value_if_true,value_if_false)

??舉例:如圖所示

技術分享圖片

?

and, or, is

??功能:邏輯運算,沒什麽好說的。其中 is 常用判斷檢驗,返回的都是布爾數值 true 和 false. 常用 iserror,isna(ISNA函數,是用來檢測一個值是否為 #N/A,返回 TRUE 或 FALSE。ISNA 值為錯誤值 #N/A(值不存在),通常是和其與函數結合使用,比如我們常見到的,使用vlookup函數時,配合if函數和isna函數進行返回值"#N/A"為空的更正。)
?


最後

如有需要,會不斷完善。

常用的 Excel 函數