楼主 gouweicao78 |
Q:如图,每一期号码中,可能有多组号码是连号(前一个号比后一个号小1),如何得到多组连号的文本结果,例如“2连3连”表示数据中有一组2个连号和一组3个连号? A:选择I2单元格,按CTRL+F3,定义名称:fre
在I2输入公式:
判断几连号.rar |
2楼 gouweicao78 |
【思路解析】 1、定义名称fre=FREQUENCY(IF($B2:$G2+1=!$C2:$H2,COLUMN($B:$G)),IF($B2:$G2+1-$C2:$H2,COLUMN($B:$G))) 这是个最经典“统计连续满足条件”的解法: 【条件】B2:G2+1=C2:H2——很简单,B2+1=C2,C2+1=D2……G2+1=H2,也就是“连号” FREQUENCY(满足条件的列号,不满足条件的列号) ①FREQUENCY({FALSE,FALSE,FALSE,5,6,7},{2,3,4,FALSE,FALSE,FALSE}),忽略逻辑值后即FREQUENCY({5,6,7},{2,3,4}) ②结果为{0;0;0;3},表示第1参数中,小于等于2的个数为0;大于2小于等于3的个数为0;大于3小于等于4的个数为0;大于4的个数为3个。 {0;0;0;3}+1得到{1;1;1;4}也就是分别有1个、1个、1个、4个连号。 2、公式: =TEXT(SUBSTITUTE(SUM((fre+1)*10^(ROWS(fre)-ROW(INDIRECT("1:"&ROWS(fre))))),1,),REPT("0连",COUNT(1/fre))) 其中fre+1已说明是表示1个、1个、1个、4个连号 ROWS(fre)就是fre的行数,共4行 ROW(INDIRECT("1:"&ROWS(fre)))也就是ROW(1:4) ROWS-ROW(INDIRECT)得到的是4-{1;2;3;4}={3;2;1;0} 因此: SUM({1;1;1;4}*10^{3;2;1;0})得到1114 SUBSTITUTE(SUM,1,)将1去除后(也就是1连号不算连号)得到4 COUNT(1/fre)→COUNT(1/{0;0;0;3})得到1个大于0的数 因此:REPT("0连",1)就只要1次。 TEXT(4,"0连")得到4连。 同理:232就会得到2连3连2连。 |
3楼 卖火柴的帅哥 |
呵呵,原来老师也研究号码呀 |
4楼 gouweicao78 |
我不研究彩票,呵呵。我只是给人解答过这些问题。 |
5楼 dqr |
那么如何得出“2同尾3同尾”的多组同尾数结果呢? |
6楼 492142902 |
高手就是高手,原来用辅助列实现,多了十几列,现在两个公式就搞定了 |