A
中的我有一个电子邮件地址列表
在col B
中我想要捕获重复项,因此如果在B
中获得触发器之前出现A中的电子邮件地址。
我正在使用这个效果很好的公式:
=if(isna(match(a3,$A$2:A2,0)),"New","Duplicate")
请注意,当我拖动此公式时,$A$2
会保持此范围的增长(例如,对于单元格B51
,范围将来自$A$2:A50
)
我的问题是,由于列A
会自动更新(例如添加了新的电子邮件地址),我希望列B
也会自动更新。我尝试使用Arrayformula但无法搞清楚:(
我试过两个:
=arrayformula(if(isna(match(A3:A,$A$2:A2,0)),"New","Duplicate"))
和
=arrayformula(if(isna(match(A3:A,$A$2:A2:A,0)),"New","Duplicate"))
但他们不起作用。
这是一个带有示例的电子表格,我的(失败)尝试解决它 https://docs.google.com/spreadsheets/d/1N3pFPnT452FmWa9w8EkYpIq-ZnivjoCzt5ORrNEKgLQ/edit#gid=0
答案 0 :(得分:2)
你可以使用Match来查看当前电子邮件地址的第一个匹配项是否在数组的当前行之前
=arrayformula(if(match(A2:index(A2:A,COUNTA(A2:A)),A2:index(A2:A,COUNTA(A2:A)),0)<row(A2:index(A2:A,COUNTA(A2:A)))-1,"Duplicate","New"))
答案 1 :(得分:2)
请尝试:
=ArrayFormula(IFERROR(if(VLOOKUP(A2:A,{A2:A,ROW(A2:A)},2,)=ROW(A2:A), "New", "Duplicate")))
如果匹配row =当前行→“新建”,否则→“复制”。
我使用vlookup
,因为它可能与ArrayFormula
答案 2 :(得分:0)