首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

这个条件求和很简单,但是SUMIFS函数解决不了-第2期

前几期的文章中给大家介绍了一个关于条件求和的例子,文章连接为:这是一个简单的条件求和的问题,但是SUMIF解决不了,这期是同样的一个问题,只能条件稍微有变化,如下图所示:

注意:与上次不同的是,上期的文章中的条件是“*月”,比如“1月”,而应收款日期列的格式是“yyyy/mm/dd”,而这次属于上面的这种类型。对于这样的情况,如果不进行处理,同样SUMIF与SUMIFS函数也是没有办法进行统计的。

1

Sumproduct+Search

在G2单元格中输入公式,按Enter键完成后向下填充:

=SUMPRODUCT((ISNUMBER(SEARCH(F3&"*",$B$2:$B$25))*$C$2:$C$25))

如果将上面的公式改写成数组公式,即在G2单元格中输入公式,按键完成后向下填充:

=SUM((ISNUMBER(SEARCH(F3&"*",$B$2:$B$25))*$C$2:$C$25))

注:SEARCH函数支持通配符查找,同时第一个参数也支持单元格区域;ISNUMBBER函数是将SEARCH函数查找的结果进行判断,是否为数字,如果为数字,返回TRUE,如果不是则返回为FALSE,同时逻辑值又可以与数值进行互换,所以就可以正确地得到结果。

2

Sumproduct+Left

在G2单元格中输入公式,按Enter键完成后向下填充:

=SUMPRODUCT((--LEFT($B$2:$B$25,6)=F3)*$C$2:$C$25)

如果将上面的公式改写成数组公式,即在G2单元格中输入公式,按键完成后向下填充:

{=SUM((--LEFT($B$2:$B$25,6)=F3)*$C$2:$C$25)}

注:这里使用LEFT函数左取日期列6位,然后再使用“--”减负运算将文本型的数值转换成与目标值一致的数值型的。

3

Sumproduct+Find

在G2单元格中输入公式,按Enter键完成后向下填充:

=SUMPRODUCT((--LEFT($B$2:$B$25,6)=F3)*$C$2:$C$25)

如果将上面的公式改写成数组公式,即在G2单元格中输入公式,按键完成后向下填充:

{=SUM((ISNUMBER(FIND(F3,$B$2:$B$25)))*$C$2:$C$25)}

注:FIND函数不支持通配符查找。这里使用FIND函数第一个参数支持单元格区域的特性,找目标值是否在日期列中能否找到,然后自用ISNUMBER判断是否为数字,如果为数字,表示能找到,则返回TRUE,否则表示找不到,则返回FALSE,再根据逻辑值与数值的互换的原理去乘积求和。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20210302A00ZUW00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

相关快讯

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券