如何更改 arrayformula() 中 countif() 的范围?

How can I change the range of countif() inside an arrayformula()?

我想查找在当前行之后发生的重复项。我可以使用此公式找到在任何地方发生的重复项,但我不想将最后一次出现的特定值标记为重复项。

=arrayformula(if(row(B:B) = 1, "Duplicate", if(not(isblank(A:A)), if(countif(A:A, A:A) > 1, "Yes", "No"), "")))

如果我在查找范围内静态指定起始单元格,它只会在该位置之后找到重复项。但是我需要根据我所在的行更改起始点。

=arrayformula(if(row(B:B) = 1, "Duplicate", if(not(isblank(A:A)), if(countif(A5:A, A:A) > 1, "Yes", "No"), "")))

我尝试使用 indirect() 和 row(),但它似乎没有针对每一行进行更新。

=arrayformula(if(row(B:B) = 1, "Duplicate", if(not(isblank(A:A)), if(countif(indirect("A"&row(B:B)&":A"), A:A) > 1, "Yes", "No"), "")))

尝试:

={"Duplicate"; ARRAYFORMULA(IF(INDIRECT("A"&ROW()+1&":A")<>"", 
 IF(COUNTIF(INDIRECT("A"&ROW()+1&":A"), INDIRECT("A"&ROW()+1&":A")) > 1, "Yes", "No"), ))}


更新:

={"Duplicate"; 
 ARRAYFORMULA(IF(A2:A="",,
 IF(COUNTIFS(A2:A, A2:A, ROW(A2:A), ">="&ROW(A2:A))>1, "Yes", "No")))}