Google Spreadsheet Sort Two Columns


9

Таким образом, я нашел следующий ответ относительно автоматической сортировки по одному столбцу, которая прекрасно работает. Как я могу сделать некоторые данные в автоматической сортировке таблицы Google?

Тем не менее, мой вариант использования требует сортировки двух столбцов. Один столбец представляет собой целые числа, а второй столбец - даты. Я хотел бы сначала отсортировать столбец целых чисел, а затем в каждом номере отсортировать дату.

Какие-либо предложения?

Ответы:


9

Начиная со следующей строки кода:

var range = sheet.getRange("A1:B10");

Сортировка может быть выполнена разными способами:

  1. range.sort([1,2]);
  2. range.sort([{column: 1, ascending: true}, {column: 2, ascending: true}]);

Оба способа идентичны, так как тип сортировки по умолчанию является возрастающим, но второй вариант позволяет TRUEизменить порядок сортировки при изменении на FALSE.

Смотрите ссылку: range.sort


1
Спасибо за быстрый ответ. Ваш ответ имеет смысл для меня. Я реализовал знания с успехом.
Вьетнам

Хорошо, новичок в этом деле ... где именно я могу ввести вышеуказанный код?

@robb см. ссылку, которую использует OP, что приведет к ответу, который я дал с объяснением.
Джейкоб Ян Туинстра

2

Немного опоздал на вечеринку, но я так и сделал.

function onEdit(event){
  var sheet = event.source.getActiveSheet();
  if(sheet.getName()=='Sort by country full'){
    var editedCell = sheet.getActiveCell();
    var columnToSortBy = 16;
    var columnToSortBy2 = 2;
    var tableRange = "A2:AU1451";
    if(editedCell.getColumn() == columnToSortBy){   
      var range = sheet.getRange(tableRange);
      range.sort( [{ column : columnToSortBy },{column: columnToSortBy2,ascending: false }] );
    }
  }
}

Сортировка сначала по столбцу 16, для меня это страны, а затем по рейтингу в столбце 2 по убыванию.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.