KutoolsforOffice — 一套方案,五大工具。事半功倍。

如何在 Excel 中统计区域内不重复的唯一值个数?

作者Siluvia修改日期

在 Excel 中处理数据列表(尤其是涉及姓名、ID 或其他重复条目)时,您可能需要统计仅出现一次的值的数量——即找出真正唯一的值,并完全排除所有重复项。例如,假设有一个姓名列表,其中某些姓名多次出现;若要计算仅出现一次的姓名数量(即剔除所有重复出现的姓名),Excel 提供了多种实现方式。本文全面介绍了利用公式、VBA、数据透视表及内置功能达成该目标的多种方法,并分析了每种方法的优势与潜在局限,助您根据具体场景选择最合适的解决方案。

使用公式统计区域中唯一值的个数(排除重复项)
使用强大工具轻松统计区域中唯一值的个数(排除重复项)
使用 VBA 代码统计区域中唯一值的个数(排除重复项)
使用数据透视表统计区域中唯一值的个数(排除重复项)


使用公式统计区域中唯一值的个数(排除重复项)

假设您有一个如下图所示的数据区域,并希望仅统计在整个列表中出现一次的姓名。使用 Excel 公式即可轻松完成此任务,无需任何额外工具或加载项。当您处理中等规模的数据范围且偏好纯 Excel 解决方案时,这种方法尤为理想。

显示原始值及唯一值总数的截图

1. 单击选择一个空白单元格以显示结果。为确保最佳实践,请选择数据集外部的单元格,避免覆盖原有数据。

2. 输入以下公式,然后按 Enter,即可显示仅出现一次的唯一值数量(排除所有重复值):

=SUM(IF(FREQUENCY(MATCH(B3:B14,B3:B14,0),ROW(B3:B14)-ROW(B3)+1)=1,1))

使用公式计算不重复唯一值数量的截图

注意事项:
1)在上述公式中,B3:B14 为待分析数据所在的区域。请根据实际数据调整区域引用,该区域可按需扩展至任意行数。
2)在旧版 Excel 中使用数组公式时,输入公式后需按 Ctrl + Shift + Enter,而非仅按 Enter;而在 Excel 365 及 Excel 2019 或更高版本中,直接按 Enter 即可。
3)请特别留意区域中的空单元格,因其可能影响计算结果。建议先清理数据集,或仅在非空数据列表上使用公式,以确保结果准确。
4)若您的数据区域较大,公式计算速度可能变慢——此时建议考虑以下其他解决方案。

场景及优缺点:

  • 适用于标准及中小型区域,效果出色。
  • 无需加载项,直接使用 Excel 原生函数。
  • 可能需要以数组公式方式输入;在处理超大数据集时,性能可能会变慢。

 


使用强大工具轻松统计区域中唯一值的个数(排除重复项)

Kutools for Excel统计区域中唯一值的个数工具提供直观功能,让您无需复杂公式或耗时的手动操作,即可快速统计列表中仅出现一次的值。此方法非常适合追求灵活性与简便性的用户,轻松应对大型数据集!

1. 选择一个空白单元格以显示结果,确保不会覆盖现有数据。然后转到 Kutools > 公式助手 > 公式助手

启用公式助手的截图

2. 在公式助手对话框中,执行以下操作:

  • 选择一个公式列表中,定位并选择统计区域中唯一值的个数。提示:
    使用筛选器框,输入与“唯一”相关的关键词即可快速搜索。
  • 指定包含待分析数据的区域
  • 单击确定,即可插入函数并显示列表中仅出现一次的值的数量。

为“计算唯一值”公式选择区域的截图

此方法可立即计算唯一值数量,助您省去手动计数或排查公式的麻烦。结果将准确反映所选内容中仅出现一次的项目数量:

显示结果的截图

提示与注意事项:

  • 使用 Kutools,无需输入复杂公式,更无需担心出错。
  • 此工具支持连续与非连续区域。
  • 如果您经常进行此类数据分析,使用 Kutools 能显著节省时间并减少出错几率。
场景及优缺点:
  • 最适合追求快速、精准解决方案的用户。
  • 处理大型区域比使用公式更高效。
  • 使用前,请先安装并激活 Kutools。

 


使用 VBA 代码统计区域中唯一值的个数(排除重复项)

对于需要自动化此任务,或需在多个工作表或工作簿中反复统计区域内仅出现一次的唯一值数量的情况,使用 VBA(Visual Basic for Applications)是一种高效实用的解决方案。该方案可精准统计指定范围内仅出现一次的项目数量,并自动忽略所有重复项。

适用场景:

  • 适用于大型或多个数据集的自动化处理
  • 可集成到 Excel 宏或批处理流程中
  • 适合熟悉基本 VBA 操作的用户
优缺点:
  • 高度灵活,可重复用于未来的数据分析
  • 可自定义以增强报表功能
  • 需要具备基本的 VBA 知识;代码必须手动添加

 

操作步骤:

1. 打开 VBA 编辑器:单击开发工具选项卡中的 Visual Basic。在新打开的 Microsoft Visual Basic for Applications 窗口中,单击插入菜单下的模块

2. 将以下代码粘贴到模块窗口中:

Sub CountUniqueOnlyOnce()
    Dim WorkRng As Range
    Dim cell As Range
    Dim dict As Object
    Dim singleCount As Long
    Dim Key As Variant
    
    On Error Resume Next
    xTitleId = "KutoolsforExcel"
    
    Set WorkRng = Application.Selection
    Set WorkRng = Application.InputBox("Select range to count unique and non-duplicate values:", xTitleId, WorkRng.Address, Type:=8)
    
    If WorkRng Is Nothing Then Exit Sub
    
    Set dict = CreateObject("Scripting.Dictionary")
    
    For Each cell In WorkRng
        If Not IsEmpty(cell.Value) Then
            dict(cell.Value) = dict(cell.Value) + 1
        End If
    Next cell
    
    singleCount = 0
    
    For Each Key In dict.Keys
        If dict(Key) = 1 Then
            singleCount = singleCount + 1
        End If
    Next Key
    
    MsgBox "Count of unique values that appear only once: " & singleCount, vbInformation, "Result"
End Sub

3. 单击运行按钮按钮或按 F5 运行代码,系统将弹出对话框提示您选择数据区域。确认所选区域后,消息框会立即显示仅出现一次的唯一项目数量。

注意事项与故障排除:

  • 运行宏前,请务必先保存工作簿。
  • 此代码默认会忽略空单元格。
  • 如果您的 Excel 安全设置阻止了宏的运行,请前往 Excel 选项中的信任中心进行调整。
  • 如遇错误,请确保您选择的是有效的单列或单行区域。

 


统计区域中唯一值的个数通过数据透视表排除重复项

数据透视表为您提供了一种灵活且交互式的方式来汇总 Excel 中的数据,轻松统计指定区域内仅出现一次的不同项目数量。当您已将数据透视表用于其他分析,或希望采用无需公式的菜单驱动方式时,这一方案尤为理想。它特别适合处理大型数据集,或需要动态、可筛选报告的用户。

优势:

  • 只需刷新数据透视表即可轻松更新
  • 可视化界面,内置筛选和排序功能
  • 无需任何公式

 

操作步骤:

  • 请选择完整的数据范围(包括包含您要检查的值的列)。
  • 转到插入> 数据透视表。在弹出窗口中,选择将数据透视表放置在新工作表还是现有工作表中。
  • 数据透视表字段窗格中,将列标题(例如“姓名”)拖入区域,再将其拖入区域。在值区域中,请确保其设置为计数(若不是,请单击并将其计算类型从求和或其他更改为计数)。
  • 数据透视表会显示每个项目及其出现次数。若要仅查看出现一次的项目,请在计数列的筛选下拉菜单中选择数字筛选 > 等于 > 1,即可快速筛选出仅出现一次的值。
  • 统计剩余可见项的数量,即不重复的唯一值个数。

注意事项与故障排除:

  • 空白或空单元格会在数据透视表中单独列出,建议您将其筛选掉。
  • 在更改或更新底层数据后,请刷新您的数据透视表。
  • 数据透视表适用于大型数据集,但除非手动刷新,否则不会实时更新。
  • 如需自动计算筛选后的数据计数,请在数据透视表输出中使用 SUBTOTALCOUNTA 函数。
场景及优缺点:
  • 非常适合用于汇总报表、大型数据分析,或当您希望实时查看仅出现一次的项目列表时使用。
  • 只需几步操作,无需使用公式。

 

如果您想免费试用(30 天)此工具,请点击此处下载,然后按照上述步骤操作即可。


演示:在 Excel 的列中统计区域中唯一值的个数

 

 

 

  Kutools for Excel 包含 300 多个适用于 Microsoft Excel 的强大功能,30 天内可免费无限制试用!立即下载


相关文章:


最佳办公效率工具

🤖KUTOOLS AI 助手:基于以下内容革新数据分析:智能执行   |  生成代码|  创建自定义公式  |  数据分析及生成图表|  调用 Kutools Functions……
热门功能查找、高亮或标记重复项   |  删除空白行   |  合并列或单元格且不丢失数据   |  不使用公式的四舍五入……
高级 LOOKUP多条件 VLookup  |  多值 VLookup  |   跨多工作表 VLookup   |   模糊查找……
高级下拉列表快速创建下拉列表   |  级联下拉列表   |  多选下拉列表……
列管理器添加指定数量的列|移动列|切换隐藏列的可见性状态|比较区域与列……
特色功能网格聚焦   |  设计视图   |增强编辑栏   | 工作簿和表管理器   |  资源库(自动文本)|  日期提取   |  汇总工作表  |  加密/解密单元格   | 按列表发送邮件   |  超级筛选   |   特殊筛选(筛选粗体单元格/斜体/删除线……) ......
精选 15 工具集12 文本工具添加文本删除特定字符,……)|   50+ 图表 类型甘特图,……)|   40+ 实用公式基于生日计算年龄,……)|   19 插入工具插入二维码从路径插入图片,……)|   12 转换工具小写金额转大写汇率转换,……)|   7 合并和拆分工具高级合并行分割单元格,……)|……更多
在您的首选语言中使用 Kutools – 支持英语、西班牙语、德语、法语、中文及 40+ 种其他语言!

使用 Kutools for Excel 大幅提升您的 Excel 技能,体验前所未有的高效。Kutools for Excel 提供 300 多项高级功能,助您提升生产力、节省时间。立即点击此处,获取您最需要的功能……


Office Tab 为 Office 带来标签式界面,让您的工作更轻松

  • 在 Word、Excel、PowerPoint、Publisher、Access、Visio 和 Project 中启用标签式编辑和阅读
  • 在同一个窗口的新标签页中打开并创建多个文档,而非在新窗口中。
  • 将您的工作效率提升 50%,每天减少数百次鼠标点击!

所有 Kutools 插件,一个安装程序

Kutools for Office 套件捆绑了适用于 Excel、Word、Outlook 和 PowerPoint 的插件以及 Office Tab Pro,非常适合需要跨多个 Office 应用高效协作的团队。

ExcelWordOutlookTabsPowerPoint
  • 一体化套件— Excel、Word、Outlook 和 PowerPoint 插件 + Office Tab Pro
  • 一个安装程序,一个许可证— 几分钟内完成设置(支持 MSI)
  • 协同效果更佳— 在多个 Office 应用中实现高效协同
  • 30 天全功能试用— 无需注册,无需信用卡
  • 超值之选— 比单独购买插件更省钱