EXCEL引用上一个可见行中的单元格

时间:2015-03-12 18:02:39

标签: excel excel-vba excel-formula excel-2010 vba

如何从过滤范围中引用上一个可见行中同一列中的单元格?

1 个答案:

答案 0 :(得分:5)

如果我们准备这样做,这很容易

假设我们有以下数据:

enter image description here

第一步是介绍一个"帮助"柱。在 E2 中输入:

=IF(SUBTOTAL(3,A2:A2)=0,MIN($E$1:E1)-1,SUBTOTAL(3,$A$2:$A2))

并复制下来:

enter image description here

关于"助手"现在很酷。列是无论你如何过滤它,它总是显示一个简单的顺序序列....让我们过滤 Alice

enter image description here

这意味着任何单元格都可以:

  1. 检索 E
  2. 列中的值
  3. 从中减去 1
  4. Index()/ Match()公式中使用此值以检索上一个可见行中的任何值
  5. 修改#1:

    要回答您的问题,请在 C5 中输入:

    =INDEX($C$2:$C$21,MATCH(E5-1,$E$2:$E$21,0))
    

    且没有过滤 C5 会显示 $ 391.00
    但是 Alice 过滤 C5 会显示的 $ 446.00