根据另一列

时间:2015-07-08 11:57:24

标签: excel reference cells

以下是我要参考的表格:

**A**         **B**
----------------------
TRUE          ID 100
FALSE         0
FALSE         0
FALSE         0
FALSE         0
TRUE          ID 811
FALSE         0
FALSE         0
FALSE         0
TRUE          ID 742

基本上我想要做的就是列出行A中的单元格,其中行A为真。或者甚至在行B不为0的情况下。结果应该如下所示:

**A**          
ID 100
ID 811
ID 742

我确信必须有一个简单的方法来做到这一点,但我似乎无法解决这个问题?

非常感谢您提前提供任何帮助。

1 个答案:

答案 0 :(得分:1)

C1 中输入:

=IF( A1,1,"")

C2 中输入:

=IF(A2,1+MAX($C$1:C1),"")

并复制下来。列 C "标记"期望值。然后在 D1 中输入:

=IF(ROWS($1:1)>MAX(C:C),"",INDEX(B:B,MATCH(ROW(),C:C,0)))

并复制下来。一个例子:

enter image description here

注意:

此方法避免使用数组公式。

修改#1:

如果你不介意数组公式,那么在 C1 中输入数组公式:

=IFERROR(INDEX($B$1:$B$15,SMALL(IF($A$1:$A$15,ROW($A$1:$A$15)-MIN(ROW($A$1:$A$15))+1,""),ROW(A1))),"")

并复制下来。

必须使用 Ctrl + Shift + 输入输入

数组公式,而不仅仅是输入 key。