Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 1931|回复: 9

[已解决]大师们!求帮忙!一列数据中,求一个数再次出现时,中间相隔了几个不同的数。

[复制链接]
发表于 2017-7-18 19:01 | 显示全部楼层 |阅读模式
本帖最后由 IDESQT 于 2017-7-20 15:06 编辑

一列数据中(1-10随机出现),求一个数再次出现时,中间出现了几个不同的数。(即有数值重复出现只算作一次),如图,
1:如果B181不为“ ”时,从AF列中,统计B列的数值。AF181统计从B191至B181的数(由下至上),这时B181=1,AF统计得1与上次出现1时,相差9行。
2:AF往上拉时,1重复开出,相隔为0
3:看B178行,此时B178=4,由于在B191-B178中,4开出时,1已经在中间开了三次,只能算一次。此时AF178=7,即4再次开出时中间相隔(出现)了7个不同的数。麻烦大神帮忙写一下公式。谢谢! ppppp.rar (35 KB, 下载次数: 6)
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
 楼主| 发表于 2017-7-19 22:42 | 显示全部楼层
各位,有办法解决吗?要用到什么函数?我可以自己找函数学一下。
回复

使用道具 举报

发表于 2017-7-20 05:16 | 显示全部楼层    本楼为最佳答案   
AF181=
IF(B181="","",SUMPRODUCT(1/COUNTIF(B182:INDIRECT(CHAR(65+COLUMN(A181))&MIN(IF(B182:B$191=B181,ROW(B182:B$191),"/"))),B182:INDIRECT(CHAR(65+COLUMN(A181))&MIN(IF(B182:B$191=B181,ROW(B182:B$191),"/")))))-1)      数组执行后向右复制到AO181,之后向上复制

理解你的问题的用时长过写公式的时间。。。。。
回复

使用道具 举报

发表于 2017-7-20 05:26 | 显示全部楼层
AF是计算B列所在的单元格的下一个单元格与同列的行191之间的靠自己最近的同数字单元格之间有多少个去重复的数字。。。。。(伟缩德亲础吗?)
回复

使用道具 举报

 楼主| 发表于 2017-7-20 10:01 | 显示全部楼层
cabcyvr 发表于 2017-7-20 05:26
AF是计算B列所在的单元格的下一个单元格与同列的行191之间的靠自己最近的同数字单元格之间有多少个去重 ...

就是这个意思,语文水平差,要是以前作文能写那么多字我都笑掉牙了。貌似公式运算出来是“#“号,可以上传下你填写后的文件吗?谢谢。--看见公式,看到那么多括号,望洋兴叹~~

回复

使用道具 举报

发表于 2017-7-20 13:42 | 显示全部楼层
looooooogPK10.rar (38.1 KB, 下载次数: 16)
回复

使用道具 举报

 楼主| 发表于 2017-7-20 13:48 | 显示全部楼层
本帖最后由 IDESQT 于 2017-7-20 13:58 编辑

中间重复出现多次的数,只算作一次,因为数字只有10个,计算出来的值不会大于10。麻烦再帮忙弄一下。谢谢。
回复

使用道具 举报

发表于 2017-7-20 15:11 | 显示全部楼层
上面的是数组公式(需要CONTROL SHIFT ENTER三键一起)
,在我的电脑上测试时OK的
回复

使用道具 举报

 楼主| 发表于 2017-7-20 15:16 | 显示全部楼层
cabcyvr 发表于 2017-7-20 15:11
上面的是数组公式(需要CONTROL SHIFT ENTER三键一起)
,在我的电脑上测试时OK的

好了,多谢。太强大了,你。
回复

使用道具 举报

发表于 2017-7-20 15:17 | 显示全部楼层
结果在附件内

looooooogPK10(xxx).rar

39.44 KB, 下载次数: 6

回复

使用道具 举报

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

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-20 15:38 , Processed in 0.415233 second(s), 11 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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