Как переписать ActiveSheet в SPECIFI C лист и столбец? - PullRequest
1 голос
/ 19 марта 2020

В этом примере Я использую это, чтобы перетасовать выбранный диапазон:

 function shuffleRows() {
  var sheet = SpreadsheetApp.getActive().getSheetByName("Ark5");
  var range = sheet.getRange("I2:I8");
/*  var ss=SpreadsheetApp.getActive();
  var sh=ss.getActiveSheet();
  var rg=sh.getDataRange();
  var vA=rg.getValues();
  var lr=sh.getLastRow();*/
  sheet.sort(function(a,b){return Math.floor(Math.random()*range)-Math.floor(Math.random()*range);
  });
  rg.setValues(sheet);
}

function onOpen() {
  var sheet = SpreadsheetApp.getActiveSpreadsheet();
  var entries = [{
    name : "Bland alle dyrene",
    functionName : "shuffleRows",
  }];
  sheet.addMenu("Bland alle dyrene", entries);
};

Можно указать как лист, так и выбранный диапазон, т.е.

  var sheet = SpreadsheetApp.getActiveSheet(MY SPECIFIC SHEET);
  var range = sheet.getActiveRange(MY SPECIFIC ROW);

1 Ответ

2 голосов
/ 19 марта 2020

Если я вас правильно понимаю, вы просто хотите:

  • Вернуть лист с указанным c именем.
  • Вернуть диапазон, соответствующий указанной нотации A1 .

В таком случае вам просто нужно использовать Spreadsheet.getSheetByName и Sheet.getRange :

var sheet = SpreadsheetApp.getActive().getSheetByName("Ark2");
var range = sheet.getRange("B2:B");

Ссылка :

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...