Microsoft VBA Excel 单元格 重复元素 去重

问题场景

简述:

单元格显示:N/A,A54,N/A,B12,R6,A55,去掉重复的元素。

参考:excel表格同一单元格里剔除重复词怎么做?


代码描述

第一步:

第二步:

在较旧的 Excel 版本中,没有直接的函数可以用来去除字符串中的重复元素。一种解决办法是使用 VBA 来创建一个自定义函数,该函数可以接受一个字符串并返回一个去除了重复项的字符串。

vb 复制代码
Function UniqueList(inputStr As String, delimiter As String) As String
    Dim dictionary As Object
    Set dictionary = CreateObject("Scripting.Dictionary")
    Dim part As Variant
    Dim parts() As String
    
    parts = Split(inputStr, delimiter)
    
    For Each part In parts
        If Trim(part) <> "" And Not dictionary.Exists(Trim(part)) Then
            dictionary.Add Trim(part), Trim(part)
        End If
    Next part
    
    UniqueList = Join(dictionary.Items, delimiter)
End Function

例如,如果想要处理单元格 A1 中的字符串 N/A,A54,N/A,B12,R6,A55,可以在另一个单元格中使用以下公式:

excel 复制代码
=UniqueList(A1, ",")

这将返回 N/A,A54,B12,R6,A55。

相关推荐
ailitsoft11 小时前
库存管理系统如何记录跨门店调拨后的收货差异?
excel·零售·软件需求
解决问题no解决代码问题2 天前
日志脱敏双链路统一优化:从两套枚举到单一规则源,兼顾安全与可维护性
microsoft
百事牛科技2 天前
Excel的三种密码:防看、防存、防乱改,各管各的
windows·excel
Dovis(誓平步青云)2 天前
启元 T1 Pro 人机相声搭档:语音-触摸双通道的启元机器人节奏引擎设计
开发语言·前端·javascript·microsoft·交互
用户298698530142 天前
React 前端将 Excel 工作表导出为图片的技术实践
javascript·react.js·excel
宝桥南山2 天前
.NET 11 - 尝试一下Blazor中的新特性SupplyParameterFromTempData
microsoft·微软·c#·asp.net·.net·.netcore
Liangwei Lin3 天前
Exchange Server 2019 部署手册
microsoft
用户0332126663673 天前
使用 Python 在 Excel 文档中添加水印
python·excel
ms365copilot3 天前
Microsoft 365 Copilot跨工作资料整理
microsoft·copilot
中二骚年4 天前
Windows 安全中心 / 防火墙故障,calc和Microsoft Store,终端(管理员)无法正常打开。 原因 + 修复方案
windows·安全·microsoft