ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[Excel 函数与公式] [第64期]Excel-单一储存格寻找三连或四连

[复制链接]

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-8-23 12:19 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助

回复 20楼 sunya_0529 的帖子

您好 我原先設定的解尚長達202字元

大頭老師的前一版公式若完全移植到該解

公式長度瞬間縮短至16X字元

當下一種功力差好幾十層樓的想法湧現

TA的精华主题

TA的得分主题

发表于 2010-8-23 12:58 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
呵呵
    我的公式在11楼,因功力不够,长度为550字元,是本赛题最长记录,同时也是我在工作表中使用公式最长的记录,看来须加倍努力!

    再请问版主和楼主,如何领取奖赏技术分和财富?

TA的精华主题

TA的得分主题

发表于 2010-8-23 13:56 | 显示全部楼层
原帖由 fugb-2010 于 2010-8-23 12:58 发表
呵呵
    我的公式在11楼,因功力不够,长度为550字元,是本赛题最长记录,同时也是我在工作表中使用公式最长的记录,看来须加倍努力!

    再请问版主和楼主,如何领取奖赏技术分和财富?



比我好啦,我花了兩天在想這個問題,但都是因為太長而放棄,真不知道前三位的數學思維是怎麼造就的~~~
只能用“登峰造極”來形容啊~~~真要好好拜讀拜讀!!
以後多參與一下,鍛鍊一下自己!!

TA的精华主题

TA的得分主题

发表于 2010-8-23 15:14 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
眼睛都看花了,直接收藏研究

TA的精华主题

TA的得分主题

发表于 2010-8-23 15:25 | 显示全部楼层

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-8-24 13:06 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
原帖由 wangg913 于 2010-8-23 12:37 发表
冻豆腐的想法更高,
=MOD(ROW($2:$11)-{1,2,0},11)-1尤其棒。
======================================
这个数组我最开始想这样构造。
mid(row(a$901)+111*row($1:$8),{2;3;4},1)
总是太长,没有好想法,因此 ...


可否解釋一下這個想法呀!

~想寫總評卻因水平有限而心無餘力~

TA的精华主题

TA的得分主题

发表于 2010-8-24 14:48 | 显示全部楼层
If的第一部分MAX(MMULT(-ISERR(FIND(ROW($2:$9)-{2,1,0},A1)),{1;1;1})),用来判断是否有连续数,完整写法是MAX(MMULT(-ISERR(FIND(ROW($2:$9)-{2,1,0},A1)),{1;1;1}))=0
第二部分是在此基础上,利用替换方法,如果有重复出现的数,就替换掉,没有的话,用-1替换,就是空替换。一个数如果是连续的话,就是要么出现比他小1的数,要么出现大1的数,比如1,则必须有2或0出现,就用0至9,-1至8,1至10,检查是否出现这些数,不过10这个数有点麻烦,就用-1代替,就构造了,MOD(ROW($2:$11)-{1,2,0},11)-1,再用len函数判断长度。SUBSTITUTE(A1,MOD(ROW($2:$11)-{1,2,0},11)-1,)),{9;1;1},这里的{9;1;1}改为{10;1;1}更合理,当初为了少个字符。首先保证这个数存在,与9相乘的数要么3,要么2,要是3的话,说明这个数前后孤立,前后长度相加是6,9*3+4+4=35,要是2的话,说明至少前后连续一个数,9*2+3+4=24,9*2+3+3=24,总共这三种情况,穷举法,判断好这些数之后,就替换了。
从小作文不好,写得可能不清楚,大家见谅。

TA的精华主题

TA的得分主题

发表于 2010-8-24 16:17 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
,说的很明白,学习了。

TA的精华主题

TA的得分主题

发表于 2010-8-26 22:18 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2010-8-28 17:25 | 显示全部楼层
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-12-4 01:23 , Processed in 0.043221 second(s), 6 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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