unique函数_Office 365函数新世界:动态数组
生活随笔
收集整理的這篇文章主要介紹了
unique函数_Office 365函数新世界:动态数组
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
我們今天分享的是FILTER函數,她完美展現了365函數世界動態數組的理念;運算高效、公式簡潔、還可以作為中轉表的性質用于其它函數二次計算?;A語法在日常數據處理中,我們經常會遇到一對多式的數據查詢問題。所謂一對多查詢,簡單而言,就是符合查詢條件的結果有多個。我舉個例子。以上圖所示的成績表為例,現在需要按G2單元格的指定班級名,查詢相關信息,這樣的信息可能是一條,也可能是多條,本例中查詢結果如下圖所示。如果你使用的Excel版本是365,可以使用一個函數干凈利落的解決同類問題▼G5單元格輸入公式▼=FILTER(A2:E15,A2:A15=G2,"")FILTER是過濾器的意思,顧名思義,該函數的主要功能是數據查詢與篩選。FILTER函數的語法▼=FILTER(數據源,篩選條件,容錯值)它只有三個參數,第1個是數據源,第3個參數是容錯值,可以在查無結果的情況下,屏蔽錯誤值#CALC!,返回一個指定值。重點是第2個參數,它用一組邏輯值指定了篩選的規則,如果為True則保留相應數據源記錄,為False則刪除相應記錄。以公式=FILTER(A2:E15,A2:A15=G2,"")而言,數據源是A2:E15,篩選條件是A列班級是否等于G2單元格所指定的班級,如果相等,則保留相關記錄,否則刪除;而如果整條公式查無結果,則返回一個假空值?!旅娼o大家舉幾個實例,說明一下FILTER函數如何輕松解決各種數據查詢問題的,這包含了并且關系的多條件查詢、或關系的多條件查詢、單條件模糊查詢、多條件模糊查詢等。1)并且關系的多條件查詢查詢班級為'一班'、性別為'男'的數據明細。并且關系▼=FILTER(A2:E15,(A2:A15="一班")*(C2:C15="男"),"")(A2:A15="一班")*(C2:C15="男")是篩選條件,用乘法來表示并且關系。2)或關系的多條件查詢查詢成績大于90或者小于60的人員名單——學校需要搭建幫幫隊?;蜿P系▼=FILTER(A2:E15,(E2:E15<60)+(E2:E15>90),"")(E2:E15<60)+(E2:E15>90)是篩選條件,用加法來表示'或'關系。3)模糊條件查詢查詢人名中包含關鍵字'看見'的數據明細。模糊篩選▼=FILTER(A2:E15,ISNUMBER(FIND("看見",B2:B15)),"")ISNUMBER(FIND("看見",B2:B15))是篩選條件,用FIND來查找B2:15是否存在關鍵字'看見',如果存在則返回位置序號,否則返回錯誤值;再用ISNUMBER判斷是否為數值,返回由邏輯值TRUE和FALSE組成的內存數組。擴展用法相比于普通版本的數組公式,比如INDEX+SMALL+IF套路,FILTER函數更強大的地方在于,它的返回結果是一個純凈的數組,可以嵌套在其它函數內部繼續運算。結合我們前面兩期分享的SORT和UNIQUE函數,我舉幾個例子。1)對查詢結果排序如下圖所示,需要查詢班級為一班的數據明細,并根據成績列,對該查詢結果降序排列。公式如下:=SORT(FILTER(A2:E15,A2:A15="一班",""),5,-1)FILTER函數篩選出班級為一班的數據明細,再使用SORT函數按第5列的成績列降序排列。2)對查詢結果去重復如下圖所示,需要查詢人名中包含關鍵字'看見'的明細,并刪除重復項,返回人名唯一值。實現公式如下:=UNIQUE(FILTER(B2:B15,ISNUMBER(FIND("看見",B2:B15))))FILTER函數篩選出人名中包含關鍵字'看見'的數據明細,再使用UNIQUE函數刪除重復項。3)分類中式排名如下圖所示,A:C是數據明細,需要在D列實現班級內部中式排名。實現公式如下:=MATCH(C2,SORT(UNIQUE(FILTER(C$2:C$12,A$2:A$12=A2)),1,-1),0)FILTER函數篩選出相同班級的成績數據,UNIQUE函數對該結果去重復,SORT函數再對去重復后的成績降序排列,最后使用MATCH函數查詢當前成績在去重并排序后成績中的序號位置,也就是了中式排名結果了。沒了,揮揮手,下期再見。案例文件下載百度網盤..▼https://pan.baidu.com/s/1hb0G-9nKPhqBed8NXBCurw?提取碼: 9stj圖文作者:看見星光原載:Excel星球
總結
以上是生活随笔為你收集整理的unique函数_Office 365函数新世界:动态数组的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python拟牛顿法迭代点绘制_最速下降
- 下一篇: oracle自带split函数_Pand