在电子表格中,如何让一组数组用公式自动计算一个数出现的间隔期数?如: B3到G8的数字是 7 1

在电子表格中,如何让一组数组用公式自动计算一个数出现的间隔期数?如:
B3到G8的数字是
7 17 18 27 29 32
3 6 7 23 30 33
14 22 26 27 28 31
1 12 13 16 23 28
3 5 6 8 17 18
14 22 27 28 30 33
(从最底排向上寻找相同的数字)比如数字3从下数到上隔了两期出现就用2表示(选择空白单元格填写)

数组公式,输入完成后不要直接回车,要按三键  CTRL+SHIFT+回车  结束。


=MAX((MMULT(1*(B3:G99=3),{1;1;1;1;1;1})>0)*ROW(1:97))-LARGE((MMULT(1*(B3:G99=3),{1;1;1;1;1;1})>0)*ROW(1:97),2)-1


把公式中两处的 =3 换为实际需要查找的数字即可。

追问

我还有一个公式,希望你能帮我解决,今天太晚啦,改天请教你好吗

追答

这个提问的方式不好理解,把问题按以下方式截图发上来并附上详细说明。

追问

你好,我输入公式没成功

表格我发过来了,有空帮我看看好吗?谢谢

你好,在了吗

这是哪里出了问题?

追答

提问应尽量详细,不要只弄个结果上来就了事,应对结果详细说明,为什么得到这样的结果。
最初提问的公式完全不适合于你现在的情况,现在的情况应是逐列统计,即B列是B列,C列是C列这样分开的,而最初回答的公式是B:G六列一起统计的,把公式改为这样右拉试试吧。

些公式输入完成后直接回车即可,无需再按三键。
=SUMPRODUCT(LARGE((B3:B3000=LOOKUP(1,0/(COUNTIF(B3:B3000,B3:B3000)>1),B3:B3000))*ROW(1:2998),{1,2})*{1,-1})-1

还是不适合的,你必须详细说明为什么得到那个结果,不要只弄个结果上来就什么也不说。

追问

好的,我试试

计算结果是#N/A

以任意一个数据向上的所有表格里寻找相同数据,发现一个相同的数据就停止寻找。

比如E781数据是25,间隔两组用2表示

如D781向上寻找,间隔15组数据,用15表示

追答

你那表格的行数不是连续的,是有隐藏行吧。公式解决不了,建议找懂VBA的大神帮忙编写VBA语言代码解决。

温馨提示:答案为网友推荐,仅供参考
相似回答