如果您无法让 AVERAGEIF 或 AVERAGEIFS 为您工作,您可以回退到这个公式:
=IFERROR(SUMPRODUCT(($A$2:$A$26>=(EOMONTH(E$2,-1)+1))*($A$2:$A$26<=EOMONTH(E$2,0))*$B$2:$B$26)/SUMPRODUCT(($A$2:$A$26>=(EOMONTH(E$2,-1)+1))*($A$2:$A$26<=EOMONTH(E$2,0))),"NO DATES")
如果您无法在您的 excel 版本中使用 IFERROR,那么您可以使用此公式,但如果找不到日期,您将收到 #div/0 错误。
=SUMPRODUCT(($A$2:$A$26>=(EOMONTH(E$2,-1)+1))*($A$2:$A$26<=EOMONTH(E$2,0))*$B$2:$B$26)/SUMPRODUCT(($A$2:$A$26>=(EOMONTH(E$2,-1)+1))*($A$2:$A$26<=EOMONTH(E$2,0)))
这假设您要查找的月份位于 E2 中,并且可能是水平复制的。如果您的月份是垂直列出的,请将 E$2 更改为 $E2。您还必须以 Excel 日期格式输入您要查找的日期,包括年、月和该月的某一天。
如果您有可用的 AVERAGEIFS,这是首选方式。使用以下内容:
=AVERAGEIFS($B$2:$B$26,$A$2:$A$26,">="&EOMONTH(E2,-1)+1,$A$2:$A$26,"<="&EOMONTH(E2,0))
概念证明