Все материалы
BIгайдстарт

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

Как отсортировать таблицу в Excel и не перемешать строки: расширение диапазона, несколько уровней, даты и числа текстом, алфавит и «ё», свой список, цвет, СОРТ, СОРТПО и ORDER BY.

КейсПрактика25 октября 2026 г.18 мин

Руководитель отдела продаж присылает выгрузку заказов из CRM за сентябрь и просит к планёрке показать крупные сделки сверху, а потом разложить их по регионам. Дело на минуту: выделить столбец «Сумма», нажать «Сортировка по убыванию». Если в этот момент Excel спросит, что делать с соседними столбцами, и вы выберете не тот вариант, суммы встанут по порядку, а менеджеры и регионы останутся на своих местах. Итог по столбцу не изменится ни на рубль, поэтому ошибку не поймает ни одна контрольная сумма. Ниже — как сортировать таблицу в Excel так, чтобы строки не рассыпались, и где подвохи с датами, алфавитом и числами.

Коротко: как сделать сортировку в Excel

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

  • Один столбец: щёлкните любую ячейку столбца и выберите «Главная» → «Сортировка и фильтр» → «Сортировка от А до Я» (у чисел — «от минимального к максимальному», у дат — «от старых к новым»). Выделять весь столбец не нужно.
  • Если Excel предлагает «автоматически расширить выделенный диапазон» — соглашайтесь. Вариант «сортировать в пределах указанного выделения» отрывает значения от их строк.
  • Несколько столбцов: «Данные» → «Сортировка» → «Добавить уровень». Верхний уровень главный, следующие решают ничьи.
  • Даты и числа, сохранённые текстом, сортируются как текст: 28.08 окажется после 14.09, а «10» — перед «2». Сначала переведите их в настоящие даты и числа.
  • Для статусов и месяцев алфавит не годится — нужен настраиваемый список. Цвет тоже можно сделать ключом сортировки, но порядок цветов задаёте вы сами.
  • Функции СОРТ и СОРТПО сортируют копию данных формулой и не трогают исходник. Они есть в Microsoft 365, Excel 2021 и 2024, но не в Excel 2016 и 2019.

Учебный лист: восемь заказов из CRM

Все примеры ниже — на одном листе «Заказы». Данные учебные, придуманы для статьи, но устроены как настоящая выгрузка: номер заказа, дата, менеджер, регион, статус и сумма в рублях. Строки идут в том порядке, в каком их отдала система, — по номеру заказа. Итог по столбцу F — 66 800 ₽.

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

Лист «Заказы», диапазон A1:F9 (учебные данные)
A: ЗаказB: ДатаC: МенеджерD: РегионE: СтатусF: Сумма, ₽
100103.09.2026СоколоваМоскваоплачен12 400
100205.09.2026ЁлкинКазаньновый3 200
100305.09.2026ЕгоровМосквав работе8 900
100412.09.2026АбрамоваКазаньоплачен15 600
100528.08.2026СоколоваПермьотменён4 100
100614.09.2026ЕгоровПермьоплачен7 300
100701.09.2026АбрамоваМосквановый9 800
100810.09.2026ЕфимовКазаньв работе5 500

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

Щёлкните одну ячейку в столбце «Сумма», например F2. На вкладке «Главная» в группе «Редактирование» откройте «Сортировка и фильтр» и выберите «Сортировка от максимального к минимальному». Те же команды есть на вкладке «Данные». Названия зависят от типа данных: для текста — «от А до Я», для чисел — «от минимального к максимальному», для дат — «от старых к новым». Если в столбце дат вы видите «от А до Я», даты на самом деле текст.

Excel сам находит границы таблицы вокруг ячейки, переставляет строки целиком и обычно оставляет заголовок на месте. После сортировки по убыванию сверху окажется заказ 1004 на 15 600 ₽, внизу — 1002 на 3 200 ₽. Пустые ячейки, по справке Microsoft, всегда уходят вниз — и при сортировке по возрастанию, и по убыванию.

Если данные оформлены как таблица Excel («Главная» → «Форматировать как таблицу» или Ctrl+T), у заголовков появляются кнопки со стрелкой, и сортировка доступна прямо из них. Таблица ещё и страхует от главной ошибки. В Google Таблицах аналог — «Данные» → «Сортировать диапазон» → «Расширенные настройки сортировки диапазонов» с флажком «Данные со строкой заголовка».

Почему важно «автоматически расширить выделенный диапазон»

Ошибка начинается с выделения. Вы выделили мышью F2:F9, потому что хотите отсортировать суммы, и нажали «по убыванию». Excel видит рядом данные и показывает предупреждение с двумя вариантами: «автоматически расширить выделенный диапазон» и «сортировать в пределах указанного выделения». Первый отсортирует строки целиком. Второй сделает ровно то, что вы выделили: переставит только суммы.

Во втором случае суммы выстроятся от 15 600 до 3 200, а номера заказов, менеджеры и регионы останутся на старых местах. Заказ 1004 Абрамовой теперь стоит 8 900 ₽ вместо 15 600, а у Ёлкина вместо самой маленькой сделки — 12 400 ₽. Итог по столбцу всё так же 66 800 ₽, поэтому ошибку не видно ни в строке итогов, ни в сводной таблице по общему объёму. Видно её только в разрезах.

Сразу после ошибки помогает Ctrl+Z. Если файл уже сохранён и закрыт, связь строк восстановит только исходная выгрузка, поэтому держите её копию. Чтобы не попадать в это вообще, щёлкайте одну ячейку, а не выделяйте столбец, и оформляйте данные таблицей Excel: справка Microsoft прямо говорит, что в таблице так отсортировать значения нельзя.

Выручка по менеджерам: `=СУММЕСЛИ($C$2:$C$9;"Абрамова";$F$2:$F$9)` до и после сортировки одного столбца
МенеджерДо сортировки, ₽После «в пределах выделения», ₽
Абрамова25 40013 000
Соколова16 50022 900
Ёлкин3 20012 400
Итог по столбцу F, =СУММ(F2:F9)66 80066 800

Сортировка по нескольким столбцам: настраиваемая сортировка

Задача с планёрки: регионы по алфавиту, а внутри региона — от крупных сделок к мелким. Одним кликом это не сделать: нужна сортировка по нескольким уровням.

Щёлкните любую ячейку таблицы и выберите «Данные» → «Сортировка». Проверьте флажок «Мои данные содержат заголовки»: если он снят, Excel отсортирует строку заголовков вместе с данными. В строке «Сортировать по» выберите «Регион», в поле «Сортировка» — «Значения ячеек», в «Порядке» — «От А до Я». Нажмите «Добавить уровень», в появившейся строке «Затем по» выберите «Сумма» и «По убыванию». ОК.

Уровни работают как старшинство: второй уровень решает только ничьи первого. Порядок уровней меняют стрелками рядом с кнопкой «Параметры». По справке Microsoft, уровней может быть до 64. Последним уровнем полезно ставить уникальный столбец, например номер заказа: тогда порядок строк с равными ключами не зависит от того, как они пришли.

Результат: «Регион» от А до Я, затем «Сумма» по убыванию
ЗаказРегионМенеджерСумма, ₽
1004КазаньАбрамова15 600
1008КазаньЕфимов5 500
1002КазаньЁлкин3 200
1001МоскваСоколова12 400
1007МоскваАбрамова9 800
1003МоскваЕгоров8 900
1006ПермьЕгоров7 300
1005ПермьСоколова4 100

Сортировка по дате: почему даты-текст встают не туда

Дата в Excel — это число дней, отформатированное как дата: 01.09.2026 хранится как 46 266. Поэтому настоящие даты сортируются хронологически, а команда в меню называется «от старых к новым». Если выгрузка пришла из CSV или чужой системы, даты часто остаются текстом, который только выглядит как дата. Справка Microsoft прямо предупреждает: если Excel не распознал значение как дату, оно хранится как текст и сортируется не по времени.

Текст сравнивается символ за символом слева направо. Для строки «28.08.2026» первый символ — «2», для «14.09.2026» — «1», поэтому августовский заказ 1005 после сортировки «от А до Я» окажется последним, после всех сентябрьских. Признаки текстовых дат: в меню сортировки «от А до Я» вместо «от старых к новым», =ЕТЕКСТ(B2) возвращает ИСТИНА, а =СЧЁТ(B2:B9) — 0 вместо 8.

Исправление — добавить столбец с настоящей датой и сортировать по нему. Для текста в формате ДД.ММ.ГГГГ надёжнее всего собрать дату из частей: =ДАТА(ПРАВСИМВ(B2;4);ПСТР(B2;4;2);ЛЕВСИМВ(B2;2)). Она не зависит от региональных настроек. Короче =ДАТАЗНАЧ(B2), но она понимает текст, только если формат совпадает с языковыми настройками: в русском Excel «03.09.2026» станет датой, а «09/03/2026» — как получится. Затем сортируйте новый столбец «от старых к новым».

Номера заказов после сортировки по возрастанию: даты текстом и даты числом
МестоДаты текстом, «от А до Я»После `ДАТА(…)`, «от старых к новым»
11007 (01.09.2026)1005 (28.08.2026)
21001 (03.09.2026)1007 (01.09.2026)
31002 (05.09.2026)1001 (03.09.2026)
41003 (05.09.2026)1002 (05.09.2026)
51008 (10.09.2026)1003 (05.09.2026)
61004 (12.09.2026)1008 (10.09.2026)
71006 (14.09.2026)1004 (12.09.2026)
81005 (28.08.2026)1006 (14.09.2026)

Сортировка по алфавиту: регистр, «ё» и пробелы

Регистр по умолчанию не учитывается: «оплачен» и «Оплачен» для Excel равны. Это сказано в английской версии справки Microsoft; в русском переводе той же страницы написано обратное, и это ошибка перевода. Если регистр важен, откройте «Данные» → «Сортировка» → «Параметры» и включите «Учитывать регистр» — тогда строчная буква встанет перед прописной.

Порядок букв, по справке, зависит от языковых настроек. При русском стандарте «ё» сортируется рядом с «е», а не после «я»: в нашем списке менеджеров Ёлкин стоит между Егоровым и Ефимовым. Мы проверили этот порядок в LibreOffice с русскими настройками. Программы, которые сравнивают коды символов (Python по умолчанию, SQL с побайтовым сравнением строк), поставят «Ёлкин» первым, раньше «Абрамовой»: у прописной «Ё» код меньше, чем у «А». Поэтому порядок фамилий в Excel и в коде может не совпасть.

Вторая частая причина странного алфавита — пробелы. Справка Microsoft советует перед сортировкой удалить начальные пробелы, которые приезжают с импортом: « Абрамова» с пробелом окажется не рядом с «Абрамовой», а отдельно от неё. Очистите столбец функцией СЖПРОБЕЛЫ во вспомогательном столбце и сортируйте по нему.

Менеджеры из примера в двух порядках
МестоExcel, «от А до Я», русский стандартСравнение по кодам символов
1АбрамоваЁлкин
2ЕгоровАбрамова
3ЁлкинЕгоров
4ЕфимовЕфимов
5СоколоваСоколова

Сортировка по своему списку: статусы и месяцы

У статусов заказа есть естественный порядок: новый → в работе → оплачен → отменён. Алфавит его ломает: «от А до Я» даст «в работе, новый, оплачен, отменён». С месяцами то же самое, если они записаны словами: «август» окажется раньше «января». Для таких столбцов в «Порядке» окна сортировки есть пункт «Настраиваемый список».

Дни недели и месяцы в Excel уже есть как встроенные списки, их достаточно выбрать. Свой список статусов создаётся один раз: введите значения в ячейки в нужном порядке, выделите их и откройте «Файл» → «Параметры» → «Дополнительно» → раздел «Общие» → «Изменить списки» → «Импорт». Потом в окне сортировки выберите столбец «Статус», «Порядок» → «Настраиваемый список» → ваш список. Список хранится в настройках Excel на этом компьютере, а не в файле: у коллеги его может не быть.

Поэтому для отчётов, которые открывают другие люди, надёжнее вспомогательный столбец с номером позиции: =ПОИСКПОЗ(E2;$H$2:$H$5;0), где в H2:H5 лежит справочник статусов в нужном порядке. Сортируйте по этому столбцу по возрастанию. Справочник виден в файле, а новый статус, которого в нём нет, сразу даст #Н/Д.

Справочник на листе «Заказы» и результат сортировки по номеру позиции
H: СтатусПозицияЗаказы в этом статусе после сортировки
новый11002, 1007
в работе21003, 1008
оплачен31001, 1004, 1006
отменён41005

Сортировка по цвету ячейки или шрифта

Если просроченные заказы кто-то залил красным вручную или условным форматированием, по цвету тоже можно сортировать. Откройте «Данные» → «Сортировка», выберите столбец, в поле «Сортировка» — «Цвет ячейки» (или «Цвет шрифта», «Значок ячейки»), в «Порядке» — нужный цвет и «Сверху». Для второго цвета нажмите «Добавить уровень» и повторите с тем же столбцом.

У цветов нет естественного порядка, справка Microsoft так и пишет: его нужно задать для каждой сортировки самим. Каждый цвет — отдельный уровень с тем же столбцом. В Google Таблицах сортировка по цвету спрятана в меню фильтра: «Сортировка по цвету».

Аналитику цвет как ключ лучше не использовать: его не видят формулы и сводные, его не перенесёшь в SQL. Если ячейки красятся по правилу «просрочка больше 7 дней», заведите столбец с этим правилом и сортируйте по нему.

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

Иногда переставлять нужно не строки, а столбцы: например, выстроить каналы привлечения в отчёте по итоговой строке, чтобы крупный канал стоял первым.

Щёлкните ячейку в диапазоне, откройте «Данные» → «Сортировка» → «Параметры» и выберите «Сортировать слева направо». Затем в поле «Сортировать по» укажите строку — здесь строку 5 «Итого» — и порядок «По убыванию». Первый столбец с подписями регионов в выделение не включайте, иначе он тоже уедет. Одно ограничение: таблицы Excel сортировку слева направо не поддерживают, сначала таблицу нужно преобразовать в диапазон («Конструктор таблиц» → «Преобразовать в диапазон»).

Лиды по каналам (учебные числа): до и после сортировки B1:E5 по строке «Итого»
ПорядокСтолбец BСтолбец CСтолбец DСтолбец E
До: каналКонтекстСоцсетиEmailПартнёры
До: итого лидов23522585125
После: каналКонтекстСоцсетиПартнёрыEmail
После: итого лидов23522512585

Числа как текст: почему «10» стоит перед «2»

Артикулы, номера договоров и коды часто приезжают текстом. Тогда сортировка идёт по правилам текста: сначала первый символ, потом второй. «1», «10» и «100» начинаются с единицы и встают рядом, а «2» — только после них. Если в столбце смешаны настоящие числа и числа-текст, справка Microsoft предупреждает о другом эффекте: числа окажутся выше чисел, сохранённых текстом, и столбец распадётся на две отсортированные половины.

Признаки текста: значение прижато к левому краю, в углу ячейки зелёный треугольник, =ЕТЕКСТ(A2) возвращает ИСТИНА. Исправление: выделите ячейки и выберите у значка с восклицательным знаком «Преобразовать в число» или постройте вспомогательный столбец =ЗНАЧЕН(A2). Если код должен остаться текстом, например из-за ведущих нулей вроде «007», не превращайте его в число, а дополните до одной длины: тогда текстовый порядок совпадёт с числовым.

Пять артикулов по возрастанию в трёх вариантах хранения
Как хранятсяПорядок после сортировки
Все текстом1, 10, 100, 2, 21
Смесь: 1, 2, 100 числом, «10» и «21» текстом1, 2, 100, 10, 21
После =ЗНАЧЕН(A2)1, 2, 10, 21, 100

Функции СОРТ и СОРТПО: сортировка формулой

Команда сортировки переставляет сами данные. Функции СОРТ и СОРТПО оставляют исходник на месте и выводят отсортированную копию: формула в одной ячейке «рассыпается» на соседние строки и столбцы и пересчитывается, когда меняются данные. Это удобно для отчётного листа, который всегда показывает топ сделок.

Синтаксис по справке Microsoft: СОРТ(массив; [индекс_сортировки]; [порядок_сортировки]; [по_столбцу]). Индекс — номер столбца внутри массива, порядок — 1 по возрастанию (по умолчанию) или −1 по убыванию, по_столбцу = ИСТИНА сортирует столбцы, а не строки. СОРТПО принимает не номер, а диапазон: СОРТПО(массив; по_массиву1; [порядок_сортировки1]; …). Microsoft советует для данных на листе именно её: номер столбца в СОРТ сломается, если вставить столбец, а ссылка на диапазон сдвинется сама.

Обе функции есть в Excel для Microsoft 365 (включая Mac), Excel 2021 и 2024, а также в Excel для iPad, iPhone и Android. В Excel 2016 и 2019 их нет: такой файл покажет ошибку #ИМЯ?. В Google Таблицах есть SORT с другой записью порядка: =SORT(A2:F9; 6; ЛОЖЬ), где ИСТИНА значит «по возрастанию», ЛОЖЬ — «по убыванию», а не 1 и −1.

Формулы на листе «Заказы» и первые строки результата
ЗадачаФормулаНомера заказов в результате
Сумма по убыванию=СОРТ(A2:F9;6;-1)1004, 1001, 1007, 1003, 1006, 1008, 1005, 1002
Регион А–Я, затем сумма по убыванию=СОРТПО(A2:F9;D2:D9;1;F2:F9;-1)1004, 1008, 1002, 1001, 1007, 1003, 1006, 1005
Статусы по справочнику H2:H5=СОРТПО(A2:F9;ПОИСКПОЗ(E2:E9;H2:H5;0);1)1002, 1007, 1003, 1008, 1001, 1004, 1006, 1005
Каналы по строке «Итого»=СОРТ(B1:E5;5;-1;ИСТИНА)Контекст, Соцсети, Партнёры, Email

То же в SQL: ORDER BY на базе «Маяк»

В SQL сортировка — одна клауза ORDER BY в конце запроса. Она не меняет таблицу, а задаёт порядок строк в результате, как СОРТ в Excel. Уровни сортировки перечисляются через запятую, у каждого своё направление: ASC по возрастанию (по умолчанию) или DESC по убыванию. Ошибки «в пределах выделения» в SQL не бывает: строка переставляется целиком.

Возьмём платежи за 22 июня 2026 года из учебной базы «Маяк» — той же, на которой работает песочница. Их десять, и у двух платежей одинаковая сумма 39. Без второго уровня база вправе вернуть их в любом порядке, и при проверке DuckDB и PostgreSQL действительно расставили их по-разному. Поэтому последним ключом стоит payment_id — та же роль, что у номера заказа в Excel. Подробнее про направления, NULL и первые N строк — в разборе ORDER BY и LIMIT.

Результат запроса ниже: платежи за 22.06.2026, сумма по убыванию, затем номер платежа
payment_iduser_idplanamount
80320team39
82440team39
76102pro29
7445basic19
7574basic19
77105basic19
78140basic19
79206basic19
81391basic19
83607basic19
Сортировка по двум уровням: сумма по убыванию, затем номер платежа
SELECT payment_id, user_id, plan, amount
FROM payments
WHERE paid_at = DATE '2026-06-22'
ORDER BY amount DESC, payment_id;

Свой список в SQL: CASE внутри ORDER BY

Настраиваемый список в SQL записывается выражением CASE: каждому значению — номер позиции, сортировка по номеру. Это тот же вспомогательный столбец с ПОИСКПОЗ, только внутри запроса. В «Маяке» у подписок три статуса, и по алфавиту churned встал бы раньше past_due, хотя по смыслу отток — последняя стадия.

Даты, сохранённые текстом, в SQL ведут себя так же, как в Excel: '28.08.2026' окажется после '14.09.2026'. Решение то же — перевести текст в дату (см. функции даты в SQL) и сортировать по ней. Про CASE подробнее — в статье CASE WHEN в SQL.

Результат запроса ниже: 912 подписок «Маяка» по статусам в порядке жизненного цикла
statussubscriptions
active515
past_due228
churned169
Порядок статусов задан вручную, как настраиваемый список в Excel
SELECT status, COUNT(*) AS subscriptions
FROM subscriptions
GROUP BY status
ORDER BY CASE status
  WHEN 'active' THEN 1
  WHEN 'past_due' THEN 2
  WHEN 'churned' THEN 3
END;

Частые ошибки при сортировке таблицы

Перед тем как отправить отсортированный файл, пройдитесь по списку.

  • Отсортирован один столбец вместо таблицы. Итог тот же, разрезы врут. Проверка — сумма по одному менеджеру или региону до и после.
  • В таблице есть пустая строка. Excel считает таблицей только часть до разрыва, и нижние строки остаются несортированными. Удалите пустые строки или выделите диапазон явно.
  • Заголовок уехал в данные. Снят флажок «Мои данные содержат заголовки» или заголовок занимает две строки.
  • Скрытые строки. При сортировке по столбцам скрытые строки не перемещаются. Перед сортировкой отобразите их.
  • Даты и числа текстом. Признак — «от А до Я» вместо «от старых к новым» или «от минимального к максимальному» в меню.
  • Не осталось способа вернуть исходный порядок. Заведите столбец с номером строки до первой сортировки: =СТРОКА(), затем «Копировать» → «Вставить значения».

Частые вопросы

Как отсортировать данные в таблице Excel, чтобы строки не перемешались?

Щёлкните одну ячейку в столбце, а не выделяйте столбец. Если Excel спрашивает про соседние данные, выберите «автоматически расширить выделенный диапазон». Надёжнее всего оформить данные таблицей Excel (Ctrl+T).

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

«Данные» → «Сортировка», первый столбец в «Сортировать по», затем «Добавить уровень» и второй столбец в «Затем по». Уровни выполняются сверху вниз: следующий решает только ничьи предыдущего.

Почему сортировка по дате в Excel работает неправильно?

Почти всегда даты хранятся как текст. Проверьте =СЧЁТ(B2:B9): у настоящих дат он равен числу строк, у текста — 0. Переведите текст в даты через ДАТА(ПРАВСИМВ(…);ПСТР(…);ЛЕВСИМВ(…)) или ДАТАЗНАЧ и сортируйте новый столбец.

Как отсортировать по возрастанию, чтобы 2 шло перед 10?

Значения должны быть числами. Если они текст, переведите их «Преобразовать в число» или ЗНАЧЕН. Для кодов, которые должны остаться текстом, дополните их нулями до одной длины.

Как вернуть исходный порядок после сортировки?

Сразу — Ctrl+Z. Позже — только по столбцу, который однозначно задаёт исходный порядок: номер заказа, дата загрузки или заранее сохранённый номер строки.

Итог

Сортировка в Excel надёжна, пока выполняются три условия: Excel видит всю таблицу, в каждом столбце значения одного типа, а порядок задан явно — уровнями, списком или формулой. Всё остальное — частности: «ё» рядом с «е», пустые ячейки внизу, цвет как отдельный уровень.

Сортировка показывает, что сверху, но не сокращает таблицу и не считает итоги. Следующий шаг — отобрать нужные строки фильтром, посчитать разрезы в сводной таблице и подтянуть справочники через ВПР. Когда тот же отчёт нужно повторять каждую неделю, загрузку и типы удобнее закрепить в Power Query, а сортировку и итоги перенести в SQL.

Продолжить чтение
Вся библиотека