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

GAS 如何使用脚本为工作表中的所有空单元格设置格式

Google Apps Script 实现工作表空白单元格设置白色背景方案

以下方案适配GAS新手,逻辑简单易懂,不需要额外配置条件格式,直接运行脚本即可生效。

操作前置步骤

  • 打开目标Google表格,点击顶部菜单栏「扩展程序」>「Apps 脚本」,进入脚本编辑器,删除编辑器内默认的空白模板代码。

可用脚本代码

代码已加新手易懂的注释,直接复制粘贴即可使用:

function setWhiteBackgroundForBlankCells() {
  // 获取当前打开的表格文件
  const spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
  // 取当前激活的工作表,若要指定固定工作表可替换为 getSheetByName("你的工作表名称")
  const targetSheet = spreadsheet.getActiveSheet();
  // 取工作表内有内容的最大范围,避免遍历整张表格的无效单元格
  const usedRange = targetSheet.getDataRange();
  const cellValues = usedRange.getValues();
  // 存储空白单元格位置,用于批量修改
  const blankCellList = [];

  // 遍历所有有内容的单元格
  for (let rowIndex = 0; rowIndex < cellValues.length; rowIndex++) {
    for (let colIndex = 0; colIndex < cellValues[rowIndex].length; colIndex++) {
      // 判定单元格为空白:空值、空字符串都算
      if (cellValues[rowIndex][colIndex] === "" || cellValues[rowIndex][colIndex] == null) {
        // GAS行列计数从1开始,索引需要+1
        blankCellList.push(targetSheet.getRange(rowIndex + 1, colIndex + 1).getA1Notation());
      }
    }
  }

  // 批量设置背景色
  if (blankCellList.length > 0) {
    targetSheet.getRangeList(blankCellList).setBackground("#ffffff");
  }
  SpreadsheetApp.getUi().alert("空白单元格白色背景设置完成,共处理" + blankCellList.length + "个空白单元格");
}

运行步骤

  • 粘贴代码后点击编辑器顶部的保存按钮,自定义命名项目,按照系统提示完成Google账号授权(首次运行需要授权,属于GAS的正常安全验证流程)
  • 保存完成后,在编辑器顶部的函数选择下拉框选中setWhiteBackgroundForBlankCells,点击运行按钮即可。

可选调整说明

  • 若要处理多个工作表,可以在代码里增加遍历所有工作表的逻辑,不需要重复运行
  • 若表格数据量超过10万单元格,可以优化为按行合并空白范围,减少API调用次数,进一步提升运行效率,普通大小的表格直接用当前代码即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 06:24:03