循环访问列A中的值以查找重复项

我无法在Excel电子表格中循环数据。

在列A中为每个值search列B中所有值的值。 如果为真,则插入“重复”

到目前为止,我已经尝试过多种变体: =IF(A2=$B$2:$B$14,"duplicate",)

我已经试过VLOOKUPMATCHINDEX ,但还没有能够解决这个问题。

我相信一个VBA脚本会更有效率,但似乎无法弄清楚,你能帮忙吗?

要用公式来做,正如你的post所示,你已经尝试过使用

 =IF(ISNA(MATCH(A2,B:B,0)),"","duplicate") 

对于VBA解决scheme,试试这个

 Sub CheckForDups() Dim rSource As Range Dim rCompare As Range Dim rResult As Range Dim vSource As Variant Dim vComapre As Variant Dim vResult As Variant Dim sh As Worksheet Dim i As Long Set sh = ActiveSheet Set rSource = Application.Intersect(sh.UsedRange, sh.Columns(1)) Set rCompare = Application.Intersect(sh.UsedRange, sh.Columns(2)) Set rResult = Application.Intersect(sh.UsedRange, sh.Columns(3)) vSource = rSource vComapre = rCompare rResult.Clear vResult = rResult For i = 2 To UBound(vSource, 1) If Not IsError(Application.Match(vSource(i, 1), rCompare, 0)) Then vResult(i, 1) = "duplicate" End If Next rResult = vResult End Sub