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

如何实现当Google表格一行中两个复选框均为真时自动删除该行?

Google表格自动删除双复选框勾选行的宏实现

一、编写脚本

打开你的Google表格,点击顶部菜单栏的「扩展程序」→「Apps脚本」,将默认代码替换为以下内容:

function deleteRowsWhenBothChecked() {
  const sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  const dataRange = sheet.getDataRange();
  const values = dataRange.getValues();
  
  // 从最后一行往前遍历,避免删除行后索引混乱
  for (let i = values.length - 1; i >= 0; i--) {
    const rowIndex = i + 1; // 表格行号从1开始
    const colA = values[i][0]; // A列对应数组第0位索引
    const colH = values[i][7]; // H列对应数组第7位索引
    
    // 检查A列和H列的复选框是否均为勾选状态(值为true)
    if (colA === true && colH === true) {
      sheet.deleteRow(rowIndex);
    }
  }
}

二、设置可安装触发器

为让脚本在编辑表格时自动触发,需配置可安装触发器:

  1. 在Apps脚本编辑器界面,点击左侧的「触发器」图标(时钟形状)
  2. 点击「添加触发器」按钮
  3. 在配置面板中选择:
    • 要运行的函数:deleteRowsWhenBothChecked
    • 部署类型:「Head deployments」
    • 事件源:「从电子表格」
    • 事件类型:「编辑时」
  4. 点击「保存」,按提示完成权限授权(首次运行需允许脚本访问你的表格)

三、注意事项

  • 确保A列和H列的复选框是通过「数据验证」设置的(值为布尔型true/false)
  • 脚本采用倒序遍历行,避免删除行后后续行索引偏移导致漏删
  • 若表格有表头,可根据表头行数调整循环起始位置(比如表头占1行,就从values.length - 2开始遍历)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.24 16:02:03