过滤数组时如何堆叠FILTER函数?解决数组字面量缺失值报错
解决Google Sheets数组堆叠FILTER函数的行不匹配错误
你遇到的「数组字面量中一个或多个行缺少值」错误,本质是两个FILTER函数返回的结果列数不一致:
- 第一个FILTER提取了
Master Sheet的C:D(2列)+ E:E(1列),总共3列数据 - 第二个FILTER提取了
Manual Addition的A:A(1列)+ C:C(1列),总共2列数据
数组堆叠(用;换行拼接)要求上下两个数组的列数必须完全相同,否则无法对齐,就会触发这个错误。
两种修复方案:
方案1:给第二个FILTER补空列,对齐3列
修改函数,在Manual Addition的A列和C列之间添加空值列"",让结果也变成3列:
={ FILTER( {'Master Sheet'!$C$2:$D,'Master Sheet'!$E$2:$E},SEARCH("*",'Master Sheet'!$E$2:$E)) ; FILTER( {'Manual Addition'!$A$2:$A,"",'Manual Addition'!$C$2:$C}, SEARCH("*",'Manual Addition'!$C$2:$C)) }
方案2:调整第一个FILTER的列数,对齐2列
如果不需要Master Sheet的D列,可以直接去掉该列,让两个FILTER都返回2列:
={ FILTER( {'Master Sheet'!$C$2:$C,'Master Sheet'!$E$2:$E},SEARCH("*",'Master Sheet'!$E$2:$E)) ; FILTER( {'Manual Addition'!$A$2:$A,'Manual Addition'!$C$2:$C}, SEARCH("*",'Manual Addition'!$C$2:$C)) }
调整后,两个FILTER的返回列数一致,堆叠后就能正常运行。
内容的提问来源于stack exchange,提问作者Kevin PK
相关产品推荐
相关产品推荐

