楼主 蒸蒸日上 |
如题:提取A列中不重复的车次,按从小到大的顺序排列(效果图如D列)。用函数完成,不用VBA,不用辅助区域,不定义名称。
回答正确者奖励5个分值的好评。 答案与11月13日公布! 谢谢大家的积极参与! 最佳答案可以评一个满分6分!一束鲜花,一个笑脸!
提取不次,排列.rar |
2楼 gouweicao78 |
- =TEXT(LARGE(IF(FREQUENCY(-A$2:A$557,-A$2:A$557),-A$2:A$557,-9^9),ROW(1:1)),"[<-1E7] ;0000000")
数组公式,向下复制。 |
3楼 天南地北 |
我所能想到的几种解法,纯当练练手,该拍砖的拍砖!- =RIGHT(0&SMALL(IF(FREQUENCY(--$A$2:$A$557,--$A$2:$A$557),--$A$2:$A$557),ROW(A1)),7)
- =INDEX(A:A,RIGHT(SMALL(IF(MATCH($A$2:$A$557,$A$2:$A$557,)=ROW($1:$556),$A$2:$A$557*10^5+ROW($2:$557),10^12+4^8),ROW(A1)),5))&""
- =IF(MAX(--$A$2:$A$557)-MAX(--$G$1:G1)>0,RIGHT(0&MIN(IF($A$2:$A$557-MAX(--$G$1:G1)-1>0,--$A$2:$A$557,"")),7),"")
- =RIGHT(0&SMALL(--$A$2:$A$557,1+SUM(COUNTIF($A$2:$A$557,$H$1:H1))),7)
- =RIGHT(0&SMALL(--$A$2:$A$557,INDEX(FREQUENCY(--$A$2:$A$557,--I1),1)+1),7)
- =RIGHT(0&SMALL(--$A$2:$A$557,FREQUENCY(--$A$2:$A$557,--J1)+1),7)
部分没有容错处理,容错方法可以参考第三个公式
提取不重复车次,并按升序排列.rar |
4楼 ragtag |
=TEXT(IF(ROW(E1)<=SUM(1/COUNTIF(A:A,A$2:A$557)),SMALL(IF(MATCH(A$2:A$557,A:A,0)<>ROW(A$2:A$557),9^9,VALUE(A$2:A$557)),ROW(E1)),""),"0000000") |
5楼 nonfish |
D2单元格公式(下拉):- =INDEX(A:A,RIGHT(SMALL(IF(MATCH(A$2:A$557,A:A,)=ROW($1:$556),A$2:A$557*10^3+ROW($1:$556)),ROW(A1)),3))
去错后公式:- =IFERROR(INDEX(A:A,RIGHT(SMALL(IF(MATCH(A$2:A$557,A:A,)=ROW($1:$556),A$2:A$557*10^3+ROW($1:$556)),ROW(A1)),3)),"") 或者
- =IF(SUM(1/COUNTIF(A$1:A$557,A$1:A$557))>ROW(),INDEX(A:A,RIGHT(SMALL(IF(MATCH(A$2:A$557,A:A,)=ROW($1:$556),A$2:A$557*10^3+ROW($1:$556)),ROW(A1)),3)),"")
均为数组公式,去错公式第1个2007版本可用;第2个03、07版通用,但是速度会相当慢。 |
6楼 wjc2090742 |
- =RIGHT(-MAX(IF(COUNTIF(D$1:D1,A$2:A$557)=0,-(1&A$2:A$557))),7)
容错的:- =RIGHT(TEXT(-MAX(IF(COUNTIF(D$1:D1,A$2:A$557)=0,-(1&A$2:A$557))),"[>0];"),7)
|
7楼 xgg2001 |
- =TEXT(0.5/SMALL((ROW($1:$556)-MATCH(A$2:A$557,A:A,)+0.5)/A$2:A$557,ROW(A1)),";0000000")
|
8楼 languanzeng |
下面公式107字符 b2: =TEXT(SMALL(IF(MATCH(A$2:A$557,A$2:A$557,)=ROW(A$2:A$557)-1,A$2:A$557*1,9E+30),ROW(A1)),"[>5e+6] ;0000000") 数组公式,下拉
下面公式80字符 b2: =TEXT(MIN(IF(COUNTIF(B$1:B1,A$2:A$557)=0,A$2:A$557*1,9E+30)),"[>9E+7] ;0000000") 数组公式,下拉
下面公式70字符 b2: =TEXT(MIN(IF(COUNTIF(B$1:B1,A$2:A$557)=0,A$2:A$557*1,"")),"0000000;;") 数组公式,下拉
再提供一个73字符的: b2: =TEXT(MIN(IF(ISNA(MATCH(A$2:A$557,B$1:B1,)),A$2:A$557*1,"")),"0000000;;") 数组公式,下拉 |
9楼 ragtag |
D2 ==TEXT(IF(ROW(D1)<=SUM(1/COUNTIF(A:A,A$2:A$557)),MIN(COUNTIF(D$1:D1,A$2:A$557)*9^9+A$2:A$557),""),"0000000") |
10楼 huishi |
献丑了,225个字符- =IF(LEN(TEXT(SMALL(--IF(MATCH($A$2:$A$557,$A$2:$A$557,)=ROW($2:$557)-1,$A$2:$A$557,4^8*1000),ROW(A1)),"0000000"))=7,TEXT(SMALL(--IF(MATCH($A$2:$A$557,$A$2:$A$557,)=ROW($2:$557)-1,$A$2:$A$557,4^8*1000),ROW(A1)),"0000000"),"")
|
11楼 传递 |
蒸蒸开贴看看答案啊 |
12楼 丞相 |
笨办法,数组- =TEXT(SMALL(IF(FREQUENCY(--$A$2:$A$557,--$A$2:$A$557),--$A$2:$A$557),ROW(A1)),"0000000")
|
13楼 hylees |
快开,看看大师们的答案 |
14楼 大表弟 |
=IF(ROW(A1)<=SUM(1/COUNTIF($A$2:$A$557,$A$2:$A$557)),TEXT(SMALL($A$2:$A$557*1,1+SUM(COUNTIF(A:A,$G$1:G1))),"0000000"),"") |
15楼 天南地北 |
COUNTIF都忘记了 版块里面是作者可见,实际上公开了 有 图 为 证
|
16楼 hylees |
啥意思,开帖了呗 |
17楼 qyote |
学习学习 |
18楼 孔昆友 |
呵呵 放心 如我算错 你以后来砸我的帖子 呵呵 |
19楼 朱少伎 |
真幸运 |