带有date和名称标准的SUMIFS …仅限于月份和年份
我正在尝试获取SUMIFS公式以检查date列,并仅汇总与标准date的匹配年份和月份相对应的值。 我也希望这个SUMIFS包含一个名称标准和date。 即
单元格A1: =SUMIFS('Sheet1'!O:O, 'Sheet1'!D:D, 'Sheet2'!DATE(B2), 'Sheet1'!E:E, "Name")
sheet1列O是和值的存储位置
sheet1列D是存储date值的位置
sheet2单元格B2是存储date比较标准的位置
sheet1列E是存储名称的地方
“名称”是我想要总和select的名称标准
任何有识之士将非常感激!
如果您为date创build了开始date和结束date,即可以使用此版本,则可以使用SUMIFS
=SUMIFS('Sheet1'!O:O,'Sheet1'!D:D, ">="&EOMONTH('Sheet2'!B2,-1)+1, 'Sheet1'!D:D, "<"&EOMONTH('Sheet2'!B2,0)+1, 'Sheet1'!E:E, "Name")
EOMONTH
用于获取相关月份的开始和结束date,然后您的SUMIFS
根据您的其他标准总结正确的值。
如果B2
保证是本月的第一个,则可以省略第一个EOMONTH
函数
与SUMPRODUCT解决scheme
我发现在这种情况下使用SUMPRODUCT
更简单。
对于没有标题行,你可以简单的使用:
=SUMPRODUCT((MONTH(Sheet1!D:D)=MONTH(Sheet2!$B$2))*(YEAR(Sheet1!D:D)=YEAR(Sheet2!$B$2))*(Sheet1!E:E="Name"),Sheet1!O:O)
只需用您想要的"Name"
replace"Name"
。
如果您有一个标题行(或者如果该列包含任何不是有效date的值),则需要使用SUMPRODUCT
的数组公式:
=SUMPRODUCT((IF(ISERROR(MONTH(Sheet1!D:D)),Sheet1!D:D,MONTH(Sheet1!D:D))=MONTH(Sheet2!$B$2))*(IF(ISERROR(YEAR(Sheet1!D:D)),Sheet1!D:D,YEAR(Sheet1!D:D))=YEAR(Sheet2!$B$2))*(Sheet1!E:E="Name"),Sheet1!O:O)
(使用ctrl
+ shft
+ enter
数组公式enter
)