在Excel的應(yīng)用中,數(shù)據(jù)統(tǒng)計(jì)類的問題占了很大一部分,,概括來說,統(tǒng)計(jì)是指以下這些內(nèi)容:求和,、計(jì)數(shù),、平均值、最大值,、最小值,、標(biāo)準(zhǔn)偏差和方差(這兩個(gè)一般很少用到)。 就拿前五種常見的統(tǒng)計(jì)來說,,都有對應(yīng)的函數(shù)來實(shí)現(xiàn):求和(sum),、計(jì)數(shù)(count)、平均值(average),、最大值(max),、最小值(min)。關(guān)于這五個(gè)函數(shù),,相信大家一定都不陌生,。 日常應(yīng)用中,還需要在以上這五種統(tǒng)計(jì)方式加上一定的條件,,于是就有了條件求和(sumif)與多條件求和(sumifs),、條件計(jì)數(shù)(countif)與多條件計(jì)數(shù)(countifs)、條件平均值(averageif)與多條件平均值(averageifs),,但是沒有條件最大值和條件最小值的函數(shù),。 如果需要統(tǒng)計(jì)條件最大值和條件最小值,就需要用到公式才能實(shí)現(xiàn),,今天就來學(xué)習(xí)這兩個(gè)公式的原理,。 條件最大值的公式 下圖是一個(gè)銷售數(shù)據(jù),現(xiàn)在需要統(tǒng)計(jì)指定這幾天的最高銷售額,,指定的日期就是一個(gè)條件,,這個(gè)問題也就是一個(gè)典型的條件最大值的例子。 條件最大值的公式相對簡單一點(diǎn),,也是一個(gè)模式化的公式,,就本例來說公式為:=MAX(($A$2:$A$16=I2)*$B$2:$G$16) 注意是個(gè)數(shù)組公式,,需要按三鍵結(jié)束。 如果僅僅是學(xué)習(xí)這個(gè)公式的思路,,遇到問題可以套用的話非常容易,,簡單解釋一下公式各部分的具體含義和作用: ($A$2:$A$16=I2)這是具體條件,A列為數(shù)據(jù)源的日期,,I2為要具體判斷的日期,,二者進(jìn)行比較,通常使用數(shù)組公式的時(shí)候,,為了減少運(yùn)輸量,,涉及到引用范圍的時(shí)候盡量準(zhǔn)確,同時(shí)使用絕對引用加以固定,,防止公式在下拉的過程中出錯(cuò),。 $B$2:$G$16是實(shí)際數(shù)據(jù)所在的區(qū)域,條件得到的是一組邏輯值,,日期判定符合要求的對應(yīng)TRUE,,其他的全部是FALSE,如圖: 第二個(gè)是TRUE,,對應(yīng)3月9日,,邏輯值與具體數(shù)據(jù)相乘,只有TRUE對應(yīng)的這一組是實(shí)際銷售額,,其他的都變成零,。 此時(shí),在這一組數(shù)據(jù)中取最大值,,就是我們需要的結(jié)果,。 當(dāng)公式下拉的時(shí)候,條件發(fā)生了變化,,邏輯值中的TRUE位置隨之變化,,實(shí)際銷售額的數(shù)據(jù)也對應(yīng)變化。 條件最大值公式的本質(zhì)是利用了邏輯值和數(shù)組的計(jì)算原理,,將不符合條件的數(shù)據(jù)全都變成零,,從而達(dá)到目的。 但是這個(gè)公式使用時(shí)有個(gè)缺陷,,僅當(dāng)數(shù)據(jù)都是正數(shù)時(shí)才有效,,如果要在一堆負(fù)數(shù)中取最大值,就不行了,。 那么對于這種情況,,公式該如何寫呢? 這個(gè)問題先留著,,我們看完條件最小值以后就明白了,。 條件最小值的公式 條件最小值需要用到min if的套路,,公式為:=MIN(IF($A$2:$A$16=I2,$B$2:$G$16,999)) 同樣還是數(shù)組公式,需要三鍵輸入: 公式比較好理解,,if的第一個(gè)參數(shù)$A$2:$A$16=I2是條件,,第二個(gè)參數(shù)$B$2:$G$16是實(shí)際數(shù)據(jù)區(qū)域,第三個(gè)參數(shù)999是一個(gè)比數(shù)據(jù)區(qū)域中的數(shù)都大的一個(gè)數(shù)字,,平時(shí)也有用9^9的,,就是9的9次方。 這個(gè)if會得到這樣一組結(jié)果: 符合條件的位置是實(shí)際數(shù)據(jù),,其他位置都是999,,之所以不用前面最大值的那個(gè)套路,也就是數(shù)組 邏輯值的方法,,目的是為了避免邏輯值產(chǎn)生的0,,當(dāng)有0出現(xiàn)的話,最小值就取不到實(shí)際數(shù)據(jù)中的最小值,,而只能是0了,。 如果這個(gè)公式的思路理解的話,,再回頭看看之前條件最大值那里留下的問題,,如果都是負(fù)數(shù),公式怎么寫,? 可以借鑒min if這個(gè)思路,,想想如何變成max if吧,這個(gè)問題留給有興趣研究的朋友,,如果寫出來的話,,可以在下方留言。 |
|