Excel:获取第一次出现值的单元格地址并在公式中使用它

时间:2018-06-14 23:43:58

标签: excel excel-formula range lookup

我有下表:

     A    B    C
 1   1    4    =(Formula) 
 2   1    
 3   3
 4   4
 5   4

我需要从A列(即A4)获取B1中第一次出现的值(本例中为4)的地址,并在公式中使用该地址(位于C1中)。公式基本上应该做到以下几点:

  1. 如果B1不为空,则在范围A1:A10000(在本例中为A4)中获取B1中第一次出现的值(在此示例中为4)
  2. 在公式中使用此地址(A4),以产生20个单元格的范围:this_address:this_address + 20(在此示例中:A4:A24)。
  3. 做一些计算
  4. 所有三个步骤都应在一个公式中执行。

2 个答案:

答案 0 :(得分:5)

使用INDEX / MATCH和INDEX / MATCH + 20:

INDEX(A:A,MATCH(B1,A:A,0)):INDEX(A:A,MATCH(B1,A:A,0)+20)

所以如果我们想要总结那个范围:

=SUM(INDEX(A:A,MATCH(B1,A:A,0)):INDEX(A:A,MATCH(B1,A:A,0)+20))

enter image description here

答案 1 :(得分:3)

虽然INDEX是更好的选择,但至少应该提到OFFSET。

'A4:A24
=offset(a1, match(b1, a:a, 0)-1, 0, 21, 1)
=sum(offset(a1, match(b1, a:a, 0)-1, 0, 21, 1))

'D4:D24
=offset(a1, match(b1, a:a, 0)-1, 3, 21, 1)
=sum(offset(a1, match(b1, a:a, 0)-1, 3, 21, 1))