エクセルマクロで、複数セルの重複しないリストを作成するVBAコードをご紹介します。
このページのマクロコードは、コピペで使えます。
複数セルの重複しないリストを作成する
以下のマクロを実行すると、複数セルの重複しないリストを作成します。
Sub 重複しないリストを作成()
Dim DicShohin As Variant
Dim LastRow As Long
Dim i As Long
Dim Shohin_Cnt As Long
Dim GetCode As String
Dim GetName As String
Shohin_Cnt = 1
'連想配列
Set DicShohin = CreateObject("Scripting.Dictionary")
'A列の最終行を取得
LastRow = Cells(Rows.Count, 1).End(xlUp).Row
'2行~最終行まで、重複しない 「商品コード」 と 「商品名」 のリストを取得
For i = 2 To LastRow
'A列の値を変数へ
GetCode = Cells(i, 1)
'B列の値を変数へ
GetName = Cells(i, 2)
'重複しないリストを連想配列へ
If Not DicShohin.Exists(GetCode & "_" & GetName) Then
DicShohin.Add GetCode & "_" & GetName, GetCode & "_" & GetName & ","
'重複していない値をF列、G列に転記
Cells(Shohin_Cnt + 1, 6) = Cells(i, 1)
Cells(Shohin_Cnt + 1, 7) = Cells(i, 2)
Shohin_Cnt = Shohin_Cnt + 1
End If
Next i
Set DicShohin = Nothing
End Sub
連想配列の中身
「商品コード」と「商品名」の間にアンダーバー「 _ 」を入れているのは、
ウォッチウィンドウで確認するときに値が見やすいかなと思ったためです。
この記事がお役に立ちますと幸いです。

【エクセルマクロ】重複データを自動操作:超便利9選
...