【发布时间】:2018-12-11 06:31:10
【问题描述】:
我正在进行一项研究,如果研究参与者在两周内再次参与,他们将被视为重复,但如果他们在 2 周的冷静期后再次参与,他们不是重复。我需要一种在 2 周内检查/删除重复参与者的方法,但如果他们在 2 周外重复,则保留它们。
数据看起来像这样:
Test Participant ID Date
1 550 01/01/2018
2 550 02/01/2018
3 677 05/01/2018
4 550 15/02/2018
通常我会使用 Range.RemoveDuplicates 来删除重复项。这将删除测试 2 和 4。
Sub removeduplicate()
Range("A1:C5").CurrentRegion.RemoveDuplicates Columns:=Array(2), Header:=xlYes
End Sub
有什么方法可以修改或添加到此,以便我删除第 2 行中的重复项,但 不 删除第 4 行中的重复项(因为它是在 2 周多之后)?我有数千行。
非常感谢
【问题讨论】:
-
您可以添加一个带有公式的列,该公式确定此记录是否应被视为重复记录,可能返回
TRUE/FALSE,然后根据该列使用RemoveDuplicates。如果没有示例数据、预期输出或示例代码,很难为您提供比这更具体的内容。 (请参阅“How to Ask”以及help center,以及重要提示here。) -
谢谢 ashleedawg,我添加了一些示例数据和用于删除一般重复项的代码。
标签: vba excel duplicates date-range