**已关闭。**此问题需要debugging details。目前不接受回答。
编辑问题以包括desired behavior, a specific problem or error, and the shortest code necessary to reproduce the problem。这将帮助其他人回答问题。
14小时前关闭
Improve this question的
我有一长串从0到360的数字列,像这样:
54
54
53
53
53
...
...
2
2
2
1
1
1
0 1
0
0
0
0
1
1
2
2
2
....
...
359
359
0 2
0
0
字符串
我想要的是,如果有一个连续的0行的列表,那么它计数为1,然后继续寻找下一个连续的0行,然后它继续计数为2,依此类推。
我如何编码这个,请帮助,谢谢
试图找到一个算法,在连续行中只计算一次重复值
3条答案
按热度按时间tcomlyy61#
在Office 365中,您也可以使用扫描:
=SUM(N(SCAN(,A1:A16,LAMBDA(a,b,IF(b=0,a+1,0)))=1))
根据您的需要更改范围
在旧版Excel中,您可以在
B2
中使用此选项,假设范围从A2
开始:=IF(OR(A1,A1="")*EXACT(A2,0),IFERROR(LOOKUP(9^9,B$1:B1,B$1:B1+1),1),"")
将此选项向下拖动。piwo6bdm2#
作为公式(仅适用于X365,因为它使用
Let
)字符串
(假设你的数字从A2开始)。
第一个
IF
在所有单元格包含0且上面的单元格不为0时将其“标记”为1。第二个IF
检查此值是否为1,如果是,则将上面的所有值相加(并加1)。dbf7pr2w3#
一个可能的解决方案:
字符串