You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Google Sheets按条件将对应列名合并填入指定列的公式如何编写

Google Sheets 多分类列名自动拼接公式方案

基础单格公式(需手动下拉填充)

假设你的表头行是第1行,分类列(sports/action/comedy/history)对应C列-F列,genre列是B列,数据从第2行开始,直接在B2单元格输入如下公式:

=TEXTJOIN(", ", TRUE, IF(C2:F2="X", $C$1:$F$1, ""))
  • 新版本Google Sheets直接回车即可生效,旧版本需要按Ctrl+Shift+Enter启用数组计算
  • 你可以根据实际的分类列范围,修改公式里的C2:F2(当前行分类列的选中范围)、$C$1:$F$1(分类列表头的固定范围)
  • 如果你的标记是小写x,可把判断条件改成UPPER(C2:F2)="X"适配大小写,不用修改原有标记

自动整列填充公式(无需手动下拉)

如果要实现新增数据自动计算,不需要每次手动下拉公式,在B2单元格输入如下公式即可覆盖整列有效数据:

=BYROW(C2:F, LAMBDA(row, IF(COUNTA(row)=0, "", TEXTJOIN(", ", TRUE, IF(row="X", C1:F1, "")))))
  • 公式内置空行判断,没有数据的行不会生成无效空值
  • 可根据实际列范围调整C2:F、C1:F1两个参数

核心逻辑说明

  • IF(C2:F2="X", $C$1:$F$1, ""):逐格判断当前行分类列是否标记X,是则返回对应列名,否则返回空值
  • TEXTJOIN(", ", TRUE, ...):用, 作为分隔符拼接所有非空结果,第二个参数设为TRUE会自动忽略空值,不会产生多余逗号
  • BYROW+LAMBDA:逐行遍历分类列范围,自动对每一行执行拼接逻辑

内容的提问来源于stack exchange,提问作者Digital Moniker

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.10 13:15:02