【发布时间】:2017-02-09 07:14:32
【问题描述】:
我正在尝试编写一个代码,让我可以查看两个非常相似的列,并清除第二列中重复的单元格(如果它已经存在于第一列中)。我有一个可以工作的代码,但它正在删除一些重复项并将它们向上移动,但我希望它们保留在原来的单元格中。我基本上希望它说“如果单元格存在于第 1 列和第 2 列中,则清除第 2 列中的单元格”。我不确定这是否可能。这是我一直在使用的代码。任何帮助将不胜感激!
Sub CopyPasteHistorical()
CopyPasteHistorical Macro
Sheets("Sheet1").Select
Columns("I:I").Select
Selection.copy
Sheets("Sheet2").Select
Columns("D:D").Select
ActiveSheet.Paste
'remove duplicates
Columns("C:D").Select
Dim duplicates As Range
Set duplicates = Selection
Selection.RemoveDuplicates Columns:=Array(1, 2), Header:=xlYes
End Sub
【问题讨论】:
-
如果您希望它们保持原样,您需要循环并使用 Find 或 MATCH 来查看是否存在匹配项,如果找到匹配项则清除内容。
-
你知道这样的示例代码是什么样子的吗?我还是 VBA 的新手,所以我不确定如何执行它。谢谢!!
标签: excel vba macros copy duplicates