重複項目の重複を除去する
ExcelのVBAで重複項目の削除
VBAで選択範囲の重複した項目を、除去したリストを作りたい場合普通にforで回してもできるが、dictionaryオブジェクトを使えば高速にできます。
下記がソースコードです。
Set dictionary = CreateObject("Scripting.Dictionary")
For Each key In keys
If Not dictionary.Exists(key) Then
dictionary .Add key, ""
End If
Next
keysが重複を省きたい配列等で、
dictionary.Exists(key) で重複がある場合trueを返すので
重複していない場合
dictionary .Add key, ""で
dictionary オブジェクトにキーを追加する。
第2引数にキーに紐付く値を設定することもできます。
これで、重複が省かれたリストがdictionary に入っているので、
あとは、forで回せばOK
以上