【EXCEL】SUMIFS多次条件筛选数据

问题案例

有如下两个工作表(Sheet1和Sheet2):

在sheet1中的C2行获得一个结果(项目1的1月收入),是对sheet2中的A列筛选出"项目1"+B列筛选出"202401"而获得对应C列的结果。借助excel的公式如何实现。

Sheet1 - 总览表

项目 收入 1月收入 2月收入
项目1
项目2

Sheet2 - 详细收入记录

项目 年月 收入
项目1 202401 100
项目1 202402 130
项目2 202401 200
项目2 202402 230

目标:在Sheet1中根据项目名称和月份获取对应的收入数据。

解决方法

方法一:使用 INDEXMATCH 函数组合

在Sheet1的C2单元格中,我们可以使用数组公式来匹配项目1在202401月份的收入:

excel 复制代码
=INDEX(Sheet2!C:C, MATCH(1, (Sheet2!A:A="项目1")*(Sheet2!B:B=202401), 0))

输入上述公式后,使用Ctrl + Shift + Enter来确认,Excel会处理它作为一个数组公式。

方法二:使用 SUMIFS 函数

在Sheet1的C2单元格中,可以使用SUMIFS函数来实现相同的目标,而无需输入数组公式:

excel 复制代码
=SUMIFS(Sheet2!C:C, Sheet2!A:A, "项目1", Sheet2!B:B, 202401)

这个公式会返回所有满足条件(项目为"项目1"且年月为"202401")的收入值的总和。

知识点拓展

INDEX 函数

INDEX 函数返回表格中指定单元格的值,或者某个区域中的某个单元格的值。它的基本语法是:

excel 复制代码
=INDEX(数组, 行号, 列号)

MATCH 函数

MATCH 函数搜索指定项在数组中的位置。它的基本语法是:

excel 复制代码
=MATCH(查找值, 查找数组, 匹配类型)

SUMIFS 函数

SUMIFS 函数可以根据一个或多个条件对范围的值求和。它的基本语法是:

excel 复制代码
=SUMIFS(求和范围, 条件范围1, 条件1, 条件范围2, 条件2, ...)

动态数组

在最新版本的Excel中,不需要使用Ctrl + Shift + Enter来创建数组公式,因为它支持动态数组。只需输入公式并按Enter即可。

注意事项

  • 确保在使用公式时正确引用了工作表名和单元格范围。
  • 在使用MATCH函数时,如果数组中没有找到查找值,将返回错误。
  • SUMIFS函数在有多条相同条件的记录时能返回正确的总和,这适用于求和而非单一值的匹配。
相关推荐
ManageEngineITSM2 小时前
功能越来越强,但 IT 使用体验却越来越差
大数据·excel·资产管理·itsm·工单系统
傻啦嘿哟2 小时前
如何使用 Python 操作 Excel 图片:插入、提取与压缩
开发语言·python·excel
石马马户2 小时前
Excel 根据A列标签拆分为多个列数据
excel
骆驼爱记录3 小时前
Word目录:标题加粗页码不加粗技巧
自动化·word·excel·wps·新人首发
城数派4 小时前
1985-2024年各省市县不同土地覆盖类型的土地面积(Excel)
数据库·arcgis·信息可视化·数据分析·excel
开开心心_Every4 小时前
轻松加密文件生成exe,无需原程序解密
运维·服务器·网络·电脑·excel·consul·memcache
fengyehongWorld1 天前
VBA 操作PowerQuery表格和带名字的表格
excel·vba
tangyal1 天前
Linux 核心操作合集(网络配置、XShell远程连接、vim文本编辑与操作、权限管理 实操手册)
excel
softbangong2 天前
815-批量Excel文件合并工具,批量excel文件、工作表合并软件
linux·windows·excel·文件合并·excel合并·数据整理
城数派2 天前
2000-2024年1km精度人口分布栅格数据(全球/全国/分省/分市)
arcgis·信息可视化·数据分析·excel