-2
我收到了800个地址电子邮件中的一个字符串。它们用分号隔开。我应该如何删除该字符串中的重复项?VBA - 删除用分号分隔的一个字符串中的重复
我收到了800个地址电子邮件中的一个字符串。它们用分号隔开。我应该如何删除该字符串中的重复项?VBA - 删除用分号分隔的一个字符串中的重复
请更新您的问题以显示您已经尝试过的内容。您目前的代码很可能只需要稍微调整一下。
下面是一个更通用的方式来完成你的事情,但就像我说的,可能有一个更简单的方法来修复你当前的代码,你不会真正通过复制和粘贴代码来学习。
Function RemoveDuplicates(rng as Range) As String
Dim dict As Object
Dim var As Variant, v As Variant
Set dict = CreateObject("Scripting.Dictionary")
var = Split(rng.Value,";")
For each v in var
If Not dict.Exists(v) Then
dict.Add v, v
End If
Next v
RemoveDuplicates = Join(dict.Keys, ";")
End Function
要开始看进[分割功能(https://msdn.microsoft.com/en-us/library/6x627e5f(V = VS.90)的.aspx)和[收藏](HTTPS ://msdn.microsoft.com/en-us/library/yb7y698k(v = vs.90).aspx)或[Dictonaries](https://msdn.microsoft.com/en-us/library/office/gg251825的.aspx)。 Split方法可让您循环访问字符串中的每个电子邮件地址,并且集合和字典都可用于仅接受唯一值。 – tigeravatar
基于';'的文本到cols然后unpivot删除重复函数。所有这些功能都很容易搜索到。 – xQbert
对某些代码的尝试会很有帮助。 –