您的位置首页生活百科

excel怎么用公式提取不重复的文本数据方法一

excel怎么用公式提取不重复的文本数据方法一

的有关信息介绍如下:

excel怎么用公式提取不重复的文本数据方法一

小羽办公excel公式提取不重复的文本数据,该经验介绍的是提取文本的,如果需要看其他类型的可以看一下我同期的经验

目前有文本,数字,多行多列,提取A列中B列无的数据,提取AB列共同数据,提取单元格没出现的数字,和非公式提取

首先上一张例子图片,公式将围绕这个例子来进行讲解

本次介绍的是数组提取的方式

图中C3=INDEX(A:A,SMALL(IF(MATCH(A$2:A$20,A$2:A$20,)=ROW($1:$19),ROW($2:$20),4^8),ROW(A1)))&""

首先我们从match拆分开始第一步={MATCH(A$2:A$20,A$2:A$20,)}

第二步={ROW($1:$19)}

我们可以看到粉色部分经过match获得的行号和序号并不一致,相同的都显示同样一个序号

之后的思路是比较一下两列的差异,相同的显示TRUE,不相同的显示FALSE

而这一步我们把上一步说的思路给实现了

{=IF(MATCH(A$2:A$20,A$2:A$20,)=ROW($1:$19),ROW($2:$20),4^8)}

然后用IF把TRUE的值替换成序号,而FALSE的值替换成4^8的值也就是65536

这一步我们用SMALL排序一下,把4^8的值65536都往后移

{=SMALL(IF(MATCH(A$2:A$20,A$2:A$20,)=ROW($1:$19),ROW($2:$20),4^8),ROW(A1))}

SMALL是返回第几个最小,我们从第一个开始返回,这样在没有重复之前都不会出现65536的这值

第六步利用small获得的排序搭配index返回对应的文本

{=INDEX(A:A,J31)}这个公式是过渡了解用的

第七步进一步完善美化公式搭配&去除0的显示

最终公式{=INDEX(A:A,SMALL(IF(MATCH(A$2:A$20,A$2:A$20,)=ROW($1:$19),ROW($2:$20),4^8),ROW(A1)))&""}