Как получить namedRanges по имени в проекте GAS для Google Doc Add-on - PullRequest
0 голосов
/ 10 июля 2019

Я разрабатываю надстройку для Документов Google, используя сценарии Google App. Я хочу добавить и получить namedRanges в документе. Я устанавливаю namedRange для документа следующим образом

var rangeBuilder = doc.newRange();
rangeBuilder.addElement(textObj, urlObj.startOffset, urlObj.endOffset);
doc.addNamedRange(RangeManager.name, rangeBuilder.build());

Я получаю все namedRanges следующим образом, но он возвращает массив с объектом epmty

var namedRange = doc.getNamedRanges(RangeManager.name); // gives [{}]

Может кто-нибудь, пожалуйста, помогите мне сказать, что я делаю неправильно? Спасибо

1 Ответ

1 голос
/ 10 июля 2019

Чтобы получить название диапазона, вам нужно использовать метод getName(). Как следует из обозначения getNamedRanges(), метод даст вам ВСЕ NamedRanges с одинаковыми именами, поэтому вам нужно перебрать их с помощью forEach. В итоге:

  var namedRange = doc.getNamedRanges("name_of_your_namerange").forEach(function(rangeEntry){
    (Logger.log("name: "+rangeEntry.getName()))})
...