Excel

エクセルVBAでCountIf関数を使って入力内容が重複したセルを赤塗りにする方法

エクセルVBAでCountIf関数を使ってエクセル表内の入力内容が重複したセルを赤塗りにする方法をご紹介します。

エクセル表内の入力内容が重複したセルを赤塗りにするエクセルイメージ

エクセルの表内(A1~E2)で重複した文字を入力した場合以下の様に赤塗りにします。
エクセル表内の入力内容が重複したセルを赤塗りにするエクセルイメージ

エクセルVBAでCountIf関数を使ってエクセル表内の入力内容が重複したセルを赤塗りにするVBAの記述

※Worksheet_Change()エクセルシート内で変更があった場合、以下の処理が実行されます。
 CountIfを使ってA1~E2範囲内(A1:E2)で同じ文字があった場合、そのセルを赤塗りにしそれ以外はセル塗りを無しにします。

Private Sub Worksheet_Change(ByVal Target As Range)

    Dim h As Long
    Dim i As Long
    
    For h = 0 To 1
        For i = 1 To 5
            If WorksheetFunction.CountIf(Range("A1:E2"), Cells(1 + h, i)) > 1 Then
                Cells(1 + h, i).Interior.ColorIndex = 3
            Else
                Cells(1 + h, i).Interior.ColorIndex = 0
            End If
        Next i
    Next h
    
End Sub

エクセルVBAでCountIf関数を使って入力内容が重複したセルを赤塗りにする参考ファイル:yo1tec/VBA-CountIf

以下より参考ファイルがダウンロード出来ます。
yo1tec/VBA-CountIf

 
※流用される場合は自己責任でお願いします。