天天看點

正規表達式同時滿足多個條件_如何同時提取滿足多重條件的多個值

正規表達式同時滿足多個條件_如何同時提取滿足多重條件的多個值
正規表達式同時滿足多個條件_如何同時提取滿足多重條件的多個值

春天到了...幸福指數又往上飙啊...

這兩天的幸福指數還額外高了幾分,也許春天到了,大家都更加努力了,最近問我Excel問題的人好像比以前都多...如何同時提取滿足多重條件的多個值,如何進行趨勢分析和銷量預測,如何實作數字文本的直接運算,如何不讓别人檢視自己的隐藏值...

知識就像一塊地,我不知道邊界在哪,自己給自己提問題,很難突破現有的知識範圍去思考一些新的問題,但是如果有其他人來問我問題,我就費勁想想,感覺就把這塊地的邊緣又擴大了...~(づ ̄ 3 ̄)づ

正規表達式同時滿足多個條件_如何同時提取滿足多重條件的多個值
Topic: 如何同時提取滿足多重條件的多個值?

關鍵詞:

同時提取、多重條件、返還多個值

應用:...那太多了...有資訊分揀的地方都用得上...看看XX季度XX産品的銷量,看看XX年XX大學的招聘人數,跟蹤XX區域XX訂單的情況...

案例如下:
正規表達式同時滿足多個條件_如何同時提取滿足多重條件的多個值

左側藍色區域是原始記錄資料,右側設定“查找時間”和“查找城市”兩個下拉菜單,根據不同的下拉選項,在橙色區域生成不同的結果;換言之,在藍色區域中提取同時滿足兩個篩選條件的值,并返還到橙色清單中;

正規表達式同時滿足多個條件_如何同時提取滿足多重條件的多個值
效果如下 :
正規表達式同時滿足多個條件_如何同時提取滿足多重條件的多個值
正規表達式同時滿足多個條件_如何同時提取滿足多重條件的多個值
解決思路:
正規表達式同時滿足多個條件_如何同時提取滿足多重條件的多個值

開始這個問題真讓我犯難,根據一個判定條件去提取多個值,這個我在之前的公衆号已經寫過:插入控件->引用變量->實作動态圖表縱橫篩選

這一篇裡面也提到了對雙重條件的查找,但有個很大的差別,之前的那篇的兩個條件是分别在縱橫兩個方向,從本質上說,它隻需要解決一個判定條件(縱列的判定),對橫向(标題行)的判定,基本等于數值比對,不需要使用周遊一樣的方式挨個去判定,表達的有點拗口哈...

但是現在一個判定條件變為兩個,直接在函數裡增加判定條件(一說條件判定首先就想到if,多重條件受限就想到ifs加條件...思維慣勢啊),但想了一下,我确實不知道該咋加進去...

換個思路,把這個問題的兩個判定條件合并為一個判定條件不就OK了嘛... 跳出正常思維是多麼的重要...

操作步驟:
正規表達式同時滿足多個條件_如何同時提取滿足多重條件的多個值

1、插入輔助列,将兩個判定條件合二為一

=IF(AND($A2=$H$1,$D2=$H$2),1,0)

公式翻譯:如果A列的值等于查找日期,同時D列的值等于查找城市,則判定這一行滿足條件,傳回真值1,否則傳回0;

正規表達式同時滿足多個條件_如何同時提取滿足多重條件的多個值

2、提取滿足條件的值

=IFERROR(INDEX(A$1:A$22,SMALL(IF($E$1:$E$22=1,ROW($1:$22),23),ROW(A1))),"")

正規表達式同時滿足多個條件_如何同時提取滿足多重條件的多個值
來,公式複雜,但是這樣的嵌套非常有用并且實踐中應用廣泛!我挽起袖子給大家翻譯一哈...不翻譯的話,确實不太容易看懂!
正規表達式同時滿足多個條件_如何同時提取滿足多重條件的多個值

(1)使用if去挨個判定,E1-E22的值是否為1(1則表示該行是我們需要提取的值),是的話,返還這一行的行數,不是的話,傳回23(當然你也可以根據心情寫其他的數...再當然...實際上寫多少還是有點講究...),數組運算後傳回一長串結果,如下圖↓

正規表達式同時滿足多個條件_如何同時提取滿足多重條件的多個值

(2)使用small函數+row函數的組合,随着函數向下拉,row(A1)變row(A2)...變變變...row(A22),對應的值變為1、2、3...22,跟small一結合,就返還步驟1結果中...第1小的數值、第2小的數值、第3小的數值...很明顯,從小到大依次是:15、18、20、21、23...(即第幾行)

(3)使用index函數,以步驟2的返還值作為參數在A列查找并返還,則依次返還A列第15行的值、第18行的值、第20行的值...搞定!

正規表達式同時滿足多個條件_如何同時提取滿足多重條件的多個值

(4)iferror函數...在此主要起美化作用...事實上,iferror的主要作用是避免錯誤值影響後面的計算,因為運算一旦摻入錯誤值是沒法執行運算的...

嗯,口水都說幹了,但不曉得大家看懂沒...沒事,看不懂再多看幾遍,感覺沒有比這更精辟的表達了啊...同理,再提取姓名和城市資訊...

正規表達式同時滿足多個條件_如何同時提取滿足多重條件的多個值

可能有小夥伴會問我,我按照上面這樣做的話,做出來就是效果圖那樣子的嗎... 不一定...除非你提前在存放資料的區域把公式都寫好了...呈現的效果圖是已經在區域全部定義好了公式,實作了更新全覆寫...是以大寶貝兒一定要記得公式全覆寫啊...

PS:表格的某個區域有自動更新(不管是數值、空值、提示或者樣式的更新),那一定是提前寫好了公式,看着沒有公式,其實是有的,沒有公式定義單元格,是不會自動更新的...

那麼也許又有人問,有些單元格點選檢視并沒有公式啊為什麼也會更新啊...我自己也常這樣寫...還是剛剛那個回答,那鐵定是寫了公式的,隻不過沒有把公式寫在表格區域罷了...

作為一個追求極緻的Excel星人,是不太樂意插入輔助列,也許有其他方式可以一步實作,辦法暫時沒想到,留下一個初步思路,看看有沒有感興趣的小夥伴跟我一起想...↓↓↓ countifs函數可以實作對滿足多重條件唯一值的統計,假設統計出來,有3條滿足條件的唯一值,在此基礎上,利用3+周遊的思維,是不是可以實作? 原文位址:

如何同時提取滿足多重條件的多個值​mp.weixin.qq.com

正規表達式同時滿足多個條件_如何同時提取滿足多重條件的多個值

歡迎圍觀的微信公衆号哈...