如何拆分字符串并将唯一值存储到数组中

时间:2019-10-31 10:16:47

标签: excel vba

有人可以帮我在下面创建一个excel vba代码吗

对于第2列“序列”中的每个单元格,我想用逗号“,”分割字符串,并将唯一的字符串存储在数组中,并在第4列中填充结果!

抱歉,我无法附加照片,出现错误,下面是详细信息。

column 2
row 1 - R001,R002,R003,R004
row 2 - R003,R004,R005,R006
row 3 - R006,R009,R010,R011

column 4 (result should be)
row 1 - R001
row 2 - R002
row 3 - R003
row 4 - R004
row 5 - R005
row 6 - R006
row 7 - R009
row 8 - R010
row 9 - R011

2 个答案:

答案 0 :(得分:1)

为了娱乐,我想看看是否可以使用工作表公式来完成。

如果碰巧同时具有O365FILTERXML函数的TEXTJOIN,则可以使用以下公式:

=IFERROR(INDEX(FILTERXML("<t><s>" & SUBSTITUTE(TEXTJOIN(",",,$A$1:$A$3),",","</s><s>") & "</s></t>","//s[not(. = preceding::*)]"),ROWS($1:1)),"")

算法:

  • 使用comma分隔符加入相关单元格
  • 从文本创建XML,并用逗号分隔节点。
  • 使用xPath参数仅在节点之前没有相同节点的情况下返回节点

enter image description here

enter image description here

答案 1 :(得分:-1)

查看以下链接

Split function

Removing duplicates

相关问题