Макрос Google Sheets: для автоматической сортировки на определенном листе и в нескольких диапазонах - PullRequest
0 голосов
/ 27 января 2019

Я пытаюсь автоматически отсортировать 2 диапазона в определенной таблице googles, однако я могу заставить ее работать только для одного диапазона (последний, указанный в коде, всегда работает).

Кто-нибудь знает, как изменить код, чтобы он применялся к обоим диапазонам (не только к последнему)?

Большое спасибо!

Я попытался продублировать весь код для каждого и объединить диапазоны («b16: b55», «b59: b100»), но ничего не получалось.

function onEdit(){


var sh0 = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0];
var editedCell = sh0.getActiveRange().getColumnIndex();

if(editedCell == 1) { 
var range = sh0.getRange("b59:h100");
var range = sh0.getRange("b16:h55");

range.sort({column: 2});
}
}

этот код всегда будет сортироваться по значению во втором столбце для диапазона b16-b55.Тем не менее, я хочу применить его к этому диапазону И b59: b100

1 Ответ

0 голосов
/ 27 января 2019

Если я правильно вас понимаю, вы хотите отсортировать оба диапазона по их значению во втором столбце.

В вашем сценарии вы в настоящий момент переназначаете range, и поэтому B59: H100 никогда не будет отсортирован.

Если вы используете две разные переменные, вы можете отсортировать их по их значениям в столбце 2.

var range1 = sh0.getRange("b59:h100");
var range2 = sh0.getRange("b16:h55");

range1.sort({column: 2});
range2.sort({column: 2});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...