連想配列  重複しないリスト作成

 

Sub test()

’ 「ツール」→「参照設定」→ 「Microsoft Scripting Runtime」にチックをつける必要
' 連想配列で重複しないリスト作成

    Dim A
    '辞書を作成
    Set A = CreateObject("Scripting.Dictionary")
 
    Dim B
    
    '値を配列に入力
    B = Range("A2:A10")
 
    ' 値をループ
    For i = 1 To UBound(B, 1)

        ' 登録されていない場合
        If A.Exists(B(i, 1)) = False Then
            A.Add B(i, 1), 0     '辞書に登録する
        End If

    Next

    ' セルに値を出力
    Range("C2").Resize(A.Count) = WorksheetFunction.Transpose(A.Keys)
End Sub

 

実行結果

 

 

 

― ― ― ― ― ― ― ― ― ― → Excel VBA基礎入門もくじ へ戻る 

 

 

参考記事