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

按條件計算最小值

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

這也是一個經(jīng)常遇到的問題,就像下面這個圖中,要計算班級為乙班,并且性別為女性的最低分?jǐn)?shù):

image.png

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

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

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

image.png

現(xiàn)在,只需這樣:

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

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

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

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

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

image.png

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

現(xiàn)在,只要用下面這個數(shù)組公式,就OK了。

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

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

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

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

要連接各個單元格的內(nèi)容,現(xiàn)在也變得如此簡單。

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

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

image.png

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

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

回復(fù)(0)
返回頂部