在多个标准的另一张桌子上查找
嗨,我有一份付款清单和一张表格,里面有收款官员所做的承诺。
我想通过与债务人签订协议的最后一名收款官员的身份(和date)分配到付款表中。
例如:在第1111号上,有两个承诺:Morticia Adams和Gulliver; 但我select格列佛是因为他在该date范围内最后承诺考虑付款date。
同样,对于ID 5425,最后的承诺是由玛丽·安娜作出的,因为23.10.2016(支付date)是在12.10.2016和26.10.2016(承诺date)之间。
如果有人能指导我通过这个,我会很感激。
谢谢!
免责声明:这个公式产生的是OP所描述的,而不是图片显示的内容。
一种方法是find满足条件的最新会话date:
- 承诺表中的行的付款标识等于付款表的付款标识。
- 付款date大于或等于会话date。
- 付款date小于或等于约定的付款date。
我们可以这样做:
{=MAX(($A$3:$A$8 = A12) * (B12 >= $B$3:$B$8) * (B12 <= $C$3:$C$8) * $B$3:$B$8)}
然后将date和付款ID结合起来,就可以使用唯一的密钥来查找名称。
{=MAX(($A$3:$A$8 = A12) * (B12 >= $B$3:$B$8) * (B12 <= $C$3:$C$8) * $B$3:$B$8) & A12}
最后,我们可以执行索引匹配,在承诺表中的date和付款ID的级联范围内查找上述公式的输出
{=INDEX( $D$3:$D$8, MATCH( MAX(($A$3:$A$8 = A14) * (B14 >= $B$3:$B$8) * (B14 <= $C$3:$C$8) * $B$3:$B$8) & A14, $B$3:$B$8 & $A$3:$A$8, 0))}
{}
表示您必须使用Ctrl + Shift + Enterinput公式
请注意,如果命名范围,这将更加可读和直观。