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

相关推荐
智能汽车人3 小时前
行业分析---领跑汽车2025第二季度财报
人工智能·microsoft
czhc11400756636 小时前
LINUX 820 shell:shift,expect
linux·运维·excel
大霞上仙18 小时前
实现自学习系统,输入excel文件,能学习后进行相应回答
python·学习·excel
CodeCraft Studio20 小时前
在 Python 中操作 Excel 文件的高效方案 —— Aspose.Cells for Python
python·ui·excel·报表·aspose·aspose.cells
Techie峰1 天前
常见的 Bash 命令及简单脚本
chrome·bash·excel
小妖同学学AI1 天前
deepseek一键生成word和excel并一键下载
人工智能·word·excel·deepseek
芒果很香1 天前
MFC中使用EXCEL的方法之一
excel·mfc
y1y1z1 天前
EasyExcel篇
java·excel
Leinwin1 天前
微软行业案例:英格兰足球超级联赛(Premier League)
microsoft
CHENFU_JAVA1 天前
EasyExcel 合并单元格最佳实践:基于注解的自动合并与样式控制
java·excel