我写了一个vba代码,允许我比较两个EXCEL工作表并将类似的行粘贴到第三个工作表。这是:
Frames
Sheet1是先前声明的“OWS”, Sheet2是先前声明的“NWS”, Sheet2是先前声明的“CompareWS”
问题是,此代码停止比较单元格级别的单元格;例如,如果两行(每个工作表中有一行)以相同的数据开头,则基于此单元格,即使其余数据不匹配,程序也会将这两行视为相同。
我怀疑“对于Z ......”的条件是没有超出应有的范围,但不知道如何修复它。
旧数据示例: OldData
新数据示例: NewData
根据这些数据,比较数据看起来像: ComparedData
希望这会有所帮助
提前感谢您对此有所了解。
最佳。
答案 0 :(得分:0)
致@Mark Balhoff的信用:我会这样试试
j = 2
For i = 2 To OLast_row
IsEqual = False
For j = 2 To NLast_row
isequal=true
For Z = 1 To OLast_clmn
If OWS.Cells(i, Z).Value <> NWS.Cells(j, Z).Value Then
IsEqual = False
exit for
End If
Next
If IsEqual = True Then
' copy cells
End If
Next
Next