|
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件 ★ 免费下载 ★ ★ 使用帮助★
回复 152楼 lzzgzby 的帖子
原帖由 lzzgzby 于 2009-5-11 19:52 发表
给一个难度提高的练习!
(在一行中的多单元格数组公式可以实现),现在是要在行列区域以多单元格数组公式实现!
见附件要求
=TEXT(RIGHT(SMALL(IF(ISERROR(FIND(TRANSPOSE(ROW($1:$10)-1)*(ROW($1:$10)^0),A2:A9)),11,TRANSPOSE(ROW($1:$10)-1)*(ROW($1:$10)^0))+100*ROW($1:$10),TRANSPOSE(ROW($1:$10))+10*(ROW($1:$10)-1)),2),"[<10];")
=TEXT(RIGHT(SMALL(IF(ISERROR(FIND(TRANSPOSE(ROW($1:$10)-1)*(ROW($1:$10)^0),A2:A9)),TRANSPOSE(ROW($1:$10)-1)*(ROW($1:$10)^0),11)+100*ROW($1:$10),TRANSPOSE(ROW($1:$10))+10*(ROW($1:$10)-1)),2),"[<10];")
第一次完成这么长的数组公式,自己小激动一把。先不管自己的比别人长多少了,贴出来,自我激励一下再说。
体会:small函数在处理2维数组时,是采用遍历方式,即将2维数组中的每个值拿来比较,而不是每一行单独比较。
[ 本帖最后由 unnamed 于 2011-7-6 10:49 编辑 ] |
评分
-
1
查看全部评分
-
|