删除 VBA 中的重复项
Iqra Hasnain
2023年1月30日
2022年7月12日
我们将通过示例介绍如何在 VBA 中删除重复项。
删除 VBA 中的重复项
在使用包含大量数据的 Excel 工作表时,这些数据可能包含一些重复项。必须删除任何重复项以避免任何错误计算。为此,我们首先必须清理数据并删除重复项。VBA 提供了一个简单的函数,RemoveDuplicates
,可用于此目的。
我们需要首先选择数据所在的范围,然后我们将在该范围上使用 RemoveDuplicates
函数。我们还需要定义必须检查多少列的重复项。如果我们在范围内有标题,我们还必须将标题标记为是。让我们通过一个示例并使用此功能。首先,我们将创建演示数据,如下所示。
让我们使用 RemoveDuplicates
函数来删除重复项。
示例代码:
# VBA
Sub duplicateRemover()
Range("A1:B*").RemoveDuplicates Columns:=1
End Sub
输出:
RemoveDuplicates
方法用于范围。如果发现重复,我们可以删除任何行,但保留原始行的所有值。
RemoveDuplicates
方法仅适用于列,不适用于行。
在 VBA 中删除重复的多列
在删除重复项时,仅从一列中获取数据来删除重复项可能很危险。在一列中重复的数据在下一列中可能有不同的内容,使其成为唯一项而不是重复项。
我们可以通过数组传递多列来轻松比较 RemoveDuplicates
方法中的多列,如下所示。
示例代码:
# Vba
Sub duplicateRemover()
ActiveSheet.UsedRange.RemoveDuplicates Columns:=Array(1, 2)
End Sub
输出:
当我们比较两列时,它只删除了基于两列重复的列,而不仅仅是一个。不需要总是按顺序提供列,我们可以按任意顺序发送我们想要比较的列,甚至可以使用第 1 列和第 5 列。