Google 表格 - 如何查找数据的更新范围并针对另一个数据集交叉检查值

GoogleSheets - How to look up an updating range of data and cross check values against another dataset

我有一个 table (link to actual googlesheet),如下所示,它显示了客户的账单信息。首先是存款金额和支付日期(蓝色标题)。然后是经常性金额、经常性付款金额和每个相关日期(绿色标题)。

我还有另一个 sheet 可以擦除我的发票并自动填充收到的每笔付款。例如:

我希望能够在 sheet 2 交叉检查实际支付的金额和付款日期,如果付款金额正确并且日期在下一个截止日期后 4 天。

我正在尝试创建一个助手 table,如 sheet3 中所示,它是使用 vlookup 创建的,但发现很难正确确定范围。我应该使用更好的功能吗?

将其粘贴到 M2 单元格中并向下拖动(当然,您可以根据需要隐藏整列或更改字体颜色)。然后你可以设置简单的条件格式...

=IF(QUERY(Payments!$A:$C, "select sum(C) where A='"&A2&"' group by A label sum(C)''", 0)>=
    C2+(E2*F2), 1, 0)*
 IF(QUERY(TRANSPOSE(F2:K2), "select Col1 order by Col1 desc limit 1", 0)+4<=
    QUERY(Payments!$A:$C, "select B where A='"&A2&"' order by B desc limit 1", 0), 1, 0)

将其粘贴到 M2 单元格中并向右拖动以到达 Q2 单元格。然后 select M2:Q2 并向下拖动。如果您愿意,可以隐藏整列或更改字体颜色)。然后您可以为每一列设置简单的条件格式(GHIJ, K) 两次 - 两种颜色(绿色代表 "on-time",红色代表 "late")...

=IF(LEN(G2),IF(G2=IFERROR(VLOOKUP(G2,QUERY(Payments!$A:$C,"select B where A='"&$A2&"'",0),1,0),),"1",
 IF(G2+1=IFERROR(VLOOKUP(G2+1,QUERY(Payments!$A:$C,"select B where A='"&$A2&"'",0),1,0),),"2",
 IF(G2+2=IFERROR(VLOOKUP(G2+2,QUERY(Payments!$A:$C,"select B where A='"&$A2&"'",0),1,0),),"2",
 IF(G2+3=IFERROR(VLOOKUP(G2+3,QUERY(Payments!$A:$C,"select B where A='"&$A2&"'",0),1,0),),"2",
 IF(G2+4=IFERROR(VLOOKUP(G2+4,QUERY(Payments!$A:$C,"select B where A='"&$A2&"'",0),1,0),),"2","0"))))),)