UDF和其他问题中提供的其他解决方案无法解决此问题。也许它是字符串的长度,然后是我的问题中的重复数量。 (所有数字,以逗号分隔,13位长,2到3个唯一数字,在一个单元格中重复约20-40次。)
我查看了this question的答案,但这些答案对我的数据无效。
我是否可以使用函数或公式删除单个单元格中的重复字符串?
如果,
A1 = 10,10,10,10,11,11,12,12,12(实际数字各为13位数,它们是重复的2或3个唯一数字。我只需要捕获每个唯一的数字)
是否有像RemoveDups()这样的简单方法可以删除重复项并保留。 A1 = 10,11,12?或者我需要创建UDF吗?
答案 0 :(得分:3)
Function RemoveDuplicates(v As Variant) As String
Dim aSplit As Variant, aUnique() As Variant, vMatch As Variant, a As Variant
aSplit = Split(v, ",")
ReDim Preserve aUnique(0 To x)
aUnique(0) = Application.WorksheetFunction.Rept("|^|", 20)
For Each a In aSplit
vMatch = Application.Match(Trim(a), aUnique, 0)
If IsError(vMatch) Then
x = x + 1
ReDim Preserve aUnique(0 To x)
aUnique(x) = Trim(a)
End If
Next a
RemoveDuplicates = Join(Filter(aUnique, aUnique(0), False), ",")
End Function