VBA 別シートと同じ値に色付け:重複チェック(動画あり)

エクセルマクロ_別シートを比較して重複データに色付け_アイキャッチ ExcelVBA

エクセルマクロで、別シートと同じ値に色付けするVBAコードをご紹介します。

このページのマクロコードは、コピペで使えます。
ぜひお試しください!

別シートと同じ値に色付けする

以下のマクロを実行すると、2シート間に同じ文字があればセルを塗りつぶします。


Sub シートを比較し同じ値があるか確認して色をつける()

Dim Sht1 As Worksheet
Dim Sht2 As Worksheet
Dim myList_1 As Variant
Dim myList_2 As Variant
Dim i As Long
Dim j As Long
    
     Set Sht1 = Sheets("Sheet1")
     Set Sht2 = Sheets("Sheet2")
    
     '各シートのA列のデータを配列に格納
     Sht1.Select
     myList_1 = Sht1.Range(Cells(1, 1), _
        Cells(Cells(Rows.Count, 1).End(xlUp).Row, 1))
    
     Sht2.Select
     myList_2 = Sht2.Range(Cells(1, 1), _
        Cells(Cells(Rows.Count, 1).End(xlUp).Row, 1))
    
     '「Sheet1」 と 「Sheet2」 を比較
     For i = 2 To UBound(myList_1)
         For j = 2 To UBound(myList_2)
         
             '同じ値の場合、「Sheet1」 に色をつける
             If myList_1(i, 1) = myList_2(j, 1) Then
                Sht1.Cells(i, 1).Interior.Color = 65535
             End If
             
         Next j
     Next i
    
     '「Sheet1」 と 「Sheet2」 を比較
     For i = 2 To UBound(myList_2)
         For j = 2 To UBound(myList_1)
         
             '同じ値の場合、「Sheet2」 に色をつける
             If myList_2(i, 1) = myList_1(j, 1) Then
                Sht2.Cells(i, 1).Interior.Color = 65535
             End If
             
         Next j
     Next i
    
     Set Sht1 = Nothing
     Set Sht2 = Nothing

End Sub

 

マクロ実行前

2シートとも、リストは縦に増減する想定です。


 

マクロ実行後

2シートを比較し、同じ値に色をつけました。


 
 
この記事がお役に立ちますと幸いです。
 
・【エクセルマクロ】重複データを自動処理する使用例まとめ
 

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

 

「プログラマーの本気がExcelを覚醒させる 超絶ExcelVBA」
ExcelVBAでワンランクアップできる書籍
具体的で応用が利く技をたくさん掲載