EXCEL 函数公式(去掉重复数字)

发布网友 发布时间:2022-04-23 03:21

我来回答

5个回答

热心网友 时间:2023-08-10 05:53

在I1输入公式:
=INDEX($A$1:$G$1,MATCH(,COUNTIF($H$1:H1,$A$1:$G$1),))
数组公式,公式按Ctrl+Shift+回车结束输入。
向右拉复制公式。

热心网友 时间:2023-08-10 05:53

此公式适合个位数判断。

H1=IF(COLUMN(A1)>SUM(1/COUNTIF($A$1:$G$1,$A$1:$G$1)),"",SMALL(IF(COUNTIF($A$1:$G$1,MOD(ROW($A$10:$A$19),10)),MOD(ROW($A$10:$A$19),10)),COLUMN(A1)))

数组公式。在编辑状态CTRL+SHIFT+回车。
公式右拉。

公式说明:
MOD(ROW($A$10:$A$19),10) 表示0-9

COUNTIF($A$1:$G$1,MOD(ROW($A$10:$A$19),10))判断0-9在A1:G1中是否存在

IF(COUNTIF($A$1:$G$1,MOD(ROW($A$10:$A$19),10)),MOD(ROW($A$10:$A$19),10)) 如果存在,返回0-9相应的数字,否则为FALSE
因此,这是一组以0-9之间的数字(在A1:G1中出现)与FALSE(替换没有出现的数字)交替组成的10位序列,其中,数字升序排列。

SMALL(XXX,COLUMN(A1)) 上面序列中最小的数字,其中COLUMN(A1)表示1。公式向右拉,公式中的COLUMN(A1)会变成B1,C1...即代表第二小/第三小。。。的值

SUM(1/COUNTIF($A$1:$G$1,$A$1:$G$1)) 统计A1:G1中唯一值的个数。上例为5

IF(COLUMN(A1)>SUM(1/COUNTIF($A$1:$G$1,$A$1:$G$1)),"",XXX) 纠错处理。比如在上面IF语句中,第六个出现的应该是FALSE,但由于此单元格公式中的COLUMN(F1)--6大于5,因此先一步返回空值,不再继续执行SMALL语句,从而避免错误值的出现。

热心网友 时间:2023-08-10 05:54

栋栋爸公式有个缺陷,就是往后拉如果有重复数字会出现 #NUM,解决方法是加一个ISERROR()判断一下,H1公式如下,CTRL+SHIFT+回车结束,然后向后拉。。。

=IF(ISERROR(IF(COLUMN(A1)>SUM(1/COUNTIF($A$1:$G$1,$A$1:$G$1)),"",SMALL(IF(COUNTIF($A$1:$G$1,MOD(ROW($A$10:$A$19),10)),MOD(ROW($A$10:$A$19),10)),COLUMN(A1)))),"",IF(COLUMN(A1)>SUM(1/COUNTIF($A$1:$G$1,$A$1:$G$1)),"",SMALL(IF(COUNTIF($A$1:$G$1,MOD(ROW($A$10:$A$19),10)),MOD(ROW($A$10:$A$19),10)),COLUMN(A1))))

热心网友 时间:2023-08-10 05:54

栋栋爸Excel水平不错,能够运用数组解答,不过这个解答理解上过于复杂。
我提供一个容易理解的解答思路参考:

1、在A2:G2增加辅助行去除数组中的重复
=IF(MATCH(A1,$A$1:$G$1,0)=COLUMN(A1),A1,"")

2、在A3:G3增加辅助行得到这些数字的顺序
=RANK(A1,$A$2:$G$2,1)

3、在H1:L1得到结果
=INDEX($A$1:$G$1,,MATCH(COLUMN(A1),$A$3:$G$3,0))

热心网友 时间:2023-08-10 05:55

学习了~

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com