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

相关推荐
企鹅侠客21 小时前
用AI写了一个Excel 批量插图工具
excel·excel批量插图
许泽宇的技术分享21 小时前
当 AI 工作流需要“人类智慧“:深度解析 Microsoft Agent Framework 的人工接入机制
人工智能·microsoft
m5655bj1 天前
Python 查找并高亮显示指定 Excel 数据
开发语言·python·excel
缺点内向1 天前
Java:高效删除Excel中的空白行和列
java·开发语言·excel
CodeCraft Studio1 天前
Excel处理控件Aspose.Cells教程:如何使用C#在Excel中添加、编辑和更新切片器
ui·c#·excel·aspose·excel切片器·创建表格切片器
vortex51 天前
ASP vs ASP.NET vs ASP.NET Core:三代微软 Web 技术核心区别解析
前端·microsoft·asp.net
Highcharts.js1 天前
入门指南|从文件到图表:Highcharts对接数据库(CSV、Excel)实现数据同步绘制图表
数据库·excel·数据同步·highcharts·数据对接·文件导入
gCode Teacher 格码致知2 天前
Excel教学基础-Count函数的使用方法-由Deepseek产生
excel·count函数
小马爱打代码2 天前
Spring Boot 3 :实现分布式追踪
spring boot·分布式·microsoft
長安只在旧夢中2 天前
如何在Excel实现类似SQL的Where查找功能
excel·excel技巧·excel实现where