ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 13250|回复: 19

[Excel 函数与公式] [第111期]三个数字的组合(开帖待总结)

[复制链接]

TA的精华主题

TA的得分主题

发表于 2015-1-26 16:05 | 显示全部楼层 |阅读模式
本帖最后由 delete_007 于 2015-3-19 15:40 编辑

题目说明:
   1.A2:F2的数据源中为[10,99]的整数
   2.数据源中不存在重复数据(注意:AB与BA也算重复数据,如57和75)
   3.在A2:F2中任选三个数据,若有相同数字,则取剩下的3个数字升序排列并连接此相同数字组成一个四位数
     如:35、58、15三个数据有相同数字5,取去除一个相同数字后剩下的3个数字(3、8、1)升序排列为138,再连接相同数字5(中间为一个空格),得出结果138 5
   4.若所选三个数据不存在相同数字,则显示空
   5.模拟结果如D5:D25所示(结果顺序可以不一致,但空白单元格必须在下方)
   6.每个答案的由来可参阅《答案说明》工作表
要求:
   1.B5:B25为答题区(可下拉公式,也可区域数组公式)
   2.纯函数题
评分:
   1.技术分2分起评(正确答案)
   2.优秀答案评3分(字符数<=250字符,通过03验证)
在答题区输入公式后,点击“测试公式”按钮,可自行测试公式是否正确。
竞赛日期:2015-1-26至2015-2-26

单选投票, 共有 39 人参与投票
您所在的用户组没有投票权限

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?免费注册

x

评分

6

查看全部评分

TA的精华主题

TA的得分主题

发表于 2015-1-30 11:21 | 显示全部楼层
  1. =TEXT(MMULT(MOD(SMALL(IFERROR(MID(LARGE(--TEXT(1&SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(TEXT(MMULT(LOOKUP(--MID(123+{0;1;2;3;11;12;13;22;23;33;111;112;113;122;123;133;222;223;233;333},{1,2,3},1),ROW(1:6),A2:F2),10^{4;2;0}),"00-00-00"),REPT(COLUMN(A:J)-1,2),(COLUMN(A:J)-1)&"a"),COLUMN(A:J)-1,),"-",),"a",COLUMN(A:J)-1)&COLUMN(A:J)-1,"[>19999]!0;0"),ROW(1:21)),{2,3,4,5},1)+(20-ROW(1:21))/1%+{0,0,0,10},9999),COLUMN(A:D)+ROW(1:21)*4-4),10),10^(4-ROW(1:4))),"[<9999]000 0;")
复制代码
多单元格数组

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2015-1-30 14:59 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
B5:B25区域数组:
=TEXT(LARGE(MOD(TEXT(SUBSTITUTE(MMULT(TEXT(SUBSTITUTE(A2:F2,ROW(1:10)-1,,1),"[=]9;[<10]0;!0")*10^(10-TEXT(SUBSTITUTE(A2:F2,ROW(1:10)-1,,1),"[<10]0;!0")),(MMULT({1,1,1,1,1,1},INT(MOD(COLUMN(G:BD)/2^ROW(1:6)*2,2)))=3)*(MOD(COLUMN(G:BD)/2^ROW(1:6)*2,2)>=1)),0,)&ROW(1:10)-1,"[>999]0;!0"),9000),ROW()-4),"000 0;;")
310字符,超过03版嵌套层数限制,无法通过03验证。

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2015-2-1 21:52 | 显示全部楼层
本帖最后由 笑着...两年过去 于 2015-2-10 14:27 编辑

昂卐!累死我了
  1. =TEXT(LARGE(MMULT(--RIGHT(SMALL(ROW(1:21)/1%+(0&MID(RIGHT(LARGE(--TEXT(8&SUBSTITUTE(SUBSTITUTE(TEXT(SMALL(--SUBSTITUTE(MMULT(A2:F2*100^COLUMN(A:F),N(MOD(COLUMN(A:BM)/2^ROW(1:6)*2,2)>=1)),0&0,),ROW(24:43)),REPT("-0-0-",3)),"-"&COLUMN(A:J)-1&"-",)&COLUMN(A:J)-1,"-",),"[>9e4]!0"),ROW(1:21)),4),{1,2,3,4},1))+{10,10,10,0},ROW(1:21)*4-{3,2,1,0})),10^{0;3;2;1}),ROW(1:21)),"000 0;;")
复制代码

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2015-2-3 08:34 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
本帖最后由 delete_007 于 2015-2-5 08:27 编辑
  1. =TEXT(LARGE((SUBSTITUTE(MMULT(-TEXT(SUBSTITUTE(A2:F2,ROW(1:10)-1,,1)*11,"0!e-0"),-(MOD(COLUMN(A:BL)/2^ROW(1:6)*2,2)<1))*10^9,0,)&ROW(1:10)-1)*(MMULT(4^(FIND(ROW(1:10)-1,A2:F2&1/17)>2),--(MOD(COLUMN(A:BL)/2^ROW(1:6)*2,2)<1))=3),ROW()-4),"000 0;;")
复制代码
区域数组``
  1. =TEXT(MID(SMALL(-(SUBSTITUTE(TEXT(MMULT(1+TEXT(SUBSTITUTE(A2:F2,{0;1;2;3;4;5;6;7;8;9},,1)*11,"[>99];0!e-0"),--(MOD(COLUMN(A:BL)/2^ROW(1:6)*2,2)<1))*10^9,"[>4e9]!0;[>3e9];"),0,)&ROW(1:10)-1),ROW()-4),3,9),"000 0")
复制代码




补充内容 (2015-2-5 20:50):
=TEXT(LARGE(-(SUBSTITUTE(TEXT((MMULT(1+TEXT(SUBSTITUTE(A2:F2,ROW(1:10)-1,,1)*11,"[>99];0!e-0"),-(MOD(COLUMN(A:BL)/2^ROW(1:6)*2,2)<1))+3)*10^9,"1;[<-1e9]1;0"),0,)&ROW(1:10)-1),ROW()-4),"000 0;")
刚好``

补充内容 (2015-2-5 23:26):
=TEXT(LARGE(-(SUBSTITUTE(TEXT((MMULT(1+TEXT(SUBSTITUTE(A2:F2,ROW(1:10)-1,,1)*11,"[>99];0!e-0"),N(MOD(COLUMN(A:BL)/2^ROW(1:6)*2,2)<1))-3)*10^9,"[>1e9];;-0"),0,)&ROW(1:10)-1),ROW()-4),"000 0;;")
再减1``

评分

4

查看全部评分

TA的精华主题

TA的得分主题

发表于 2015-2-3 21:47 | 显示全部楼层
本帖最后由 wlc5201130 于 2015-2-3 22:14 编辑

2007版本以上
=TEXT(LARGE(IF(MMULT(--ISNUMBER(FIND(MID(TEXT(IF((MID(TEXT(ROW($121:$7899),"0000"),2,1)>MID(TEXT(ROW($121:$7899),"0000"),1,1))*(MID(TEXT(ROW($121:$7899),"0000"),3,1)>MID(TEXT(ROW($121:$7899),"0000"),2,1)),ROW($121:$7899)),"0000"),{1,2,3},1)&RIGHT(ROW($121:$7899)),A$2&A$2&" "&B$2&B$2&" "&C$2&C$2&" "&D$2&D$2&" "&E$2&E$2&" "&F$2&F$2)),ROW($1:$3)^0)=3,ROW($121:$7899),),ROW(A1)),"000! 0;;")
数组下拉

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2015-2-5 07:50 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
本帖最后由 delete_007 于 2015-2-11 15:09 编辑

  1. =TEXT(LARGE((MMULT(1-ISERROR(SEARCH(TEXT(ROW(1:7899),"0!*0!*0!* !*0"),"0123456789 "&1/17)*MATCH("*"&MID(ROW(10001:17899),{2,3,4},1)&RIGHT(ROW(1:7899))&"*",A2:F2&A2:F2,)),{1;1;1})=3)*ROW(1:7899),ROW()-4),"000 0;;")
复制代码

评分

2

查看全部评分

TA的精华主题

TA的得分主题

发表于 2015-2-8 19:36 | 显示全部楼层
由于公式超03版嵌套数,且用了高版本的函数,所以没用03版;
由于公式字符数远超版主要求,也就不再费心精简了,不过写起来太繁琐,所以使用名称定义。

能申请到2分就心满意足了。

关键是得出的结果一样,为什么点击“测试公式”提示错误呢?

往指正!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?免费注册

x

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2015-2-10 12:00 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
区域数组公式,效率有点低:
  1. =TEXT(LARGE((MMULT(1-ISERR(FIND(A2:F2,LARGE((MID(ROW(1012:1789),3,1)<MID(ROW(1012:1789),4,1))*(MID(ROW(1012:1789),2,1)<MID(ROW(1012:1789),3,1))*(TEXT(ROW(12:789),"0\00\00\0")+1010101*(COLUMN(A:J)-1)+10^7),ROW(1:1200)),2)),ROW(1:6)^0)=3)*RIGHT(LARGE((MMULT(--(MID(ROW(1012:1789),{2,3},1)<MID(ROW(1012:1789),{3,4},1)),{1;1})=2)*(ROW(12:789)*10+10001*(COLUMN(A:J)-1)),ROW(1:1200)),4),ROW()-4),"000 0;;")
复制代码

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2015-2-17 11:21 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
  1. =TEXT(LARGE((MMULT((LEN(SUBSTITUTE(SUBSTITUTE(TEXT(ROW($120:$7899),"0000"),LEFT(A$2:F$2),,1),RIGHT(A$2:F$2),,1))=2)*(FIND(RIGHT(ROW($120:$7899)),A$2:F$2&1/17)<3),ROW($1:$6)^0)>2)*(LEFT(TEXT(ROW($120:$7899),"0000"))<MID(TEXT(ROW($120:$7899),"0000"),2,1))*(MID(TEXT(ROW($120:$7899),"0000"),2,1)<MID(TEXT(ROW($120:$7899),"0000"),3,1))*ROW($120:$7899),ROW(A1)),"000 0;;")
复制代码

评分

1

查看全部评分

您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-7-13 21:02 , Processed in 0.054572 second(s), 13 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表