10,2K подписчиков

Сортировка с помощью формулы в Excel

203 прочитали

Сортировка данных - это одна из наиболее частых задач, выполняемых в Эксель. Стандартные инструменты, которые применяются к предварительного выделенному диапазону ячеек или умным таблицам далеко не всегда уместны, так как необходимость в сортировке данных может возникнуть при работе с какими-то готовыми бланками или формами.

С появлением функций динамических массивов сортировка данных с помощью формул стала крайне простой задачей. При этом есть две функции, выполняющие сортировку - СОРТ и СОРТПО.

Рассмотрим их на примерах.

Функция СОРТ с одним аргументом

Есть перечень заказов, на основе которого нужно сформировать выпадающий список с неповторяющимися наименованиями заказчиков. При этом необходимо чтобы список был отсортирован по алфавиту.

Перечень заказов
Перечень заказов

Задействуем ранее рассмотренную функцию УНИК, которая вернет список уникальных значений из выделенного диапазона, а затем обернем ее функцией СОРТ.

Список отсортированных по алфавиту уникальных значений
Список отсортированных по алфавиту уникальных значений

У функции только один обязательный аргумент - диапазон. Именно диапазон мы получим с помощью функции УНИК. В итоге на основе отсортированного списка с помощью инструмента проверки данных создадим выпадающий список.

Аргументы функции СОРТ

Теперь давайте детально рассмотрим аргументы функции СОРТ. Их четыре.

Первый аргумент обязательный - необходимо указать диапазон данных для сортировки. Остальные три аргумента - необязательные.

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

Третий аргумент определяет порядок сортировки. Можно выбрать одно из двух значений: 1 при сортировке по возрастанию (или по алфавиту) и -1 - по убыванию. Если ничего не указать, то будет осуществлена сортировка по возрастанию

И четвертый аргумент определяет направление сортировки, то есть осуществлять сортировку по строкам или столбцам в выбранном диапазоне. Аргумент логический и значение ЛОЖЬ (или 0) будет означать сортировку по строкам, то есть по вертикали, а значение ИСТИНА (или 1) - по столбцам или по горизонтали. Если ничего не указывать, то сортировка будет производиться по вертикали.

В первой рассмотренной задаче в качестве диапазона для сортировки был выбран единственный столбец, поэтому остальные аргументы функции СОРТ можно было не указывать.

Для примера давайте получим массив данных, состоящий из двух столбцов - Заказчик и Менеджер. При этом сортировку будем производить по столбцу Заказчик и в обратном алфавитном порядке.

Сортировка двух столбцов
Сортировка двух столбцов

В итоге сортировка будет осуществлена по второму столбцу по убыванию. Но хотелось бы, чтобы и в первом столбце была сортировка. Например, чтобы фамилии менеджеров были отсортированы в алфавитном порядке.

Сортировка по алфавиту проведена только во втором столбце
Сортировка по алфавиту проведена только во втором столбце

Реализовать это довольно просто с помощью массива констант. Задаем столбец сортировки - сначала второй, а потому первый. Ну а далее определяем порядок сортировки - второй столбец по убыванию, а первый по возрастанию, то есть в алфавитном порядке.

Сортировка в двух столбцах
Сортировка в двух столбцах

В итоге данные сначала сортируются по второму столбцу с наименованием заказчика, а затем по фамилии менеджера.

Функция СОРТПО

Но прибегать к массиву констант необязательно, ведь функция СОРТПО как раз и предназначена для решения подобных задач. В ней мы указываем диапазон для сортировки, а затем диапазон, который будет использован в качестве критерия для сортировки и ее порядок.

Синтаксис функции СОРТПО
Синтаксис функции СОРТПО

То есть решить ту же задачу можно с помощью следующей формулы:

Сначала указываем весь диапазон для сортировки, затем первый сортируемый столбец - Заказчик. Направление сортировки по убыванию. Далее указываем второй столбец для сортировки и направление - по возрастанию. В итоге получим точно такой же результат.

Стоит отметить, что столбец, по которому осуществляется сортировка, не обязательно должен включаться в результат. Чтобы продемонстрировать, что я имею в виду, рассмотрим следующий пример.

Отсортируем фамилии по номеру из столбца В
Отсортируем фамилии по номеру из столбца В

Отсортируем фамилии из столбца А по номеру из столбца В.

Сортировка столбца по значениям другого столбца
Сортировка столбца по значениям другого столбца

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

Результат сортировки с помощью функции СОРТПО
Результат сортировки с помощью функции СОРТПО

Сортировка по столбцам

Ну и стоит упомянуть последний аргумент функции СОРТ, который позволяет сортировать данные, расположенные в столбцах.

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

Сортировка по столбцам
Сортировка по столбцам

Если он будет иметь значение ИСТИНА, то заголовки таблицы будут отсортированы в алфавитном порядке.

Исходная таблица с отсортированными столбами
Исходная таблица с отсортированными столбами
Сортировка данных - это одна из наиболее частых задач, выполняемых в Эксель.-12

Чтобы скачать курс по основам Microsoft Excel нажмите на эту ссылку

Ссылки на мои ресурсы по Excel

YouTube-канал по Excel и Word

Телеграм

Серия видеокурсов "Microsoft Excel Шаг за Шагом"

Авторские книги и курсы