Поместите все значения, которые вы указали в методе getRange
, внутри массива и l oop поверх него. С каждым range
вызывайте методы getRange
и randomize
.
function clickStart() {
var ranges = ['T2:T21', 'Y1:Y20', 'Y21:Y40', 'Y41:Y60']; // Add all cells to this array.
var spreadsheet = SpreadsheetApp.getActive();
for (let range of ranges) {
spreadsheet.getRange(range).randomize();
}
};
Но на этом этапе код все равно займет много времени и заблокирует ваш поток во время работы. Оберните его в Promise
, который разрешается, когда l oop готов сделать код асинхронным. Это обеспечит выполнение остальной части вашего кода.
function clickStart() {
return new Promise(resolve => {
var ranges = ['T2:T21', 'Y1:Y20', 'Y21:Y40', 'Y41:Y60']; // Add all cells to this array.
var spreadsheet = SpreadsheetApp.getActive();
for (let range of ranges) {
spreadsheet.getRange(range).randomize();
}
resolve(spreadsheet);
});
};