如何在Excel中删除列中的唯一值?


Excel是一个强大的工具,广泛用于数据管理和分析。在处理大型数据集时,经常会遇到需要从列中删除唯一值的场景。无论您是想筛选出一次性出现的值、识别并消除异常值,还是为了特定目的简化数据,删除唯一值都是一项方便的技术。在本教程中,我们将引导您完成在Excel中从列中删除唯一值的流程。我们将介绍根据您的要求和使用的Excel版本而可用的不同方法。您将学习如何识别唯一值、选择和删除它们,并探索一些处理唯一数据的进阶技术。

在本教程结束时,您将清楚地了解如何在Excel中有效地从列中删除唯一值,使您能够更有效地操作数据并实现预期的结果。因此,让我们开始学习您可以用来从Excel列中删除唯一值的各种方法吧!

从列中删除唯一值

让我们来看一个简单的流程,了解如何在Excel中删除列中的唯一值。

步骤1

考虑一个Excel表格,其中包含带有重复值和唯一值的姓名列表,类似于下面的图片。

首先,右键单击工作表名称,然后选择“查看代码”以打开VBA应用程序,然后单击“插入”并选择“模块”,并将下面的代码复制到文本框中,类似于下面的图片。

右键单击 > 查看代码 > 插入 > 模块 > 复制。

代码

Sub DeleteUnique()
Dim Rng As Range
Dim WorkRng As Range
Dim Arr As Variant
Dim Dic As Variant
On Error Resume Next
xTitleId = "Range of cells"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Set WorkRng = WorkRng.Columns(1)
Set Dic = CreateObject("Scripting.Dictionary")
Arr = WorkRng.Value
For i = 1 To UBound(Arr, 1)
   xValue = Arr(i, 1)
   Dic(xValue) = Dic(xValue) + 1
Next
WorkRng.ClearContents
Arr = WorkRng.Value
xIndex = 1
For Each xKey In Dic.keys
   xValue = Dic(xKey)
   If xValue > 1 Then
      For i = 1 To xValue
         Arr(xIndex, 1) = xKey
            xIndex = xIndex + 1
         Next
      End If
Next
WorkRng.Value = Arr
End Sub

步骤2

然后将工作表另存为宏启用模板,单击F5运行模块,选择单元格范围,然后单击“确定”以完成任务。

保存 > F5 > 选择单元格 > 确定。

结论

在本教程中,我们使用了一个简单的示例来演示如何从Excel列中删除唯一值以突出显示特定数据集。

更新于:2023年7月7日

661 次浏览

开启您的职业生涯

完成课程获得认证

开始学习
广告