位置:首頁 > 軟件操作教程 > 辦公軟件 > Excel > 問題詳情

按條件計算最小值

提問人:周麗平發(fā)布時間:2021-07-19

這也是一個經常遇到的問題,就像下面這個圖中,要計算班級為乙班,并且性別為女性的最低分數:

image.png

在之前,如果我們要計算符合某個條件的最小值,需要使用數組公式來實現。模式化的數組公式是這樣的:

{=MIN(IF((B3:B12="乙班")*(D3:D12="女"),E3:E12))}

注意,這個可是數組公式,需要按Ctrl+Shift+回車來結束公式編輯的。

image.png

現在,只需這樣:

=MINIFS(G3:G12,D3:D12,"乙班",F3:F12,"女")

公式的用法類似于SUMIFS函數,第一個參數是需要計算的數據區(qū)域,后面是成對的區(qū)域/條件。

如果要計算符合條件的最大值,只要把公式中的MINIFS換成MAXIFS就OK了。

下面這個問題,相信大家也遇到過,就是按條件提取名單。

比方說下圖中,就是提取班組為“乙班”的所有人員名單,并且在姓名中間用逗號隔開。

image.png

在之前,解決這個問題必須要使用VBA代碼完成,這對于大多數普通用戶,門檻還是太高了。

現在,只要用下面這個數組公式,就OK了。

{=TEXTJOIN(",",TRUE,IF(D3:D12="乙班",E3:E12,""))}

其中第一個參數是指定的間隔符號,后面這個True,表示忽略空單元格,如果使用FALSE,就是表示包括空單元格。

要簡化公式的話,這里的邏輯值也可以省略參數,只使用逗號占位:

{=TEXTJOIN(",",,IF(D3:D12="乙班",E3:E12,""))}

要連接各個單元格的內容,現在也變得如此簡單。

只需要輸入下面這個數組公式,就可以快速的將D3:F12單元格區(qū)域的內容連接到一起,并且使用頓號隔開。

{=CONCAT(D3:F12&"、")}

image.png

之前對于這種問題,大家會使用PHONETIC函數來連接。但是PHONETIC函數比較挑剔,對于公式返回的結果就無能為力了,而且不支持對內存數組進行連接?,F在有了CONCAT函數,一切變得那么簡單。

繼續(xù)查找其他問題的答案?

回復(0)
返回頂部