如何用单个Excel公式将多工作表A、B列VSTACK结果并排显示?
解决方案
首先修正你公式里的笔误:b变量应该引用各工作表的B列,而非重复A列。要实现两列合并结果并排显示,只需用HSTACK函数将过滤后的A、B列数组横向组合,同时保证过滤条件统一即可。
最终公式
=LET( a, VSTACK(Sheet1!A1:A100, Sheet2!A1:A230, Sheet3!A1:A103), b, VSTACK(Sheet1!B1:B100, Sheet2!B1:B230, Sheet3!B1:B103), FILTER(HSTACK(a, b), a <> "") )
逻辑说明
VSTACK分别合并所有目标工作表的A列、B列数据,存入变量a和bHSTACK(a, b)将两列数据横向拼接为一个二维数组FILTER基于A列非空的条件筛选数组,最终得到无空行的并排合并结果
扩展:同时过滤A/B列空行
若需要剔除任意一列为空的行,可修改过滤条件:
=LET( a, VSTACK(Sheet1!A1:A100, Sheet2!A1:A230, Sheet3!A1:A103), b, VSTACK(Sheet1!B1:B100, Sheet2!B1:B230, Sheet3!B1:B103), FILTER(HSTACK(a, b), a <> "" * b <> "") )
内容的提问来源于stack exchange,提问作者Ecsizemore
相关产品推荐
相关产品推荐

