簡體   English   中英

根據谷歌表中的值清除行數據(特定數據)appscript

[英]Clear Row Data Based on Value in Google Sheet ( Specific Data ) appscript

我正在尋找基於值的清除特定行內容/數據,然后隱藏行。

在 { F Col } 中輸入值“Done” 清除 { E, C Col } 的值

當一切都完成后,隱藏行。

在此處輸入圖像描述

function ClearContentThenHideRow() {
  var s = SpreadsheetApp.getActive().getSheetByName('Main');
  s.showRows(1, s.getMaxRows());
  
  s.getRange('F:F')
    .getValues()
    .forEach( function (r, i) {
    if (r[0] == 'Done') 
      //sheet.getRange(["C:C","E:E"]).clearContent(); // clear content not working 
      s.hideRows(i + 1);
    });
}

修改點:

  • 關於sheet.getRange(["C:C","E:E"]).clearContent(); ,
    • sheet未聲明。
    • 當您想使用范圍列表時,請使用getRangeList()
  • 當使用s.getRange('F1:F' + s.getLastRow())代替s.getRange('F:F')時,我認為可以減少一點流程成本。

當以上幾點反映到您的腳本時,它變成如下。

修改后的腳本:

function ClearContentThenHideRow() {
  var s = SpreadsheetApp.getActive().getSheetByName('Main');
  // s.showRows(1, s.getMaxRows()); <--- removed
  s.getRange('F1:F' + s.getLastRow())
    .getValues()
    .forEach(function (r, i) {
      if (r[0] == 'Done') {
        s.getRangeList(["C" + (i + 1), "E" + (i + 1)]).clearContent();
        s.hideRows(i + 1);
      }
    });
}

參考:

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM