我花了很多时间在Excel中使用公式,但我仍然被阻止了。我希望你能帮助我。
我在Excel中有一个表,其中包含多个值,如下所示 screenshot.
我想要提取的是特定月份销售的水果数量。也就是说,例如,2016年1月销售了多少柠檬。这是我使用的公式:
=SUMPRODUCT((B3:B38=E4)*(MONTH($A$3:$A$150)=12)*(YEAR($A$3:$A$150)=2015);$C$3:$C$150)
但结果是截图中显示的#N / A.
我做错了什么?有什么帮助吗?
提前多多感谢!
答案 0 :(得分:2)
您可以在Excel中使用数组来获得此答案
{SUM(IF(MONTH(F$3&"1")=MONTH($A$3:$A$150),IF($E4=$B$3:$B$150,$C$3:$C$150,0),0))}
答案 1 :(得分:2)
您可以使用此Sumproduct公式,该公式使用数组逻辑:
SUMPRODUCT((MONTH($A$3:$A$38)=MONTH(TEXT(G$2,"MMM")&1))*($C$3:$C$38=$F4)*
($D$3:$D$38))
答案 2 :(得分:1)
问题的一部分是你的范围长度不相等。 B3:B38必须与$ A $ 3相同的行数:$ 150美元和C3:C150。当行不平等时,事情就会爆炸。
=SUMPRODUCT(($B$3:$B$150=$E4)*(MONTH($A$3:$A$150)=12)*(YEAR($A$3:$A$150)=2015);$C$3:$C$150)
如果您将标题行更改为实际的Excel日期格式,然后将单元格显示格式更改为仅显示月份(由csanjose建议),则可以按如下方式调整sumproduct公式并复制到所有单元格中你的桌子。
=SUMPRODUCT(($B$3:$B$38=$E4)*(MONTH($A$3:$A$150)=Month(F$3))*(YEAR($A$3:$A$150)=Year(F$3));$C$3:$C$150)
答案 3 :(得分:1)
在每个月的最后一天填写您的月份行,然后应用日期格式以仅显示月份名称。 例如,你应该使用的公式是g8:
=SUMIFS($C:$C;$B:$B;$E8;$A:$A;"<="&G$3;$A:$A;">"&F$3)
第一列“F”左侧没有要比较的列,因此您可以在E3中添加日期或更改公式(F8的示例):
=SUMIFS($C:$C;$B:$B;$E8;$A:$A;"<="&F$3;$A:$A;">2015/12/31")
查看result
答案 4 :(得分:0)
如果您不想使用数据透视表,可以使用此公式获得所需内容:
=SUMPRODUCT(($B$3:$B$150=$E3)*(MONTH($A$3:$A$150)=1)*(YEAR($A$3:$A$150)=2015)*$C$3:$C$150)
然后拖动填充单元格以将其复制到每个月的列(只需确保更改公式中的月份数(如果您也这样做,则为年份)),然后向下拖动填充列。
那应该是非常好的食物好:)
祝你好运!