[英]Excel 2013 complex countif formula
我有這樣的源表設置:
Days Open Month
10 1
4 1
6 1
2 1
4 2
2 2
-1 2
4 3
6 3
7 4
3 4
等等
我正在嘗試建立一個公式,根據以下條件對行進行計數:
Days Open列<= 5和<>-1中的單元格,其中月份為2、3或4(工作表最終將具有不超過12的月份數,我需要按季度對結果進行分組)。 然后必須將總數除以在月列中出現2、3或4的所有行的總數。
我似乎無法讓COUNTIFS的第一部分同時符合這兩個條件...這是到目前為止我正在嘗試進行的工作:
=COUNTIFS('Cumulative Complaints'!K:K,"<=5",'Cumulative Complaints'!K:K,"<>-1")/(COUNTIF('Cumulative Complaints'!L:L,"2")+COUNTIF('Cumulative Complaints'!L:L,"3")+COUNTIF('Cumulative Complaints'!L:L,"4"))
我一直在這里和其他Excel論壇中四處逛逛,認為也許SUMPRODUCT
是SUMPRODUCT
的方法? 考慮到“開放日”列(<= 5和<>-1)所需的條件,我一直無法使它正常工作。
嘗試以下SUMPRODUCT()公式:
=SUMPRODUCT(('Cumulative Complaints'!K:K<=5)*('Cumulative Complaints'!K:K<>-1)*('Cumulative Complaints'!L:L>=2)*('Cumulative Complaints'!L:L<=4))/SUMPRODUCT(('Cumulative Complaints'!L:L>=2)*('Cumulative Complaints'!L:L<=4))
使用SUMPRODUCT時,條件AND
被*
代替。 它要求所有四個條件都為True才能返回1;否則,返回0。 1 * 1 * 1 * 1 = 1,如果任何一個為假,它們將返回0,所以1 * 1 * 0 * 1 =0。因此,在遍歷行時,將返回1或0與總和相加。
我的答案是采取不同的方法。
Excel具有一個非常強大的功能,稱為“數據透視表”,我認為它可能非常適合您的問題以及您可能會遇到的其他類似問題。
首先,我將幾列添加到您的表中,如下所示:
Days Open Month Quarter RecentlyOpened
10 1 1 FALSE
4 1 1 TRUE
6 1 1 FALSE
2 1 1 TRUE
4 2 1 TRUE
2 2 1 TRUE
-1 2 1 FALSE
4 3 1 TRUE
6 3 1 FALSE
7 4 2 FALSE
3 4 2 TRUE
=CEILING(B2/3,1)
=AND(A2<>-1,A2<=5)
其次,選擇表,然后執行“插入”>“數據透視表”。
第三,從字段拖到框,如下所示:
第四,單擊“每月總和”,然后選擇“值字段設置”以將“總和”更改為“計數”。
第五,將最近打開的過濾器設置為TRUE。
結果是這樣的:
數據透視表通常提供比復雜公式更靈活,更易於閱讀和理解的解決方案。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.