如何找到第n行的值?

时间:2018-07-10 06:56:09

标签: excel

如何找到范围中第n个值的行号。例如,如果我在范围A1:A6中具有值1,2,1,3,4,2,那么如何找到第二次出现的行号1。技巧是,一个人只能使用属于总和/计数家庭(总和,Sumif,Sumifs,Count,counta,countblank,Countif,CountIfs)。我能够使用“ SMALL(IF($A$1:$A$6=1,ROW($A$1:$A$6),""),B1)”解决问题。任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:0)

我假设B1出现了您要查找的值,而B2出现了您要查找的值。

只有6行,您可以对其进行暴力破解:

=(A1=B2)*(B1=1)+(A2=B2)*(COUNTIF(A1:A2,B2)=B1)*2+(A3=B2)*(COUNTIF(A1:A3,B2)=B1)*3+(A4=B2)*(COUNTIF(A1:A4,B2)=B1)*4+(A5=B2)*(COUNTIF(A1:A5,B2)=B1)*5+(A6=B2)*(COUNTIF(A1:A6,B2)=B1)*6

要累加的每个术语都会检查第n次出现是否在特定行上。对于您给出的示例,(A3=B2)*(COUNTIF(A1:A3,B2)=B1)*3的评估结果为:

-> (1=1)*(2=2)*3
-> TRUE*TRUE*3
-> 3

所有其他术语均为0。例如:

-> (A4=B2)*(COUNTIF(A1:A4,B2)=B1)*4
-> (3=1)*(2=2)*4
-> FALSE*TRUE*4
-> 0

如果可以选择帮助列,则可以使用它并填写6行:

=((COUNTIF(A$1:A1,B$2)*(A1=B$2))=B$1)*(COUNTA(A$1:A1)+COUNTBLANK(A$1:A1))

答案将是helper列的总和。此解决方案易于扩展-只需将其填充为所需的任何行数,答案始终是总和。