|
前言 在QQ群中討論關(guān)于SUMIF問題時,見一個函數(shù)高手小貓老師使用了一種簡化用法,即SUMIF的第三參數(shù)求和區(qū)域,只用區(qū)域的最左上角的單元格代替。下面我們用SUMIF的“錯位”用法引出這個話題吧。 sumif的“錯位”用法 這道題,就是用SUMIF的“錯位”法解決的,下面我們分析一下這個公式: =SUMIF(A3:D12,'',A2:D11) 我們知道SUMIF是條件求和函數(shù),第一參數(shù)是A3:D12,也就是條件區(qū)域,這里引用了數(shù)據(jù)區(qū)域往下移一行的區(qū)域,在這個區(qū)域中,查找第二參數(shù),也就是空值。因為第三參數(shù)與第一參數(shù)比,向上錯位了一行,所以找到每一列的第一個空值后,對這個空值的上一個單元格,也就是每列的最后一個數(shù)字進(jìn)行了求和。 我們現(xiàn)在把公式改一下: 也就是說,第三參數(shù)可以簡化成對求和區(qū)域的最左上角的引用。也就是文章開始提到的“小貓”老師的用法。 這是因為當(dāng)?shù)?參數(shù)與第1參數(shù)區(qū)域大小不同時,SUMIF函數(shù)會根據(jù)第1參數(shù)的范圍進(jìn)行智能的匹配。 我用VBA對100萬行兩列的數(shù)據(jù)做過試驗,第三參數(shù)簡化用法對SUMIF的運算速度基本沒什么影響。但需要注意的是,由于求和區(qū)域不明確,容易引發(fā)公式的重新計算,產(chǎn)生與易失性函數(shù)相似的情況。因此當(dāng)數(shù)據(jù)量較大時,需謹(jǐn)慎使用第3參數(shù)的簡寫方式。 后記 |
|
|