筛选之后ac相加,保留b,展开后位置也不能变动,因为数量大 需要公式一步到位,筛选后每行相乘再相加的公式如何使用?

Excel中筛选后的条件求和公式
作者:admin 文章来源:本站原创 点击数: 更新时间: 9:40:13
&&& 有时需要在Excel表格中动态地反映筛选后数值的变化情况,如下图中F32单元格中的合计值会随着不同的筛选情况而变化。我们知道,用SUBTOTAL函数可以求出筛选后可见单元格的数值和或平均值等,因为SUBTOTAL函数会忽略不包括在筛选结果中的行。例如下图是筛选“商品名称=袜子”、“类别=男”时的结果,其中F32单元格中的公式为:
&&& =SUBTOTAL(9,F10:F31)
&&& 但如果此时还需要动态地反映筛选后各城市的合计值,即进行筛选后的条件求和,仅仅使用SUBTOTAL函数无法实现。虽然用多条件求和公式可以得到计算结果,但我们的目的是要随着不同的筛选操作,能够动态实时地反映数据的变化情况,因而此处不宜使用多条件求和公式。关于多条件求和公式,可以参考本站一文。
&&& 要在筛选后进行条件求和,可以使用下面的几个公式。以下图为例,假如数据在A10:F31区域中。
&&& 1.统计筛选后“广州”的销售数量:
&&& 在B2单元格中输入公式:
&&=SUMPRODUCT(SUBTOTAL(9,OFFSET($F$10,(ROW($F$10:$F$31)-MIN(ROW($F$10:$F$31))),)),--($B$10:$B$31=A2))
&&& 说明:
& ① ROW($F$10:$F$31)-MIN(ROW($F$10:$F$31))返回一个包含22个数值的数组{0;1;2;3;4;5;6;7;8;9;10;11;12;13;14;15;16;17;18;19;20;21}。
&&& ② 用OFFSET函数返回包含F10:F31各单元格中的数值的数组。
&&& ③ 用SUBTOTAL函数返回包含筛选后可见单元格数值的数组,不可见单元格对应数组中的数值为0。如本例中返回包含22个数值的数组{359;535;0;0;0;297;0;308;0;0;0;;0;0;0;506;392;0;0;0}。
&&& ④ --($B$10:$B$31=A2)返回一个包含数值1和0的数组,其中值为“广州”的单元格对应数组中的数值为1。本例中返回包含22个数值的数组{1;0;0;1;0;1;0;0;0;0;1;1;0;1;0;1;0;1;0;1;0;1}。
&&& ⑤ 最后用SUMPRODUCT函数返回上述两个数组的乘积和,得到所需结果。
&&& 另一个类似的数组公式为:
&&& =SUM(SUBTOTAL(9,OFFSET($F$9,ROW($1:$22),))*($B$10:$B$31=A2))
&&& 该公式为数组公式,输入完毕后按Ctrl+Shift+Enter结束。
&&& 2.统计筛选后“广州”的记录数:
&&& 只需将上述公式中SUBTOTAL函数的参数“9”改为“3”即可。如在C2单元格中输入公式:
&&=SUMPRODUCT(SUBTOTAL(3,OFFSET($F$10,(ROW($F$10:$F$31)-MIN(ROW($F$10:$F$31))),)),--($B$10:$B$31=A2))
&&& 或数组公式:
&&& =SUM(SUBTOTAL(3,OFFSET($F$9,ROW($1:$22),))*($B$10:$B$31=A2))
&&& 都可以返回数值4,表示筛选后有4条“广州”的记录。
上一篇文章:
下一篇文章:
其他网友还在看:
 网友评论:(评论内容只代表网友观点,与本站立场无关!)
::发表评论::
评论内容:
请遵守及中华人民共和国其他各项有关法律法规。
严禁发表危害国家安全、损害国家利益、破坏民族团结、破坏国家宗教政策、破坏社会稳定、侮辱、诽谤、教唆、淫秽等内容的评论 。
用户需对自己在使用本站服务过程中的行为承担法律责任(直接或间接导致的)。
评论需要审核通过后才可见,本站管理员有权保留或删除评论内容。
评论内容只代表网友个人观点,与本网站立场无关。
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
Excel技巧天地 E-mail:}

我要回帖

更多关于 一步到位 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信