ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

   
EH云课堂-专业的职场技能充电站 限时送,魔方网表将Excel变在线系统 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
Excel不给力? 何不试试FoxTable! Excel 2016函数公式学习大典 高效办公必会的Office实战技巧 免费下载Excel行业应用视频
300集Office 2010微视频教程 Tableau-数据可视化工具 ExcelHome出品 - VBA代码宝免费下载 13门Excel免费公开课任你学
你的Excel 2010实战技巧学习锦囊 欲罢不能, 过目难忘的 Office 新界面 免费的Excel考勤计算系统
楼主: 山菊花

[Excel 函数与公式] [第18期_2]求最高产量连续次数最高之生产线

[复制链接]

TA的精华主题

TA的得分主题

发表于 2006-12-17 14:28 | 显示全部楼层

想了N天,这160个字符没办法突破,精简了又精简也需要164个字符,期待正确答案。

即然作了还是传上来,公式为区域数组:

C1:U1=INDEX(B:B,SMALL(IF(ROW(2:20)-MATCH(ROW(1:19),IF(B2:B20<>B1:B19,ROW(B:B)))=MAX(ROW(2:20)-MATCH(ROW(1:19),IF(B2:B20<>B1:B19,ROW(B:B)))),ROW(2:20),21),COLUMN(1:1)))&""

 


QUOTE:

字符超过160.----无分

——andysky

郁闷了,因处理错误而白白丢掉2分,上面公式将红色字段去掉而不处理错误同样在160字符之内。

[此贴子已经被作者于2006-12-26 23:01:51编辑过]

本帖子中包含更多资源

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

x

TA的精华主题

TA的得分主题

发表于 2006-12-18 13:50 | 显示全部楼层

参与一下。


QUOTE:

完全正确.-----2分

——andysky

[此贴子已经被山菊花于2006-12-26 18:06:02编辑过]

本帖子中包含更多资源

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

x

TA的精华主题

TA的得分主题

发表于 2006-12-19 23:48 | 显示全部楼层

太忙了,抽空做一题


QUOTE:

完全正确.-----2分

——andysky

[此贴子已经被山菊花于2006-12-26 18:06:52编辑过]

本帖子中包含更多资源

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

x

TA的精华主题

TA的得分主题

发表于 2006-12-20 15:57 | 显示全部楼层

开始的时候陷在frequency里面了,公式一直都很长,改用match(或lookup)后稍短一些,但要在160字符内还是没有什么好办法,想累了还是交卷吧。

其实用辅助列的话是很简单的一道题。


QUOTE:

字符超过160.----无分

——andysky

[此贴子已经被山菊花于2006-12-26 18:07:39编辑过]

本帖子中包含更多资源

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

x

TA的精华主题

TA的得分主题

发表于 2006-12-20 17:29 | 显示全部楼层

哈哈,前面真是晕头了,明明是frequency简单却去钻match的牛角。把frequency精简了一下现在终于在160个字符以内了:

154个字符:

 


QUOTE:

完全正确.-----2分

——andysky

[此贴子已经被山菊花于2006-12-26 18:08:18编辑过]

本帖子中包含更多资源

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

x

TA的精华主题

TA的得分主题

发表于 2006-12-26 20:00 | 显示全部楼层

本题甚是简单,故加了公式字符长度限制.我的公式为144个字符,望后续大家再突破.(限制放得比较宽松,其实完全可以是150字符,为给答题者多一些空间而设为160字符).

现做一简单总结.

本题主要考点为FREQUENCY之运用(见附件)和如何缩减公式长度.

本题有两个同仁公式稍长,只要作一小小调整即可,非本题如此,很多时候均可以借用此思路:

1.INDEX($B2:$B20)类似用法可以改为INDEX(B:B)以缩减公式长度.

2.公式中IF过多时要做精减,通过()*()形式代替 if((),(),()).

3.COLUMN(A:A)完全可以用COLUMN(a1)替代,可以减少一个字符.

4.根据本题特点,所有$符号可以全部去掉,COLUMN(A1)改为COLUMN()-2可以再减10个字符.

......................................

我的答案如下(前两个公式均为144个字符),分析见附件内.

=INDEX(B:B,LARGE(IF(MAX(FREQUENCY(ROW(1:20),(B1:B19<>B2:B20)*ROW(1:19)))=FREQUENCY(ROW(1:20),(B1:B19<>B2:B20)*ROW(1:19)),ROW(1:20)),COLUMN()-2))

=INDEX(B:B,SMALL(IF(MAX(FREQUENCY(ROW(1:20),(B1:B19<>B2:B20)*ROW(1:19)))=FREQUENCY(ROW(1:20),(B1:B19<>B2:B20)*ROW(1:19)),ROW(1:20)),COLUMN()-2))


当然,完整的公式应该有排错处理才好(因出题时未做说明,故未严格要求),最终公式应该是以下(加上排错处理150字符):

=INDEX(B:B,SMALL(IF(MAX(FREQUENCY(ROW(1:20),(B1:B19<>B2:B20)*ROW(1:19)))=FREQUENCY(ROW(1:20),(B1:B19<>B2:B20)*ROW(1:19)),ROW(1:20),99),COLUMN()-2))&""

andysky提供的答案还是有错误,当每条生产线都只有一次的情况下就会出错。-chrisfang


谢谢提示.

从未考虑一次之特殊状况,现作修正:将其中ROW(1:20)改为ROW(2:20)即可,长度不变。

=INDEX(B:B,SMALL(IF(MAX(FREQUENCY(ROW(2:20),(B1:B19<>B2:B20)*ROW(1:19)))=FREQUENCY(ROW(2:20),(B1:B19<>B2:B20)*ROW(1:19)),ROW(1:20),99),COLUMN()-2))&""

[此贴子已经被作者于2006-12-28 9:12:35编辑过]

本帖子中包含更多资源

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

x

TA的精华主题

TA的得分主题

发表于 2006-12-27 12:28 | 显示全部楼层

谢谢了!

原来对frequency的理解不够,原以为frequency的第二参数只能是有序排列的,现在才明白,可以是乱序数组。

恨啊,两分就这么错失了

[此贴子已经被作者于2006-12-27 18:34:52编辑过]

TA的精华主题

TA的得分主题

发表于 2006-12-28 12:21 | 显示全部楼层
终于得到了1分积分,太高兴了,我会继续努力的。[em09][em31][em49]

TA的精华主题

TA的得分主题

发表于 2007-1-1 10:37 | 显示全部楼层
QUOTE:
以下是引用shuyee在2006-12-15 10:37:54的发言:

你最终的公式,我看了,注意到frequecy被调用了2次,想去掉一次,始终不行.不过你的公式还是可以再缩短3个字符.",99"这个可以不要.false对参与排序时,要比任何一个数值来得都大.这样写就可以了small(if(a=b,c),array)


我那个99是用来排错的.

你除掉99试试,后面将出现#NUM.

TA的精华主题

TA的得分主题

发表于 2007-1-29 22:23 | 显示全部楼层


总结前人,共148字

本帖子中包含更多资源

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

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

本版积分规则

关注官方微信,高效办公专列,每天发车

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

GMT+8, 2019-2-18 06:52 , Processed in 0.109169 second(s), 16 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2017 Wooffice Inc.

   

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

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

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