Here is a long solution. It identifies extra rows in sheet1 or in sheet2, and also highlights any cells that have different contents. Is assumes that ResID is in column C and that it is a unique identifier for each row. It sorts the two sheets by ResID to facilitate comparison.
Option Explicit
Sub do_Compare()
' lets assume that the columns have the same names and are in the same sequence.
' if not, rearrange them to make them so.
' some vars
Dim f1Sheet As String, f1maxRows As Long, f1nRow As Long, f1Key As Long
Dim f2Sheet As String, f2maxRows As Long, f2nRow As Long, f2Key As Long
f1Sheet = "Sheet1"
f2Sheet = "Sheet2"
f1nRow = 2
f2nRow = 2
f1maxRows = Sheets(f1Sheet).Cells(Rows.Count, "A").End(xlUp).Row
f2maxRows = Sheets(f2Sheet).Cells(Rows.Count, "A").End(xlUp).Row
'''Cells(Rows.Count, 1).End(xlUp).Row
' SORT each sheet
do_SortTheSheet f1Sheet, f1maxRows
do_SortTheSheet f2Sheet, f2maxRows
' match/merge compare the keys
Dim lowKey As Long, maxCol As Long, nCol As Long
Sheets(f1Sheet).Select
maxCol = Range("A1").End(xlToRight).Column
Do While f1nRow <= f1maxRows And f2nRow <= f2maxRows
' get new keys
If f1nRow <= f1maxRows Then
f1Key = Sheets(f1Sheet).Cells(f1nRow, "C")
Else
f1Key = 999999999#
End If
If f2nRow <= f2maxRows Then
f2Key = Sheets(f2Sheet).Cells(f2nRow, "C")
Else
f2Key = 999999999#
End If
' find low key
If f1Key = f2Key Then
' compare columns
For nCol = 1 To maxCol
If Sheets(f1Sheet).Cells(f1nRow, nCol) <> Sheets(f2Sheet).Cells(f2nRow, nCol) Then
Sheets(f1Sheet).Cells(f1nRow, nCol).Interior.ColorIndex = 22
Sheets(f2Sheet).Cells(f2nRow, nCol).Interior.ColorIndex = 22
Else ' remove any prior color
Sheets(f1Sheet).Cells(f1nRow, nCol).Interior.ColorIndex = 0
Sheets(f2Sheet).Cells(f2nRow, nCol).Interior.ColorIndex = 0
End If
Next nCol
' bump to next row
f1nRow = f1nRow + 1
f2nRow = f2nRow + 1
ElseIf f1Key < f2Key Then
' f1 has extra row -- highlight entire row
For nCol = 1 To maxCol
Sheets(f1Sheet).Cells(f1nRow, nCol).Interior.ColorIndex = 22
Next nCol
f1nRow = f1nRow + 1
Else ''If f1Key > f2Key Then
' f2 has extra row -- highlight entire row
For nCol = 1 To maxCol
Sheets(f2Sheet).Cells(f2nRow, nCol).Interior.ColorIndex = 22
Next nCol
f2nRow = f2nRow + 1
End If
Loop ' on the do While
End Sub
Sub do_SortTheSheet(SheetName As String, maxRows As Long)
' some vars and initialization
Dim key1 As String, key2 As String, rangeAll As String, maxCol As String
Sheets(SheetName).Select
Cells.Select
maxCol = Split(Columns(Range("A1").End(xlToRight).Column).Address(, False), ":")(1)
' (Range needs to be adjusted to fit the data) <<<<<<<<<<<<<<<
key1 = "C2:C" & maxRows
key2 = "B2:B" & maxRows
rangeAll = "A1:" & maxCol & maxRows
' setup and do the sort
ActiveWorkbook.Worksheets(SheetName).Sort.SortFields.Clear
ActiveWorkbook.Worksheets(SheetName).Sort.SortFields.Add Key:=Range(key1) _
, SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
ActiveWorkbook.Worksheets(SheetName).Sort.SortFields.Add Key:=Range(key2) _
, SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets(SheetName).Sort
.SetRange Range(rangeAll)
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End Sub