Google Sheets公式如何按条件返回空单元格并自动填充数据
Google Sheets数组公式空值适配方案
问题原因
原有公式未加入空值判断逻辑,即使sheet2对应行没有录入数据,也会拼接出仅包含空格的非空内容,导致第三张工作表对应行始终有显示内容。
修复后公式
=ARRAYFORMULA(IF(TRIM('sheet2'!A2:A&'sheet2'!B2:B)="",,"WORD"&" "&sheet1!$B$20&" "&'sheet2'!A2:A&" "&sheet1!$B$17&'sheet2'!B2:B))
逻辑说明
- 嵌套的IF判断会先校验sheet2对应行的A、B列内容拼接后去除首尾空格是否为空,为空则说明当前行无有效数据,直接返回空值,不会显示多余的空格字符
- 仅当sheet2对应行存在有效数据时,才执行原本的字符串拼接逻辑
之前IF报错的常见原因
嵌套IF时没有把数组范围传入IF的判断参数,或是没有将完整逻辑包裹在ARRAYFORMULA内部,Google Sheets数组公式要求所有涉及多单元格范围的逻辑都要在ARRAYFORMULA作用范围内才能逐行计算。
自定义调整说明
如果需要修改触发拼接的条件,比如要求sheet2对应行A、B两列都有内容才执行拼接,可将判断条件替换为AND('sheet2'!A2:A<>"", 'sheet2'!B2:B<>"")即可。
内容的提问来源于stack exchange,提问作者Christian Velev
相关产品推荐
相关产品推荐

