macros将数据从一张纸复制到另一张纸上,只有在不存在的情况下

我正在努力与这个macros。 我有两张床单; 一个包含一个由macros在多个date中更新的大量数据。

我想将表单中的数据(“rawdata1”)复制到另一个工作表(“工作表1”),但前提是数据不存在(不要在“工作表1”上input相同的数据)。 我没有问题将数据复制到另一张表,但是如何避免重复的条目多次运行macros?

我到目前为止的代码是:

Sub CopyData() 'Copy data if not present in other sheet '??? Sheets("rawdata1").Select Range("A4:AC10000").Select Range("A4:AC10000").Copy Sheets("Sheet1").Select ' Find the last row of data FinalRow = Cells(Rows.Count, 1).End(xlUp).Row ActiveSheet.Paste Sheets("Sheet1").Select 

谢谢您的帮助!

您的代码可以简化为:

 Sheets("rawdata1").Range("A4:AC10000").Copy _ Sheets("Sheet1").Cells(Rows.Count, 1).End(xlUp).Offset(1,0) Sheets("Sheet1").Select 

至于防止同一行的多个副本,如果您在Excel 2007+中,则可以在运行副本后使用RemoveDuplicates:这将只将范围缩小到唯一行。 注意:您需要调整Columns参数以包含所有相关的列号。

 ActiveSheet.UsedRange("$A$1:$E$8").RemoveDuplicates _ Columns:=Array(1, 2, 3, 4, 5), Header:=xlYes 'or xlNo, depending on your data