我需要帮助来编写宏来比较excel,sheet1和sheet2中同一个excel book中的两个工作表,并显示sheet3上两个工作表之间的所有差异。 我的标题在sheet1和sheet2之间总是相同,但两张表中的信息可能会有所不同。 我列出了两张纸上的标题:
身份证号码出生日期工资单号码姓氏薪酬会员组
我正在努力解决这个问题。所以请伸出援助之手 谢谢。
答案 0 :(得分:0)
假设'我'是Sheet1中的行数和' m'是Sheet2中的行数和每个工作表中的7个标题,那么这是在Sheet3中注册不匹配的解决方案
此处将Sheet1中的Id编号与Sheet2中的Id编号进行比较,如果存在,则将它们进行比较,并以与标题相同的顺序在sheet3中报告不匹配
Sub Mismatch()
Dim temp3 As Integer
temp3 = 1
Dim array1(7), array2(7), array3(7) As Variant
For i = 2 To 6
Worksheets("Sheet1").Activate
For temp = 1 To 7
array1(temp) = Cells(i, temp).Value
Next temp
Worksheets("Sheet2").Activate
For m = 2 To 6
If Cells(m, 1).Value = array1(1) Then
For n = 1 To 7
For temp2 = 1 To 7
array2(temp2) = Cells(m, temp2).Value
Next temp2
Worksheets("Sheet3").Activate
temp3 = temp3 + 1
Cells(temp3, 1).Value = array1(1)
For temp4 = 2 To 7
If array1(temp4) <> array2(temp4) Then
Cells(temp3, temp4).Value = "mismatch"
End If
Next temp4
GoTo JumpToHere
Next n
End If
Next m
JumpToHere:
Next i
End Sub
我希望这有帮助