首页 > 解决方案 > 如何从逗号分隔值字符串中删除特定值?

问题描述

我有两列。具有单个值的 A 列和具有逗号分隔值的字符串的 B 列。

我想在 B 列中的值字符串中找到 A 列中的值并将其删除。剩余的值用逗号分隔。

例如:

在此处输入图像描述

我一直在玩的 SUBSTITUTE 公式是=SUBSTITUTE(B2,A2," ")

我遇到的一个问题是某些值中包含我希望保留的“/”字符。

例子:

A栏

FC0201F1I

B栏

FC0201F1I,FC0201F1I/FC0201F2I,FC0201F2I

SUBSTITUTE 输出破坏了值:

, /FC0201F2I,FC0201F2I

我正在寻找的输出:

FC0201F1I/FC0201F2I,FC0201F2I

任何帮助我解开这个谜团的 Excel 公式组合或 VBA 代码将不胜感激。我觉得解决方案是如此简单,并且盯着我的脸,但我看不到它。

谢谢你的帮助!

标签: excelvbastringexcel-formulasubstitution

解决方案


在 SUBSTITUTE 内的两个字符串的开头和结尾添加逗号,然后使用空格和修剪来删除,它们是否被添加到前面或后面并且没有被替换:

=SUBSTITUTE(TRIM(SUBSTITUTE(SUBSTITUTE(","&B2&",",","&A2&",",""),","," "))," ",",")

在此处输入图像描述


推荐阅读