列出范围内的值,其中另一列的值等于 "Done"
List values from a range where it's value on another column is equal to "Done"
如何获取 A 列中的所有值,其中 B 列中的值等于 "Done" 作为另一个 sheet 上的下拉值?
假设 Sheet 1
:
Column A | Column B
Spongebob | In Progress
Patrick | Done
Mr. Krabs | In Progress
Squidward | Done
Gary | On Queue
然后 Sheet 2, Column A
:
Column A
Patrick
Squidward
在执行数据 > 数据验证然后在条件部分执行 select List from a range
时,它只会从该列获取所有值。
在你的Sheet 2
里,你可以把这个放在A1
里,然后往下拉:
=INDEX(Sheet1!$A:$A,SMALL(IF(Sheet1!$B:$B="Done",ROW(Sheet1!$B:$B)-MIN(ROW(Sheet1!$B:$B))+1,""),ROW(Sheet1!A1)))
注意:是数组公式,所以输入CTRL+SHIFT+ENTER
要隐藏错误,只需将 IFERROR()
包裹起来即可:
=IFERROR([that formula],"")
编辑:然后,要为经过验证的单元格创建列表,请创建结果所在的命名范围。我为 Sheet2!A1:A20
创建了命名范围 data
,您可以使用下拉列表:
如何获取 A 列中的所有值,其中 B 列中的值等于 "Done" 作为另一个 sheet 上的下拉值?
假设 Sheet 1
:
Column A | Column B
Spongebob | In Progress
Patrick | Done
Mr. Krabs | In Progress
Squidward | Done
Gary | On Queue
然后 Sheet 2, Column A
:
Column A
Patrick
Squidward
在执行数据 > 数据验证然后在条件部分执行 select List from a range
时,它只会从该列获取所有值。
在你的Sheet 2
里,你可以把这个放在A1
里,然后往下拉:
=INDEX(Sheet1!$A:$A,SMALL(IF(Sheet1!$B:$B="Done",ROW(Sheet1!$B:$B)-MIN(ROW(Sheet1!$B:$B))+1,""),ROW(Sheet1!A1)))
注意:是数组公式,所以输入CTRL+SHIFT+ENTER
要隐藏错误,只需将 IFERROR()
包裹起来即可:
=IFERROR([that formula],"")
编辑:然后,要为经过验证的单元格创建列表,请创建结果所在的命名范围。我为 Sheet2!A1:A20
创建了命名范围 data
,您可以使用下拉列表: