TypeError: Невозможно прочитать свойство 'getFormula' со значением NULL (строка 3, файл "Код") - ФОРМУЛА URL - PullRequest
0 голосов
/ 26 февраля 2020

Я пытаюсь добавить пользовательскую формулу через Google Script Editor и продолжаю получать сообщение об ошибке в заголовке. Ниже приведена строка.

Ошибка типа: невозможно прочитать свойство 'getFormula' со значением NULL (строка 3, файл "Код") - URL-адрес FORMULA

function linkURL(reference) {
var sheet = SpreadsheetApp.getActiveSheet();
var formula = SpreadsheetApp.getActiveRange().getFormula()
var args = formula.match(/=\w+\((.*)\)/i);
try {
  var range = sheet.getRange(args[1]);
}
catch(e) {
throw new Error(args[1] + ' is not a valid range');
}
var formulas = range.getFormulas();
var output = [];
for (var i = 0; i < formulas.length; i++) {
  var row = [];
  for (var j = 0; j < formulas[0].length; j++) {
    var url = formulas[i][j].match(/=hyperlink\("([^"]+)"/i);
  row.push(url ? url[1] : '');
}
output.push(row);
}
return output

}

1 Ответ

1 голос
/ 26 февраля 2020

Кажется, это работает:

function getLink() {
  const ss=SpreadsheetApp.getActive();
  const sh=ss.getActiveSheet();
  let v=sh.getRange('You specify range').getFormula();
  v=v.match(/([^"]+)/g);
  Logger.log(v[1]);
}

Это может не работать в более старой и более медленной версии Apps Script. Попробуйте использовать версию ES6, включив V8

...