如何用arrayformula在Google Sheets中高效合并两列为指定格式单列
高效实现Google Sheets两列转指定格式单列的ArrayFormula方案
直接在C2单元格输入以下公式即可实现需求:
=ARRAYFORMULA(FLATTEN(IF(A2:A="",,{"ADR $"&A2:A;"OVERWRITE "&TRIM(REGEXREPLACE(B2:B,".{2}","$0 "))})))
公式说明:
- ARRAYFORMULA:批量处理整列数据,无需手动下拉填充,新数据行添加后会自动适配
- IF(A2:A="",, ...):跳过A列为空的行,避免生成无效内容
- {"ADR $"&A2:A;"OVERWRITE "&TRIM(REGEXREPLACE(B2:B,".{2}","$0 "))}:构造垂直数组,第一行是添加前缀的A列内容,第二行是处理后的B列内容(
REGEXREPLACE实现每两位加空格,TRIM去除末尾多余空格) - FLATTEN:将二维数组展开为一维,实现每行A、B内容依次排列的效果
优势对比:
相比你之前用FLATTEN()+CONCATENATE()的方案,这个写法更简洁直接,逻辑清晰,减少了不必要的字符串拼接步骤,计算效率更高,且原生支持自动扩展,完全符合“可下拉无限重复”的需求。
内容的提问来源于stack exchange,提问作者changjx
相关产品推荐
相关产品推荐

