我正在創建一個將比較兩張工作簿兩張張的宏。如果在另一個工作簿中找到重複的行,我需要將該行突出顯示。到目前爲止,我一直在搜索,我發現了代碼,但我不確定如果在另一個工作簿的另一張表中發現重複的單元格/整行,我不知道該如何突出顯示。這裏是我下面的代碼:突出顯示兩張工作簿兩張之間的重複項
Sub CompareWorkbooks()
Dim varSheetA As Variant
Dim varSheetB As Variant
Dim strRangeToCheck As String
Dim iRow As Long
Dim iCol As Long
strRangeToCheck = "B2:D49"
Set wbkA = ActiveWorkbook
Set varSheetA = wbkA.Worksheets("SAP").Range(strRangeToCheck)
Set wbkB = Workbooks.Open(FileName:="C:\Request Distribution\Reminder 20170302.xls")
Set varSheetB = wbkB.Worksheets("SAP").Range(strRangeToCheck)
For iRow = LBound(varSheetA, 1) To UBound(varSheetA, 1)
For iCol = LBound(varSheetA, 2) To UBound(varSheetA, 2)
If varSheetA(iRow, iCol) = varSheetB(iRow, iCol) Then
'What to put to hightlight the cell/entire row
Else
'Some msgbox to display that there are no duplicates between sheets of 2 workbooks
End If
Next
Next
End Sub
在使用Office 2013或以上的情況下,你可以使用內置比較器的預期效果,https://technet.microsoft.com/en-us/library /dn205148.aspx,重要信息: 必須先安裝.NET Framework 4.0,然後才能使用電子表格比較。 – Anil
是varSheetA(iRow,iCol).Interior.Color = RGB(127,187,199)不工作? – Anil
感謝您的建議。我需要使用vba,因爲我將它放在一個按鈕中,以便用戶點擊一下即可。 – Sevpoint