大数跨境
0
0

这样表格的多条件求和,你想象不到的简单!

这样表格的多条件求和,你想象不到的简单! Excel数据分析之道
2024-03-08
0

一个学生问,如何计算指定大区、指定客户类型的合计数?

仔细阅读表格,客户类型在A列,指定的客户类型在A列也不是一个;实际求和区域就更不是一个了,指定的大区是有很多列的,这样,我们如何计算?使用多个SUMIF函数相加?这是不现实的,因为指定的大区有很多列,位置也不固定。

这种问题的解决,我们可以分别在客户类型上和大区上做判断就行了,一个简单的公式如下:

=SUMPRODUCT((B7:J7=B19)*(A8:A16=B20)*B8:J16)

这个公式中:

表达式 (B7:J7=B19) 是判断第7行哪些单元格是指定的大区;

表达式 (A8:A16=B20)  是判断第A列哪些单元格是指定的客户类型;

两个表达式相乘,就是一个由1和0组成的二维数组,这个数组与求和区域结构是完全一样的。

在这个由1和0组成的二维数组中,数字1表示同时是指定的客户类型和指定的大区,数字0表示要么是指定大区但不是指定客户类型,要么是指定客户类型但不是指定大区,要么既不是指定大区也不是指定类型。

{0,0,0,0,0,0,0,0,0;
0,1,0,0,0,1,0,0,0;
0,0,0,0,0,0,0,0,0;
0,0,0,0,0,0,0,0,0;
0,0,0,0,0,0,0,0,0;
0,1,0,0,0,1,0,0,0;
0,0,0,0,0,0,0,0,0;
0,1,0,0,0,1,0,0,0;

0,0,0,0,0,0,0,0,0}

这样,将这个由1和0组成的二维数组,与实际求和区域相乘,也就是表达式 (B7:J7=B19)*(A8:A16=B20)*B8:J16  ,其结果就是由实际指定大区指定客户类型的实际数字和0组成的数组:

{0,0,0,0,0,0,0,0,0;

0,329,0,0,0,548,0,0,0;

0,0,0,0,0,0,0,0,0;

0,0,0,0,0,0,0,0,0;

0,0,0,0,0,0,0,0,0;

0,31,0,0,0,549,0,0,0;

0,0,0,0,0,0,0,0,0;

0,421,0,0,0,66,0,0,0;

0,0,0,0,0,0,0,0,0}

这个数组就是指定大区指定客户类型的要求和的数字,其他不满足条件的大区或客户类型都是数字0,那么,使用SUM函数或者SUMPPRODUCT函数将这个数组的所有数字相加,是不是我们需要的结果?

在这个例子中,涉及到了数组的概念,其实,Excel工作表的一行或一列就是一个一维数组,一个多行多列的单元格区域就是一个二维数组。这个例子,就是想办法构建条件数组以及求和数组,这才是关键。

不管如何,逻辑思维永远是第一位的,不管你掌握了多少小技巧,没有表格阅读能力,不清楚表格里面的逻辑思维,只能是套用别人的公式,但换个场景,却又是一脸蒙圈。

Excel永远是逻辑思维,而不是小技巧,除非你只想快点输入数据、删除数据,而不是数据计算分析,


【声明】内容源于网络
0
0
Excel数据分析之道
全面介绍Excel在企业数据分析中的各种应用,实际案例模板分享,经验心得,帮助个人和企业提升Excel应用能力。
内容 1106
粉丝 0
Excel数据分析之道 全面介绍Excel在企业数据分析中的各种应用,实际案例模板分享,经验心得,帮助个人和企业提升Excel应用能力。
总阅读182
粉丝0
内容1.1k