如何用FILTER公式从SourceTable筛选指定列到Dashboard动态表格
动态提取指定列的筛选表格解决方案
要实现只提取SourceTable中Status为"report"行的第1、6、7列,且表格能随源数据动态更新,可使用以下两种方法:
方法1:兼容多数Excel版本(INDEX+FILTER组合)
在Dashboard工作表的目标起始单元格(如A1)输入公式:
=INDEX(FILTER(SourceTable,SourceTable[Status]="report"),SEQUENCE(ROWS(FILTER(SourceTable,SourceTable[Status]="report"))),{1,6,7})
公式说明:
FILTER(SourceTable,SourceTable[Status]="report"):先筛选出所有Status列值为"report"的行SEQUENCE(ROWS(...)):生成对应筛选结果的行号序列,确保所有符合条件的行都被提取{1,6,7}:指定要提取的列序号(对应源表的第1、6、7列)
方法2:Excel 365/2021及以上版本(简洁的CHOOSECOLS+FILTER)
在目标起始单元格输入公式:
=CHOOSECOLS(FILTER(SourceTable,SourceTable[Status]="report"),1,6,7)
公式说明:
先通过FILTER筛选出符合条件的行,再用CHOOSECOLS直接提取第1、6、7列,公式会自动溢出成动态表格,后续源表数据更新时,Dashboard的表格会同步自动调整行数和内容。
最终效果:
执行公式后,Dashboard工作表会生成如下动态表格:
| Column 1 | Column 6 | Column 7 |
|---|---|---|
| name 4 | value 6.4 | value 7.4 |
| name 5 | value 6.5 | value 7.5 |
| name 6 | value 6.6 | value 7.6 |
| name 7 | value 6.7 | value 7.7 |
内容的提问来源于stack exchange,提问作者CalebGates
相关产品推荐
相关产品推荐

