【问题标题】:script to clear note from unchecked checkbox从未选中的复选框中清除注释的脚本
【发布时间】:2020-02-08 03:25:32
【问题描述】:

我不是程序员,但我喜欢不时玩弄脚本作为一种爱好。

我构建了一个电子表格,通过将来自不同来源的代码拼凑在一起,在每次选中复选框时捕获“注释”中的时间戳。但是,未选中时,我无法清除复选框中的注释。

代码示例

function onEdit(e) {
  if(e.value != "TRUE") return;
e.source.getActiveSheet().getRange(e.range.rowStart,e.range.columnStart).setNote('Completed: ' + Utilities.formatDate(new Date(), SpreadsheetApp.getActive().getSpreadsheetTimeZone(), "dd-MM-yy HH:mm:ss"));
}

附注:这可以用 cmets 代替 notes 吗?

【问题讨论】:

  • 您好,只是想检查一下这个问题是否还在影响您?

标签: google-apps-script checkbox google-sheets scripting


【解决方案1】:

试试这个:

function onEdit(e) {
  if(e.range.getSheet().getName()!='Sheet1')return;//Limits action to one sheet
  //e.source.toast('flag1');
  if(e.range.columnStart==1 && e.value == "TRUE") {//I have the checkboxes in columnA
    //e.source.toast('flag2');
    e.range.setNote('Completed: ' + Utilities.formatDate(new Date(), SpreadsheetApp.getActive().getSpreadsheetTimeZone(), "dd-MM-yy HH:mm:ss"));//sets note to completed
  }
  if(e.range.columnStart==1 && e.value == "FALSE") {
    //e.source.toast('flag3');
    e.range.setNote('');//Clears note
  }
}

在你的情况下,这可能是你想要的。

function onEdit(e) {
  if(e.value == "TRUE") {
    e.range.setNote('Completed: ' + Utilities.formatDate(new Date(), SpreadsheetApp.getActive().getSpreadsheetTimeZone(), "dd-MM-yy HH:mm:ss"));
  }
  if(e.value == "FALSE") {
    e.range.setNote('');
  }
}

【讨论】:

  • 不幸的是,范围更广。我有多个工作表,到处都是复选框(不是真正结构化的)
  • 那看看我的加法。
  • 我已经尝试过了,但这并没有删除笔记。我也试过'clearNote'。也试过 setnote ('')
  • 对我有用。我在许多任意位置的其他工作表中添加了复选框。
  • 当我说它对我不起作用时,我指的是专门删除评论
【解决方案2】:

试试这个:

function onEdit(e) {
  if(e.value == "FALSE"){ 
    e.range.clearNote();
    return;
  }
  e.range.setNote('Completed: ' + Utilities.formatDate(new Date(), SpreadsheetApp.getActive().getSpreadsheetTimeZone(), "dd-MM-yy HH:mm:ss"));
}

您的代码是正确的,您只需要删除if 语句中的注释,如果值为"FALSE",我使用clearNote() (Documentation here) 删除它们@ 注释本身可能仍然可见取消选中该框后一秒钟,但它会消失并从单元格中删除。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-11-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-10
    • 1970-01-01
    • 2023-03-11
    • 1970-01-01
    相关资源
    最近更新 更多