威力无穷的WPS新函数 复杂数字交集计算案例

文摘   2024-10-29 13:16   湖北  

最近1年,wps更新了很多新函数,比如textJoin,unique,textsplit这些函数的组合应用,可以把以前必须用vba才能解决问题用函数来解决,比如下面这个案例,A列和B列有很多数字,要求出2列数字的交集并去重,即使是用VBA代码,也都有一定难度了,现在可以用wps新函数组合来完成,这个函数组合看起来非常复杂,下面帮大家逐一解析

wps函数公式解法如下 当然还有很多其他的解法 这只是比较直白的一种

=TEXTJOIN(",",TRUE,UNIQUE(FILTER(TEXTSPLIT(A2,","),ISNUMBER(MATCH(TEXTSPLIT(A2,","),TEXTSPLIT(B2,","),0))),1))

公式解析如下

分步解释:

  • TEXTSPLIT(A2, ",")

  • 将A2单元格中的数据按逗号分割成数组。

  • TEXTSPLIT(B2, ",")

  • 将B2单元格中的数据按逗号分割成数组。

  • MATCH(TEXTSPLIT(A2, ","), TEXTSPLIT(B2, ","), 0)

  • 查找A2数组中的每个元素在B2数组中的位置。

  • ISNUMBER(MATCH(TEXTSPLIT(A2, ","), TEXTSPLIT(B2, ","), 0))

  • 检查A2数组中的每个元素是否在B2数组中存在。

  • FILTER(TEXTSPLIT(A2, ","), ISNUMBER(MATCH(TEXTSPLIT(A2, ","), TEXTSPLIT(B2, ","), 0)))

  • 筛选出A2数组中在B2数组中也存在的元素。

  • UNIQUE(前面的数组结果)

  • 对数组去重 这里是一维数组所以 要给第2参数 按列去重

  • TEXTJOIN(",", TRUE, ...)

  • 将筛选出的交集元素用逗号连接成一个字符串。


  • 当然 这个问题用VBA也可以解决

  • 以前这种问题用vba很难 不过现在有了VBA代码助手AI

  • 问题就变得异常简单了

  • 提示词如下



  • 只需要在单元格中输入函数 

  • =数组交集去重(A2,B2) 下拉即可


说实话 你们连AI百分之1的能力都没发挥出来


买课程可进永久答疑群,课程可免费试学点击下方链接即可

郑广学Excel实战教程




EXCEL880
Excel/WPS办公技巧分享 郑广学VBA/VSTO/JSA教程分享 课程咨询及付费定制表格加EXCEL880B
 最新文章