发现了很多涉及在两列中查找重复项的问题:
i.e.
MS Excel 如何创建宏来查找重复项并突出显示它们? https://stackoverflow.com/questions/2162684/ms-excel-how-to-create-a-macro-to-find-duplicates-and-highlight-them and Excel标记重复值 https://stackoverflow.com/questions/7743273/excel-mark-duplicates-values
不过,我正在尝试调整代码以用于查找一列中的重复项。例如,这是一个数据集:
Column 1
Foo
Bar
23
23
12
foo
Bar
bart
这就是我现在正在使用的:
Function warnDupes()
Dim lastRow As Long
Dim dict As Object
' Let Col be the column which warnDupes operates on.
Dim Col As String
Col = "A"
Set dict = CreateObject("scripting.dictionary")
lastRow = range(Col & Rows.Count).End(xlUp).Row
On Error Resume Next
For i = lastRow To 1 Step -1
If dict.Exists(range(Col & i).value) = True Then
'range("Y" & i).EntireRow.Delete
MsgBox ("Hmm...Seems to be a duplicate of " & range(Col & i).value & _
" in Cell " & Col & i)
End If
dict.Add range(Col & i).value, 1
Next
End Function
到目前为止,我已经有了一些可以完成 90% 工作的代码。 23 和 23 是匹配的。酒吧与酒吧是相配的。等等。所以代码匹配字符串和整数。但我希望宏也能够将 Foo 和 foo 作为重复项进行匹配。如何让Excel忽略大小写?
这个问题 (Excel 工作表中检测重复项的函数 https://stackoverflow.com/questions/1492048/function-for-detecting-duplicates-in-excel-sheet)似乎相关,但我在调整代码或理解作者所做的事情时遇到了困难。对代码、解释或建议的任何改进将不胜感激。
Thanks.
UPDATE:
刚刚注意到一些非常奇怪的事情。
数据:
IB6061
IC6071
无论我使用宏还是使用 Excel 中的条件格式工具,都会匹配。有什么理由吗?
franklin
为什么不用 Excel 公式呢?
如果值在 A 列中,那么在单元格 B1 中键入该值并将其复制下来?
=IF(COUNTIF(A:A,A1)>1,"It is a duplicate","It is not a duplicate")
它也适用于“Foo”和“foo”等情况
然后,您还可以使用上述公式的条件格式来突出显示重复项?
FOLLOWUP
数据:
IB6061
IC6071
无论我使用宏还是使用 Excel 中的条件格式工具,都会匹配。
有什么理由吗?
你用什么公式?
这对我有用。突出显示 A 列,然后使用此公式
=COUNTIF(A:A,A1)>1
查看快照
Sid
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)