簡體   English   中英

Google App Scripts - 如何根據另一個單元格清除多個單元格的內容?

[英]Google App Scripts - How to clear multiple cells' content based on another cell?

我試圖檢查列的值是否包含“No Show”一詞,如果一個單元格具有該值,我需要它刪除同一行上的一些單元格,例如,如果 I5 列的值是“No Show”,我需要清除單元格 B5、C5、D5、F5、G5。 我試圖寫一些東西,但它不起作用,我對此相對較新。 謝謝您的幫助

我相信你的目標如下。

  • 當每行的“I”列的值為“ No Show ”時,您要清除“B”、“C”、“D”、“F”和“G”列的單元格值。
  • 您想使用 Google Apps 腳本實現此目的。

在這種情況下,我想建議使用 TextFinder 和 Class RangeList 的clearContent()方法。 示例腳本如下。

示例腳本:

請將以下腳本復制並粘貼到 Google 電子表格的腳本編輯器中並設置您要使用的工作表名稱,然后在腳本編輯器中運行 function myFunction

function myFunction() {
  const sheetName = "Sheet1"; // Please set the sheet name.

  const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(sheetName);
  const ranges = sheet
    .getRange("I1:I" + sheet.getLastRow())
    .createTextFinder("No Show")
    .matchCase(true)
    .findAll()
    .flatMap(r => {
      const row = r.getRow();
      return ["B", "C", "D", "F", "G"].map(e => e + row);
    });
  if (ranges.length > 0) sheet.getRangeList(ranges).clearContent();
}
  • 運行此腳本時,當每行的“I”列的值為“ No Show ”時,“B”、“C”、“D”、“F”和“G”列的單元格值將被清除。
  • 關於No Show的搜索值,當要勾選No Showno show等時,請去掉.matchCase(true)

參考:

暫無
暫無

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

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