计数自上次出现以来的行数

电子表格问题。 我希望能够查看单元格中的数字,然后再次点击该数字之前,计算出现在其上方的行数。 有任何想法吗?

谢谢

这个公式是否正常工作:

=ROW()-MAX(FILTER(ROW(INDIRECT("A1:A"&ROW()-1)),INDIRECT("A1:A"&ROW()-1)=INDIRECT("A"&ROW())))

你可以看到它在这个示例表中工作:

https://docs.google.com/spreadsheets/d/1CHem3Y6ptvAjNX8ug9FcPBg3g28lrTPq_-hD5UnLgpw/edit?usp=sharing

一个更简单的尝试

 =ROW(A12) - MAX(--($A$1:A11=A12)*ROW($A$1:A11)) 

你需要input这个公式作为数组,即Ctrl + Shift + Enter

A12是当前项目

A1:A11是过去的日子

--($A$1:A11=A12)为您提供与{0; 0; 1; …; 0}数组forms的当前项目匹配的所有以前的项目,即如果项目匹配,将导致1

ROW($A$1:A11) gives you {1;2;....}直到最后一行

--($A$1:A11=A12)*ROW($A$1:A11)将第二个数组中的所有数字都变为零,除非项目匹配。

Max给出最后匹配的数字的索引/行

Row – Max给你想要的结果。

Google表格