私は同じExcelファイルの2枚を比較する1つのVBAを作成しました。シートAのデータが正確でない場合、その行の色が赤に変わります。また、色が変更された場合にはフィルタを適用しました。VBA - 2つの列を比較するためのExcel
問題は、適切な方法で動作していないことです。私のデータが同じである場合のように、それはまた、フィルタを適用しています。
Sub Validate_Metadata()
Dim myRng As Range
Dim lastCell As Long
Dim flag As Boolean
'Get the last row
Dim lastRow As Integer
lastRow = ActiveSheet.UsedRange.Rows.Count
'Debug.Print "Last Row is " & lastRow
Dim c As Range
Dim d As Range
Application.ScreenUpdating = False
For Each c In Worksheets("Sheet1").Range("A2:A" & lastRow).Cells
For Each d In Worksheets("Sheet2").Range("A2:A" & lastRow).Cells
c.Interior.Color = vbRed
flag = False
If (InStr(1, d, c, 1) > 0) Then
c.Interior.Color = vbWhite
Exit For
End If
Next
Next
If (flag <> True) Then
ActiveSheet.Range("A1:A" & lastRow).AutoFilter Field:=1, Criteria1:=RGB(255, 0 _
, 0), Operator:=xlFilterCellColor
End If
Application.ScreenUpdating = True
End Sub
以下の私のコードを参照してくださいおかげ