Итерации по диапазону [] - PullRequest
0 голосов
/ 21 июня 2020

Я пытаюсь сделать две вещи. Заставьте это работать и сделайте так, чтобы это работало как можно более эффективно. Моя таблица

То, что я хочу сделать, это просто запустить foreach l oop, который будет go через выделение и вытащить определенные c ячейки, а затем поместить их в копию документа шаблона

var ranger = sheet.getSelection().getActiveRangeList().getRanges().forEach(function(dataArray) 
  // dataArray is my object[][] Casting all data to strings just in case.
  var songname = String(dataArray[1]);
  var songwriters = String(dataArray[2]);
  var publishers =  String(dataArray[3]);
  var artist = String(dataArray[5]);
  var useremail = String(dataArray[6]);
...
}

Позже в своем коде я открываю шаблон, заменяю заполнители, переименовываю и сохраняю его.

Но я просто хочу добраться туда и добраться до так же эффективно, как возможно.

Это сработает?

Меня очень смущает форматирование обратного вызова в Google App Scripting.

1 Ответ

2 голосов
/ 21 июня 2020
function myFunction() {
  var ss=SpreadsheetApp.getActive();
  var sh=ss.getSheetByName('Sheet1');
  var dataArray=[];
  sh.getSelection().getActiveRangeList().getRanges().forEach(function(r,i){
    dataArray.push(r.getValues());
  }); 
  ....

dataArray теперь представляет собой массив из 2-х мерных массивов, поэтому он представляет собой 3-х мерный массив.

...