我们可以在Google Script上使用getRange()选择整个电子表格吗?

时间:2019-11-25 11:39:32

标签: google-apps-script google-sheets spreadsheet

想知道是否可以使用getRange()选择整个电子表格吗?我正在尝试自动清除电子表格,这是我的代码:

function clearRange() {
  var sheet = SpreadsheetApp.getActive().getSheetByName();
  sheet.getRange().clearContent();
}

当我在用该代码制作的菜单上选择此选项时,我希望它清除整个电子表格:

function onOpen() {
 var menu = SpreadsheetApp.getActiveSpreadsheet(),
     options = [
      {name:"Update", functionName:"runQuery"},
      {name:"Clear Sheet", functionName:"clearRange"}
     ];
 menu.addMenu("Menu", options);
}

不幸的是,当我执行clearRange时,它说:

  

找不到方法getSheetByName()

我不知道如何解决它,我试图使它采用当前电子表格的名称,而对于clearRange一样,我试图确保它清除了该电子表格中的所有内容< / p>

1 个答案:

答案 0 :(得分:3)

您可以使用getDataRange()来完成此操作,该方法将返回与存在数据的维度相对应的范围。

另外,您必须在方括号中输入工作表名称。

示例:

function clearRange() {
  var sheet = SpreadsheetApp.getActive().getSheetByName('Sheet1');
  sheet.getDataRange().clearContent();
}