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

如何在Google Sheets中自动更改活动工作表标签颜色(而非仅名称变绿)

当然可以搞定!在Google Sheets里,咱们完全能通过Google Apps Script实现自动给当前活动的工作表标签设置颜色,可不是只改个名称颜色那么简单。下面一步步教你实现:

自动更改活动工作表标签颜色的具体步骤

1. 打开脚本编辑器

  • 打开你的Google Sheets文档
  • 点击顶部菜单栏的「扩展程序」→「Apps 脚本」,这会弹出一个新的脚本编辑器页面

2. 替换并粘贴脚本代码

把编辑器里默认的myFunction代码删掉,换成下面这段:

// 当用户切换工作表时自动触发
function onSheetChange(e) {
  // 获取当前文档里的所有工作表
  const allSheets = e.source.getSheets();
  // 定义活动工作表的标签颜色(这里用的亮绿色,可自行修改十六进制代码)
  const activeTabColor = "#00FF00";
  // 定义非活动工作表的标签颜色(null表示用默认颜色,也可以设成其他固定色)
  const inactiveTabColor = null;

  // 遍历所有工作表,设置对应标签颜色
  allSheets.forEach(sheet => {
    if (sheet.getSheetId() === e.source.getActiveSheet().getSheetId()) {
      // 当前活动工作表设置目标颜色
      sheet.setTabColor(activeTabColor);
    } else {
      // 非活动工作表设置默认/指定颜色
      sheet.setTabColor(inactiveTabColor);
    }
  });
}

// 手动测试用函数(可选,第一次运行可以用它来授权)
function testActiveTabColor() {
  const currentSpreadsheet = SpreadsheetApp.getActiveSpreadsheet();
  const allSheets = currentSpreadsheet.getSheets();
  const activeSheet = currentSpreadsheet.getActiveSheet();
  const activeTabColor = "#00FF00";
  const inactiveTabColor = null;

  allSheets.forEach(sheet => {
    sheet.setTabColor(sheet === activeSheet ? activeTabColor : inactiveTabColor);
  });
}

3. 代码逻辑说明

  • onSheetChange是Google Sheets的简单触发器,只要用户切换工作表,这个函数就会自动运行
  • 代码会先获取所有工作表,然后判断哪一个是当前激活的工作表,给它设置你指定的标签颜色,剩下的工作表则恢复默认(或者你设置的其他颜色)
  • 颜色值用十六进制代码就行,比如红色#FF0000、深蓝色#00008B,你可以按需修改

4. 授权并测试

  • 点击脚本编辑器顶部的运行按钮(▶️),第一次运行会弹出授权请求,按照提示完成授权(放心,这是Google官方的授权流程,不会泄露你的数据)
  • 回到你的Sheets文档,切换不同的工作表,就能看到当前活动的工作表标签已经变成你设置的颜色啦

自定义小技巧

  • 如果你想让非活动工作表也有固定颜色,比如灰色,只需要把inactiveTabColor改成#CCCCCC就行
  • 可以随时修改activeTabColor的值,换成你喜欢的任何颜色

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.13 07:27:25