当回复被清除时,谷歌电子表格不会从顶部开始。

问题描述 投票:2回答:1

我有一个表格,将表格的数据输入到一个谷歌电子表格中。这些数据是按提交顺序排列的。

当我清除电子表格的内容时,下一个数据被输入,如果其他数据存在,X数或行。

  1. 数据
  2. 资料

清楚

  1. (空)
  2. (空)
  3. 资料

以下是我用来清除内容的脚本。

function clear() {
  var sheet =   SpreadsheetApp.openByUrl('https://docs.google.com/spreadsheets/d/1IEcXuEtkwVmnOEeQE71YQcZTrSkFa1OjlP8JpXGonHk/edit#gid=2015797647').getSheetByName('Form Responses 1');
  var lastRow = sheet.getLastRow();
  var lastCol = sheet.getLastColumn();
  var range = sheet.getRange(2,2,lastRow,lastCol);
  range.clearContent();

我应该用不同的方式来清除或选择要清除的数据吗?

或者有没有一种方法可以删除行,保持电子表格的格式?

google-apps-script google-sheets google-form
1个回答
4
投票

你应该简单地删除行,而不是清除其内容。

    function clear() {
  //    var sheet =   SpreadsheetApp.getActive().getSheetByName('Form Responses 1');
      var sheet =   SpreadsheetApp.openByUrl('https://docs.google.com/spreadsheets/d/1IEcXuEtkwVmnOEeQE71YQcZTrSkFa1OjlP8JpXGonHk/edit#gid=2015797647').getSheetByName('Form Responses 1');
      var lastRow = sheet.getLastRow();
      sheet.deleteRows(2,lastRow-1);
    }

如果你想在你的工作表中保持可用行的总数(这不是真的有必要,因为响应会自动插入新的行,但谁知道......),在代码的最后添加这行。

  sheet.insertRows(2,lastRow-1);
© www.soinside.com 2019 - 2024. All rights reserved.