我有一份包含 1000 多个公司名称的列表,但其中一些是重复的,但不是完全重复(例如:Nintendo、Nintendo Inc、Nintendo Video games 等),有没有办法识别重复项,以便我可以将它们分组在一起?
我正在使用下面的代码,但它没有拾取其中的一些,我不知道原因。
Sub TestForDups()
Dim LLoop As Integer
Dim LTestLoop As Integer
Dim LClearRange As String
Dim Lrows As Integer
Dim LRange As String
Dim LChangedValue As String
Dim LTestValue As String
'Test first 2000 rows in spreadsheet for uniqueness
Lrows = 2000
LLoop = 2
'Clear all flags
LClearRange = "A2:A" & Lrows
Range(LClearRange).Interior.ColorIndex = xlNone
'Check first 2000 rows in spreadsheet
While LLoop <= Lrows
LChangedValue = "A" & CStr(LLoop)
If Len(Range(LChangedValue).Value) > 0 Then
'Test each value for uniqueness
LTestLoop = 2
While LTestLoop <= Lrows
If LLoop <> LTestLoop Then
LTestValue = "A" & CStr(LTestLoop)
'Value has been duplicated in another cell
If InStr(Range(LTestValue).Value, Range(LChangedValue).Value) > 0 Then
'Set the background color to red
Range(LChangedValue).Interior.ColorIndex = 3
Range(LTestValue).Interior.ColorIndex = 3
End If
End If
LTestLoop = LTestLoop + 1
Wend
End If
LLoop = LLoop + 1
Wend
End Sub
答案1
正如@Scott Craner 提到的,有一些模糊查找插件可以挂接到 Excel 中。
从 Microsoft 下载模糊查找插件:https://www.microsoft.com/en-us/download/details.aspx?id=15011
在 Excel 中设置和使用模糊查找的教程:http://www.k2e.com/tech-update/tips/431-tip-fuzzy-lookups-in-excel
视频教程展示如何使用该工具:https://www.youtube.com/watch?v=3v-qxcjZbyo
插件中有一些非常复杂的匹配算法,因此您的脚本无法用这么多代码完美实现您想要的功能也就不足为奇了。不过,感谢您的尝试!