Excel跨工作表同步列数据及条件筛选的公式问题咨询
Excel跨表引用及筛选的可行方案
需求1:全量展示Sheet1 B列内容到Sheet2 A列
适用Excel 365/2021及以上版本
直接在Sheet2的A1单元格输入下方公式,无需额外操作,内容会自动向下溢出填充整列:=Sheet1!B:B
如果需要过滤空单元格默认显示的0值,可以改用:=IF(Sheet1!B:B="","",Sheet1!B:B)
适用Excel 2019及更早版本
- 点击Sheet2的A1单元格,输入公式:
=IF(INDEX(Sheet1!B:B,ROW())="","",INDEX(Sheet1!B:B,ROW())) - 鼠标选中A1单元格右下角的填充柄,向下拖动到你需要的最大行即可完成填充。
说明:你之前输入数组公式仅返回第一个值,是因为旧版本Excel的数组公式需要先选中对应大小的输出区域,再按CTRL+SHIFT+ENTER确认,否则只会返回首个单元格的计算结果。
需求2:筛选Sheet1 B列非空且值为TRUE的内容到Sheet2 A列
适用Excel 365/2021及以上版本
直接在Sheet2的A1单元格输入动态数组公式,匹配结果会自动溢出填充:=FILTER(Sheet1!B:B,(Sheet1!B:B<>"")*(Sheet1!B:B=TRUE),"无匹配数据")
适用Excel 2019及更早版本
使用数组公式组合实现:
- 点击Sheet2的A1单元格,输入公式:
=IFERROR(INDEX(Sheet1!B:B,SMALL(IF((Sheet1!B$1:B$1000<>"")*(Sheet1!B$1:B$1000=TRUE),ROW($1:$1000),99999),ROW(A1))),"")
注意:公式中的B$1000、$1:$1000可以根据你实际的最大数据行修改,尽量不要整列引用避免卡顿 - 按下
CTRL+SHIFT+ENTER三键确认输入,再拖动A1单元格的填充柄向下填充到足够的行即可,无匹配结果时会显示为空。
内容的提问来源于stack exchange,提问作者JamesReed68
相关产品推荐
相关产品推荐

