Excel formula 简单有效的IFS和SUMIFS

Excel formula 简单有效的IFS和SUMIFS,excel-formula,sumifs,Excel Formula,Sumifs,我有一个样本附加数据,我想使用SUMIFS来评估数据 例如,给定以下条件和多个条件 类别:buz 中心:tre 单位:a 部分:x =If(Class=all classes in a range, SUMIFS(Amount,Centre,tre,Unit,a,Section,x), SUMIFS(Amount,Class,buz,Centre,tre,Unit,a,Section,x)) 我可以很容易地写出这样的句子: =SUMIFS(Amount,Class,buz,Cent

我有一个样本附加数据,我想使用SUMIFS来评估数据

例如,给定以下条件和多个条件

类别:buz
中心:tre
单位:a
部分:x

=If(Class=all classes in a range,   
SUMIFS(Amount,Centre,tre,Unit,a,Section,x),
SUMIFS(Amount,Class,buz,Centre,tre,Unit,a,Section,x))  
我可以很容易地写出这样的句子:

=SUMIFS(Amount,Class,buz,Centre,tre,Unit,a,Section,x) 
但是,如果需要评估一个或两个范围的所有值,而不是像上面那样只评估其中一个(例如我想要所有类,而不仅仅是
buz
),那么我可以将
if
sumifs

条件:
类别:表中的所有类别
中心:tre
单位:a
部分:x

=If(Class=all classes in a range,   
SUMIFS(Amount,Centre,tre,Unit,a,Section,x),
SUMIFS(Amount,Class,buz,Centre,tre,Unit,a,Section,x))  

我正在寻找一种更好的方法来实现上述目标,这种方法将更简单,尤其是更快、更高效,因为
SUMIFS
在处理大型数据集时往往速度较慢。

我认为使用*字符而不是类将在不更改公式的情况下实现您想要的结果(返回所有类)


如果速度是一个问题,VBA还可以为您提供更快的解决方案,特别是如果您想计算许多类别的总计。

使用小计和过滤器更容易做到这一点

创建具有小计公式的单元格

=小计(9,金额)

然后对列应用过滤器

像这样:


SUMIFS将是您最快的解决方案,它是这类问题最简化的方程式。所有其他的都是数组类型,并且比SUMIFS慢。甚至VBA也会变慢。