我希望删除一个单元格中的重复项,其中数据是从两个单元格中组合的。例如:
单元1: ABC和DEF
第2单元: ABC、DEF和LMN
我希望将两个单元格1和2数据组合起来,这将同时删除重复的数据,并且看起来是:单元格3中的ABC、DEF和LMN。
如果有人能帮我做这件事我很感激。提前谢谢你。
*更正-对不起,如果我没有很好地输入细节。数据实际上是名称,例如:
单元1: John Mayer & Britney Spears第2单元: John Mayer,Britney Spears和Selena Gomez
我想在第三单元中得到的结果:约翰·梅尔、布兰妮·斯皮尔斯和塞琳娜·戈麦斯
意思是在单词之间有空格。逗号和符号也很重要。
发布于 2018-06-18 08:29:38
也许这将是有帮助的,直到一个公式出现。复制粘贴到模块中:
Public Function GetString(STR1 As String, STR2 As String) As String
Dim ARR1() As String, ARR2() As String, ARR3() As String
Dim X As Long, Y As Long, POS As Long
STR1 = Replace(STR1, " & ", ",")
STR1 = Replace(STR1, ", ", ",")
STR2 = Replace(STR2, " & ", ",")
STR2 = Replace(STR2, ", ", ",")
ARR1() = Split(STR1, ",")
ARR2() = Split(STR2, ",")
Y = 0
For X = LBound(ARR1) To UBound(ARR1)
ReDim Preserve ARR3(Y)
ARR3(Y) = ARR1(X)
Y = Y + 1
Next X
For X = LBound(ARR2) To UBound(ARR2)
ReDim Preserve ARR3(Y)
ARR3(Y) = ARR2(X)
Y = Y + 1
Next X
For X = LBound(ARR3) To UBound(ARR3)
POS = InStr(GetString, ARR3(X))
If POS <> 0 Then
If Mid(GetString, POS + Len(ARR3(X)), 1) <> "," Then
GetString = GetString & ARR3(X) & ", "
End If
Else
GetString = GetString & ARR3(X) & ", "
End If
Next X
GetString = Left(GetString, Len(GetString) - 2)
GetString = StrReverse(Replace(StrReverse(GetString), StrReverse(","), StrReverse(" &"), , 1))
End Function就像:
=GetString(Cell1, Cell2)结果:

发布于 2018-06-18 08:11:10
试试这个公式:
=A1&(SUBSTITUTE(A2,A1,""))

https://stackoverflow.com/questions/50904170
复制相似问题