vba - 删除vba中某个时间范围内的重复项(例如一周内的重复项)
问题描述
我正在进行一项研究,如果研究参与者在两周内再次参与,他们将被视为重复,但如果他们在 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 多周后)?我有数千行。
太感谢了
解决方案
试试这个来删除重复项
Sub Duplicates()
Dim i As Long
i = ActiveSheet.UsedRange.Rows.Count
x = Cells(2, 2).Value
For j = 3 To i
If Cells(j, 2).Value = "" Then
Cells(j, 2).Value = x
Else
x = Cells(j, 2).Value
End If
Next j
End Sub
推荐阅读
- maven - 无需从存储库获取依赖项即可自动部署 EAR 项目
- css - Flexbox - 行内相同高度的列
- local-variables - Exasol 中的变量声明
- python - 在 Pandas 中为行中的空单元格附加单元格值
- ansible - Ansible:在条件“何时”检查中使用变量的正确方法
- java - 当缓冲区长度大于 1 时,下载的文件已损坏
- api - 在 Katalon Studio 中进行 PUT 和 GET 响应
- r - 两个图相同的 x 轴,两个 y 轴 - 如何在网格中排列图
- python - 我想使用 pyinstaller 将 .py 文件转换为 exe 文件
- angular - Angular 结构指令重复组件