我有一个文件(两张),我想在之间进行比较。我已经清理了列,因此两个列都有我们在A列中的唯一引用号,B列中的供应商费用和C列中的收入。我正在尝试对各种类型的内部审计进行内部审计。
一张包含两年的数据,而另一张包含一年的数据。这不是一个确定的日期,所以我不想删除任何日期。
如何匹配A列中的唯一标识符并突出显示B列或C列中的信息是否有差异?
答案 0 :(得分:0)
这是在VBA中执行此操作的代码
我认为Sheet1
和Sheet2
都是:
ColumnA
是“专业”,ColumnB
总费率和ColumnC
“运营商Exp”
所有标头都在Row1
,数据从row2
以下是代码:
Sub test()
Dim wb As Workbook
Dim ws1 As Worksheet, ws2 As Worksheet
Dim Lastrow As Long, Lastrow2 As Long
Dim i As Integer, j As Integer
Set wb = ThisWorkbook
Set ws1 = wb.Sheets("Sheet1")
Set ws2 = wb.Sheets("Sheet2")
Lastrow = ws1.Range("A" & Rows.Count).End(xlUp).Row
Lastrow2 = ws2.Range("A" & Rows.Count).End(xlUp).Row
For i = 2 To Lastrow
For j = 2 To Lastrow2
If ws1.Range("A" & i).Value = ws2.Range("A" & j).Value Then
If Not ws1.Range("B" & i).Value = ws2.Range("B" & j).Value Then
ws1.Range("B" & i).Interior.Color = vbYellow
ws2.Range("B" & j).Interior.Color = vbYellow
End If
If Not ws1.Range("C" & i).Value = ws2.Range("C" & j).Value Then
ws1.Range("C" & i).Interior.Color = vbYellow
ws2.Range("C" & j).Interior.Color = vbYellow
End If
End If
Next j
Next i
End Sub