-2
私は800のアドレスの電子メールのような1つの文字列を持っています。それらはセミコロンで区切られています。その文字列の重複を削除するにはどうすればよいですか?VBA - セミコロンで区切られた1つの文字列内で重複して削除される
私は800のアドレスの電子メールのような1つの文字列を持っています。それらはセミコロンで区切られています。その文字列の重複を削除するにはどうすればよいですか?VBA - セミコロンで区切られた1つの文字列内で重複して削除される
あなたの質問を更新して、既に試したことを示してください。あなたの現在のコードはちょっとした調整が必要な可能性が非常に高いです。
以下は、あなたが行っていることを達成するためのより一般的な方法ですが、私が言ったように、現在のコードを修正する簡単な方法があり、コードをコピーして貼り付けることによって、
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
は、[Split関数]に見て(https://msdn.microsoft.com/en-us/library/6x627e5f(V = VS.90).aspxの)と[コレクション](HTTPSを開始するには://msdn.microsoft.com/en-us/library/yb7y698k(v = 90).aspx)または[Dictonaries](https://msdn.microsoft.com/en-us/library/office/gg251825) .aspx)。 Splitメソッドを使用すると、文字列内の各電子メールアドレスを繰り返し処理でき、コレクションと辞書を使用して一意の値のみを受け入れることができます。 – tigeravatar
';'に基づいてtext to colsを実行し、重複削除機能をアンピボットします。これらの機能はすべて簡単に検索できます。 – xQbert
いくつかのコードを試してみると便利です。 –