【问题标题】:Google Sheets: Change colour/highlight active spreadsheet tabGoogle 表格:更改颜色/突出显示活动的电子表格标签
【发布时间】:2019-05-09 09:09:07
【问题描述】:

有没有办法在 Google 表格中自动更改活动工作表的标签颜色,而不仅仅是将工作表名称更改为绿色?

【问题讨论】:

  • “工作表名称变为绿色”?
  • 目前,在活动工作表上工作时,选项卡名称颜色将为绿色。
  • 我已经尝试过了,但是 1. 它似乎对我不起作用 2. 我试图避免在脚本中插入工作表名称
  • 尝试使用onEdit 触发器并使用.getActiveSheet() 而不是插入工作表名称。
  • 我相信这会起作用,但是我对 Google 表格中的脚本非常陌生,所以这会永久更改颜色,而不仅仅是在工作表处于活动状态时。可以提供脚本吗?

标签: google-apps-script google-sheets colors tabs


【解决方案1】:

只是根据 google 在Class Sheet Documentation 中提供的.setTabColor() 脚本示例编写的。

function onEdit() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheets = ss.getSheets();
  var numSheets = ss.getNumSheets();
  var active = ss.getActiveSheet();
  var tabCol = active.getTabColor();

  if (tabCol == null) {
    //loop through all sheets and clear tab colour.
    for (var i = 0; i < numSheets; i++) {
      sheets[i].setTabColor(null);
    }
    active.setTabColor("ff0000"); //change ff0000 to whatever colour hex value you'd like. 
  }
}

基本上,此脚本将检查您当前正在编辑的工作表是否分配了颜色,如果有,则它什么也不做,如果没有,它会给它一个颜色。我已经包含一个基本的 for 循环来遍历所有工作表并清除它们的颜色,这样只有您当前正在编辑的工作表才会分配颜色。

【讨论】:

  • 罗斯干杯!在选项卡之间切换而不需要进行编辑时,有什么方法可以使这项工作?
  • 除了使用时间触发器以荒谬的速度运行脚本之外,我不知道你还能如何完成。
  • 嗯,会用你的解决方案。感谢您的帮助和坚持!
猜你喜欢
  • 2014-10-02
  • 2015-02-28
  • 2013-04-22
  • 2014-01-18
  • 1970-01-01
  • 1970-01-01
  • 2012-04-25
  • 2013-07-17
  • 1970-01-01
相关资源
最近更新 更多