每个订单ID可以无限制显示多次。 E行中的总销售额是OrderDetail表中具有该订单ID的所有销售额的总和,因此在这种情况下,订单122的总销售额应为97。
但是,如果在列J中出现“取消”,则无论下达多少订单,该订单ID的所有销售金额都将被取消。因此,在此示例中,订单120和121的总销售金额应为零,并且应在Col D中为两个订单ID记录“取消”状态。
我尝试了D4和E4的这些公式,将它们向下拖动到表格的末尾。但是如您所见,这些公式显然不起作用。
D4: =INDEX($J$4:$J$11,MATCH(B4,$G$4:$G$11,0))
E4: =SUMIFS($H$4:$H$11,$G$4:$G$11,B$4,$J$4:$J$11,$J$4:$J$11<>"Cancel")
公式不能是数组公式,因为随着新订单的到来,两个表都会不断扩展。
有人可以帮助我解决这个问题吗?也许我错过了一些东西,但是我似乎无法弄清楚。任何帮助,将不胜感激。
答案 0 :(得分:2)
您的公式中存在一些范围不匹配的问题,可以通过使用完整的列引用而不是范围来解决。 (我确定吉普车会在评论中提出建议)
INDEX(MATCH())
仅返回D4
中公式中的第一个匹配项,您最好使用条件COUNTIFS()
代替:
=IF(COUNTIFS(J:J,"Cancel",G:G,B4)>0,"Cancel","")
第二个公式中有一些错别字,如果您使用完整的列引用,则更容易纠正,这可以解决问题:
=SUMIFS(H:H,G:G,B4,J:J,"<>Cancel")