ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[Excel 函数与公式] [开_137]寻找五连号

  [复制链接]

TA的精华主题

TA的得分主题

发表于 2012-9-28 07:54 | 显示全部楼层
本帖最后由 山桑弓 于 2012-9-29 14:40 编辑

开始用一般方法,最初想到的FREQUENCY
=N(MAX(FREQUENCY(IF(COUNTIF(A1,TEXT(ROW($1:$99),"!*00!*")),ROW($1:$99)),IF(COUNTIF(A1,TEXT(ROW($1:$99),"!*00!*")),,ROW($1:$99))))=5)
长度简直没法看,另外设法,变成
=N(SUM(N(MMULT(COUNTIF(A1,TEXT(ROW($1:$99)+{0,1},"!*00!*")),{1;1})=2))=4)
长度73,也超过许多,看到楼主规定的长度,想想总有办法的,而且往往是数学方面的办法,最后终于有了
=N(VAR(-MID(A1,{1,4,7,10,13},2))=2.5)
长度37,达到楼主要求。
还能再省一个字符
=N(VARP(-MID(A1,{1,4,7,10,13},2))=2)
长度36

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2012-9-28 08:39 | 显示全部楼层
本帖最后由 delete_007 于 2012-9-28 11:01 编辑

取巧了,38字。
  1. =N(DEVSQ(-MID(A1,{1;4;7;10;13},2))=10)
复制代码
换一个函数,37字。
  1. =N(VAR(-MID(A1,{1;4;7;10;13},2))=2.5)
复制代码
就现有数据而言,单元格中5个数字不重复,所以当5个数字连号时,样本方差最小,为2.5。所以公式也可写为(35字符):
  1. =N(VAR(-MID(A1,{1;4;7;10;13},2))<3)
复制代码

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2012-9-28 09:57 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
功力不够,55个字符了
=N(SUM(SMALL(MID(A1,{1,4,7,10,13},2)*{1;-1},{10,5}))=4)

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2012-9-28 10:33 | 显示全部楼层
在A列和B列之间插5列作为辅助列,,使用Excel的分列功能,将A列的五个数字分成五列,然后再用IF函数设置条件判断是否为数字。
用一个公式,对我来说有点复杂。上面这个方法还是比较实用的。

TA的精华主题

TA的得分主题

发表于 2012-9-28 10:43 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2012-9-28 11:23 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
  1. =N(SUM(MATCH({1;0},0/FIND(TEXT(ROW($1:$100)-1,"00"),A1),{1;0})*{1;-1})=4)
复制代码
73个字符

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2012-9-28 11:24 | 显示全部楼层
=IF(SMALL(--MID(A1,1+(ROW($1:$5)-1)*3,2),5)-SMALL(--MID(A1,1+(ROW($1:$5)-1)*3,2),1)=4,1,0)
数组函数,不知道符不符合。。。结果是没有问题的。

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2012-9-28 11:53 | 显示全部楼层
{=(AVEDEV(--MID(A1,ROW($1:$5)*3-2,2))=1.2)*1}

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2012-9-28 12:45 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
本帖最后由 寻觅SaMa 于 2012-9-28 13:03 编辑
  1. =IF(SUM(N(LARGE(--MID(A1,ROW($1:$5)*3-2,2),ROW($1:$5))+ROW($1:$5)-1=LARGE(--MID(A1,ROW($1:$5)*3-2,2),1)))=5,1,0)

复制代码

初学者,只能做到这种程度,重在参与
还望各位前辈指点一下

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2012-9-28 14:03 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
C1=AND(LARGE(--MID(A1,{1;4;7;10;13},2),{1,2,3,4})-LARGE(--MID(A1,{1;4;7;10;13},2),{2,3,4,5})=1)*1
呵呵,有95个字符,期待高手更短的公式

评分

1

查看全部评分

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

本版积分规则

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

GMT+8, 2024-3-29 01:27 , Processed in 0.058105 second(s), 10 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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