Excel Vba sumif函数数组

我想转移一个电子表格中的工作表公式,但似乎无法find如何去做,我可以写多个sumifs,但我需要做大约11种types,所以不是最干净的方式。 问题归结为列总结和连续,但显然取决于月可能只是N或N,O或N,O,P,Q等这是使用CTRL + SHIFT + ENTERinput

我在Excel中的公式是

Sum(if(Range=Criteria,if(range=<criteria,Range))) =Sum(if(Data!$A$4:$A$1000=$A11,if(Data!$N$3:$Y$3<=EOMONTH($A$1,-2)+1,Data$N$4:$Y$1000))) 

任何想法,将不胜感激

你的上面的公式也可以写成

=SUMPRODUCT((Data!$A$4:$A$1000=11)*(Data!$N$3:$Y$3<=EOMONTH($A$1,-2)+1)*(Data!$N$4:$Y$1000))

这不是一个数组公式。 即您不必按CTRL + SHIFT + ENTER 。 一个简单的ENTER就足够了。

同样可以移植到VBA中

Debug.Print Application.Evaluate("=SUMPRODUCT((Data!$A$4:$A$1000=11)*(Data!$N$3:$Y$3<=EOMONTH($A$1,-2)+1)*(Data!$N$4:$Y$1000))")