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

Google Sheets:A列空单元格用上方最近非空值与B列合并

Google Sheets 合并列并继承上方非空值优化SEO

问题核心

需要合并A列(空值自动继承最近上方非空值)与B列,将所有空格、特殊字符替换为连字符并转小写,生成SEO友好的字符串。原公式仅处理A列非空的情况,空值时无法正确合并。

解决方案公式

=ARRAYFORMULA(
  IF(B:B="", "",
    LOWER(
      REGEXREPLACE(
        REGEXREPLACE(
          VLOOKUP(ROW(A:A), FILTER({ROW(A:A), A:A}, A:A<>""), 2, TRUE) & "-" & B:B,
          "[^a-zA-Z0-9]", "-"
        ),
        "-+", "-"
      )
    )
  )
)

公式拆解

  • VLOOKUP(ROW(A:A), FILTER({ROW(A:A), A:A}, A:A<>""), 2, TRUE):通过行号匹配,为每行自动查找上方最近的非空A列值,解决空值继承问题。
  • REGEXREPLACE(..., "[^a-zA-Z0-9]", "-"):将所有非字母、数字的字符(包括空格、特殊符号)统一替换为连字符。
  • REGEXREPLACE(..., "-+", "-"):合并连续的多个连字符为单个,避免出现--这类无效格式。
  • LOWER():将最终字符串转为全小写,符合SEO URL的规范。
  • IF(B:B="", "", ...):跳过B列为空的行,避免生成无意义的连字符字符串。

使用说明

  1. 将公式粘贴到目标列的第一行(比如C1),ARRAYFORMULA会自动应用到整列。
  2. 如果需要保留特定字符(比如下划线),可以修改第一个正则表达式为"[^a-zA-Z0-9_]"。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 21:12:49