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

如何按条件填充Google Sheet空白单元格:同组邮箱用相同编码

填充Google Sheet分组邮箱的对应编码

方法一:用数组公式自动填充

在B2单元格直接输入以下公式,回车后即可自动填充所有空白的编码:

=ARRAYFORMULA(IF(A:A="Email", "", IF(B:B<>"", B:B, LOOKUP(2, 1/(A$1:A1="Email")*(B$1:B1<>""), B$1:B1))))

公式原理

  • 跳过A列为「Email」的行,保持B列空白
  • 若B列已有值,直接保留原值
  • 对B列空白单元格,向上查找最近的「Email」标记之后的第一个非空编码,并填充该值,确保同一组内编码一致

方法二:用Google Apps Script批量处理

如果数据量较大,或者需要重复执行填充操作,用脚本更高效:

  1. 打开表格,点击「扩展程序」→「Apps 脚本」
  2. 替换默认代码为以下内容:
function fillBlankCodes() {
  const sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  const data = sheet.getDataRange().getValues();
  let currentCode = "";
  let inGroup = false;

  for (let i = 0; i < data.length; i++) {
    const aCell = data[i][0];
    const bCell = data[i][1];

    if (aCell === "Email") {
      currentCode = "";
      inGroup = true;
      continue;
    }

    if (inGroup) {
      bCell !== "" ? currentCode = bCell : data[i][1] = currentCode;
    }
  }

  sheet.getDataRange().setValues(data);
}
  1. 点击「运行」,完成授权后即可自动填充所有空白单元格。

脚本逻辑

  • 遍历所有行,遇到「Email」时切换到新组,并重置当前编码
  • 在组内记录第一个出现的编码,后续空白单元格直接复用该编码
  • 最后批量更新表格数据,避免逐行操作的冗余

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.26 14:22:25