【エクセルマクロ】別シートと同じ値に色付け:重複チェック

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

エクセルマクロで、別シートと同じ値に色付けする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シートを比較し、同じ値に色をつけました。


 
この記事がお役に立ちますと幸いです。
 

【エクセルマクロ】2つのシートを比較して違う箇所に色付けする
...