TypeError: Невозможно вызвать метод "getRange" со значением NULL. (строка 4, файл «Код» - PullRequest
0 голосов
/ 19 января 2019

Я пытаюсь удалить определенные строки, содержащие определенную строку «X».

function deleteRows() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var s = ss.getSheetByName('delete containing');
  var r = s.getRange('A:A');
  var v = r.getValues();
  for(var i=v.length-1;i>=0;i--)
    if(v[0,i]=='Substitution: ')
      s.deleteRow(i+1);
};

Но я получаю ошибку ниже:

TypeError: Невозможно вызвать метод "getRange of null. (Строка 4, файл" Код ").

Может кто-нибудь помочь мне решить эту ошибку? Спасибо

enter image description here enter image description here

1 Ответ

0 голосов
/ 19 января 2019

Из документации : getSheetByName () "Возвращает ноль, если нет листа с заданным именем." Так что вам нужно с этим справиться, смотрите вставленный блок if:

function deleteRows() {
    var ss = SpreadsheetApp.getActiveSpreadsheet();
    var s = ss.getSheetByName('delete containing');
    if (s === null) {
      ui = SpreadsheetApp.getUi();
      ui.alert("No worksheet of that name"); // Note: displays in the worksheet GUI, not the scripts editor.
      return false;
    }
    var r = s.getRange('A:A');
    var v = r.getValues();
    for(var i=v.length-1;i>=0;i--)
      if(v[0,i]=='Substitution: ') // [sic] jshint kicking up a storm about this line!
        s.deleteRow(i+1);
  }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...