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

如何用公式或脚本实现Google Sheets中A列与B列全值拼接?

在Google Sheets中批量生成两列所有值的拼接组合

方法一:使用内置公式实现

如果你的Google Sheets支持CROSSJOIN函数(较新版本已支持),可以用以下简洁公式直接生成结果:

=ARRAYFORMULA(QUERY(CROSSJOIN(A1:A3, B1:B3), "select Col1&Col2"))
  • CROSSJOIN(A1:A3, B1:B3):生成A列和B列的笛卡尔积(所有两两组合)
  • QUERY(..., "select Col1&Col2"):将笛卡尔积的两列值拼接
  • ARRAYFORMULA:确保公式批量生效

如果你的版本不支持CROSSJOIN,可以用兼容版公式:

=ARRAYFORMULA(INDEX(A:A, CEILING(SEQUENCE(ROWS(A1:A3)*ROWS(B1:B3))/ROWS(B1:B3)))&INDEX(B:B, MOD(SEQUENCE(ROWS(A1:A3)*ROWS(B1:B3))-1, ROWS(B1:B3))+1))

原理:通过SEQUENCE生成总结果行数,用CEILING循环匹配A列值,MOD循环匹配B列值,最后拼接。

方法二:使用Google Apps Script自定义函数

如果公式满足不了需求,可通过脚本实现更灵活的拼接:

  1. 打开你的Google Sheets,点击菜单栏「扩展程序」→「Apps 脚本」
  2. 删除默认代码,粘贴以下脚本:
function CONCAT_ALL(rangeA, rangeB) {
  const result = [];
  // 遍历A列每个值
  rangeA.forEach(rowA => {
    const valA = rowA[0];
    // 遍历B列每个值,拼接后存入结果数组
    rangeB.forEach(rowB => {
      const valB = rowB[0];
      result.push([valA + valB]);
    });
  });
  return result;
}
  1. 保存脚本(可命名为「ConcatAll」),回到表格
  2. 在任意单元格输入公式调用:
=CONCAT_ALL(A1:A3, B1:B3)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 01:05:34