0Pricing
Excel Formulas Academy · Урок

Сортировка по другому столбцу с помощью SORTBY

Упорядочивайте один массив по значениям другого массива.

«Сортировка по другому столбцу с помощью SORTBY» — бесплатный урок Excel Formulas Academy на CoddyKit. Это урок 2 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Excel Formulas Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Excel Formulas Academy содержит 4 уроков всего.

Зачем нужна SORTBY

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

Именно это делает SORTBY. Она сортирует один диапазон по порядку значений совершенно других диапазонов, позволяя гибко сортировать данные по нескольким ключам, не добавляя столбцы сортировки в результат.

=SORTBY(A2:A10, B2:B10)

Синтаксис SORTBY

Шаблон SORTBY выглядит так:

  • массив — данные, которые нужно вернуть в отсортированном порядке;
  • массив_по1 — значения, определяющие порядок;
  • порядок_сортировки1 — 1 для сортировки по возрастанию, -1 для сортировки по убыванию (необязательно).

Можно добавлять дополнительные пары массив_по / порядок, чтобы сортировать по нескольким ключам. Каждый массив_по должен иметь ту же высоту или ширину, что и сортируемый массив.

=SORTBY(array, by_array1, [order1], [by_array2], [order2], ...)

Сортировка имён по скрытой оценке

Предположим, в A2:A10 находятся имена игроков, а в B2:B10 — их оценки. Вы хотите получить список имён, упорядоченный по оценкам от большей к меньшей, но отображать нужно только имена.

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

=SORTBY(A2:A10, B2:B10, -1)

SORT и SORTBY: сравнение

Главное различие: в SORT столбец, по которому выполняется сортировка, входит в результат. В SORTBY ключ сортировки находится в отдельном массиве и не возвращается.

  • Используйте SORT, если столбец порядка должен отображаться в результате.
  • Используйте SORTBY, если нужен чистый результат, упорядоченный по скрытому значению.
=SORTBY(A2:A10, C2:C10, 1)

Сортировка всей таблицы по внешнему столбцу

Возвращаемый массив может содержать несколько столбцов. Предположим, в A2:B10 находятся имя и адрес электронной почты, а в C2:C10 — число приоритета.

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

=SORTBY(A2:B10, C2:C10, 1)

Сортировка по нескольким ключам

Добавляйте дополнительные пары массив_по / порядок, чтобы разрешать совпадения. SORTBY применяет их по очереди: сначала сортирует первый ключ, затем второй разрешает совпадения и так далее.

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

=SORTBY(A2:C20, B2:B20, 1, C2:C20, -1)

Сортировка по вычисляемому массиву

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

Представьте, что в A2:A10 находятся названия товаров, в B2:B10 — цены, а в C2:C10 — себестоимость. Чтобы упорядочить товары по марже, не сохраняя её где-либо, вычислите её внутри SORTBY.

=SORTBY(A2:A10, B2:B10-C2:C10, -1)

Одинаковый размер массивов

Каждый массив_по должен соответствовать длине сортируемого массива. Если в массиве 9 строк, в каждом массиве_по также должно быть 9 строк.

Несоответствие приводит к ошибке #VALUE!. Проверьте, что начальные и конечные строки всех диапазонов совпадают.

=SORTBY(A2:A10, B2:B10, -1)

SORTBY в Google Таблицах

Google Таблицы поддерживают SORTBY с тем же синтаксисом, поэтому формулы можно переносить. Поведение, включая несколько ключей сортировки и вычисляемые массивы_по, совпадает с Excel.

Как и SORT, SORTBY разливает результаты, поэтому убедитесь, что под формулой достаточно свободного места.

=SORTBY(A2:C20, B2:B20, 1, C2:C20, -1)

Объединение SORTBY с FILTER

Как и SORT, SORTBY хорошо работает вместе с FILTER. Сначала отфильтруйте нужные строки, затем SORTBY упорядочит оставшиеся.

Важно: при фильтрации массива необходимо таким же образом отфильтровать и массив_по, чтобы они оставались согласованными. Здесь мы сортируем всю таблицу по отфильтрованному вспомогательному массиву только в том случае, если оба массива содержат одни и те же строки, поэтому часто проще сначала применить SORTBY, а затем отфильтровать её результат.

=FILTER(SORTBY(A2:C20, C2:C20, -1), SORTBY(B2:B20, C2:C20, -1)="East")

Практическая таблица лидеров

Объединим всё изученное: создадим обновляемую таблицу лидеров, в которой имена игроков упорядочены по оценкам, а при совпадении оценок — по наименьшему числу попыток.

Если имена находятся в A2:A20, оценки — в B2:B20, а попытки — в C2:C20, SORTBY ранжирует игроков сначала по оценкам (от большей к меньшей), а затем по числу попыток (от меньшего к большему). Измените любое значение — и порядок обновится.

=SORTBY(A2:A20, B2:B20, -1, C2:C20, 1)

Быстрая проверка

Имена находятся в A2:A10, а их оценки — в B2:B10. Вы хотите вернуть только имена, расположив их от самой высокой оценки к самой низкой. Какая формула подойдёт?

Итоги: сортировка с помощью SORTBY

SORTBY упорядочивает один массив по значениям отдельных массивов, которые не отображаются в результате:

  • =SORTBY(array, by_array1, order1, ...)
  • Добавляйте пары массив_по / порядок для сортировки по нескольким ключам.
  • Массивы_по могут быть сохранёнными столбцами или вычислениями, выполняемыми в реальном времени.
  • Каждый массив_по должен соответствовать длине исходного массива.

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

=SORTBY(A2:A20, B2:B20, -1, C2:C20, 1)

Часто задаваемые вопросы

Урок «Сортировка по другому столбцу с помощью SORTBY» бесплатный?

Да — полный текст урока «Сортировка по другому столбцу с помощью SORTBY» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Excel Formulas Academy, подпишись на CoddyKit PRO. Курс Excel Formulas Academy содержит 4 уроков всего.

Чему я научусь в уроке «Сортировка по другому столбцу с помощью SORTBY»?

Упорядочивайте один массив по значениям другого массива. Ты практикуешь Excel Formulas Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Excel Formulas Academy?

Предыдущий опыт не требуется. Excel Formulas Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 4.

Сколько времени занимает урок «Сортировка по другому столбцу с помощью SORTBY»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Excel Formulas Academy?

Да. Каждый урок Excel Formulas Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Сортировка результатов с помощью SORT
  2. Сортировка по другому столбцу с помощью SORTBY
  3. Генерация чисел с помощью SEQUENCE
  4. Создание случайных данных с помощью RANDARRAY
← Назад к Excel Formulas Academy