使用索引/匹配的Excel公式

使用索引/匹配的Excel公式,excel,if-statement,indexing,match,Excel,If Statement,Indexing,Match,我正在处理订单的活动日志。我的目标是找出被拒绝的订单数量,然后最终发布。如果备注以“D”开头,则订单被拒绝,任何其他备注都是释放 如果备注以表中的“D”匹配顺序开头,且日期大于“D”备注的日期,则返回发布日期 这是我使用的公式,但我缺少日期逻辑,它返回第一个顺序匹配 如果最终发布日期始终低于拒绝日期,则将索引匹配设置为从下一行开始应该可以解决此问题。对于图像,我无法剪切和粘贴要检查的数据 对于突出显示的行: =IF(LEFT(C13,1)="D",INDEX(A14:$E$2305,MATCH(

我正在处理订单的活动日志。我的目标是找出被拒绝的订单数量,然后最终发布。如果备注以“D”开头,则订单被拒绝,任何其他备注都是释放

如果备注以表中的“D”匹配顺序开头,且日期大于“D”备注的日期,则返回发布日期

这是我使用的公式,但我缺少日期逻辑,它返回第一个顺序匹配


如果最终发布日期始终低于拒绝日期,则将索引匹配设置为从下一行开始应该可以解决此问题。对于图像,我无法剪切和粘贴要检查的数据

对于突出显示的行:

=IF(LEFT(C13,1)="D",INDEX(A14:$E$2305,MATCH(E13,E14:$E$2305,0),4),1)

这确实假设拒绝只发生一次。

如果您的数据并非总是按升序日期排序,请使用以下数组公式:

=IF(LEFT(C13,1)="D",INDEX($D$2:$D$2305,MATCH(1,(E13=$E$2:$E$2305)*(D13<$D$2:$D$2305),0)),1)

现在,如果订单从未发布,那么您将获得
未发布
您可以将其更改为您想要的任何内容。

FWIW:据我所知,金额是不需要的。如果没有它,你应该得到相同的答案。那么结果应该是什么呢?谢谢你,斯科特。它并不总是按升序排列。公式应该是发布日期。我认为这个公式很接近,但它仍然说,当发布在它的正下方时,不会发布。可能需要添加另一条逻辑备注不是以D开头的?您是否使用Ctrl-Shift-enter输入公式?我输入了,它的意思是“未发布”。此外,此公式是基于您的设计的,它将首先输入第13行。然后复制/上下拖动。F2中的公式是什么?我的错,我的
错误应该是

=IF(LEFT(C13,1)="D",INDEX($D$2:$D$2305,MATCH(1,(E13=$E$2:$E$2305)*(D13<$D$2:$D$2305),0)),1)
=IF(LEFT(C13,1)="D",IFERROR(INDEX($D$2:$D$2305,MATCH(1,(E13=$E$2:$E$2305)*(D13<$D$2:$D$2305),0)),"Not Released"),1)