如何在Google Sheets中用ArrayFormula合并每行非空单元格?
Google Sheets:用单个ArrayFormula批量合并每行非空单元格
我需要处理区域A2:F15(包含数值和空单元格),希望通过单个ArrayFormula公式一次性合并每行的非空单元格。目前我写的公式仅能处理单行,不支持数组批量计算:
=TEXTJOIN(", ",,TRANSPOSE(QUERY(FLATTEN(A2:F2)," where Col1 is not null ")))
解决方案
使用BYROW结合FILTER和TEXTJOIN的数组公式可以实现需求:
=ARRAYFORMULA(BYROW(A2:F15, LAMBDA(row, TEXTJOIN(", ",,FILTER(row, row<>"")))))
公式说明
BYROW(A2:F15, LAMBDA(row, ...)):遍历目标区域的每一行,将每行数据传入后续处理逻辑FILTER(row, row<>""):筛选当前行中的非空单元格TEXTJOIN(", ",, ...):以逗号加空格作为分隔符,合并筛选后的非空内容ARRAYFORMULA:确保公式批量应用到所有行,无需手动下拉填充
内容的提问来源于stack exchange,提问作者Osm
相关产品推荐
相关产品推荐

