Как сделать в excel автоматическую сортировку?


Стандартная сортировка

Отсортировать таблицу в Excel можно стандартно, процедура включает в себя 3 варианта:

  • по алфавиту (от А до Я);
  • возрастанию;
  • убыванию.

Это удобно, при работе с конкретными и большими блоками информации. Например, объемы продаж или подсчет доходов или расходов. Конечно, в таблице 4х4 пользователь сможет быстро найти нужную цифру, но с размерами 44х44 это сделать сложнее – в этом случае и используют сортировку.

Изменение чисел или других данных по возрастанию или убыванию простое. В первую очередь следует определить наличие в таблице формул. Если они есть, то лучше всего перенести данные на новый лист, чтобы не сбить настройки ячеек. После завершения всех подготовительных операций нужно выделить нужную таблицу, и перейти в панель “Данные”. В этом меню и находится пункт “Сортировка”.

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

параметры сортировки

Совет! Если в таблице имеются формулы, то необходимо поставить крестик возле строки “Мои данные содержат заголовки”.

Упорядочить текст по алфавиту можно так же, только следует выбрать соответствующий параметр фильтра (в разных версиях Excel он подписан по разному: A-Z или А-Я).

Что делать, если лист или книга в Excel защищены паролем – как снять защиту

Умная таблица

Сортировку и фильтр можно также активировать, превратив область данных, с которой вы работаете, в так называемую «умную таблицу».

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

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

После этого, открывается диалоговое окно, в котором можно изменить координаты таблицы. Но, если вы ранее выделили область правильно, то больше ничего делать не нужно. Главное, обратите внимание, чтобы около параметра «Таблица с заголовками» стояла галочка. Далее, просто нажать на кнопку «OK».

Если вы решили воспользоваться вторым способом, тогда тоже нужно выделить всю область таблицы, но на этот раз перейти во вкладку «Вставка». Находясь тут, на ленте в блоке инструментов «Таблицы», следует нажать на кнопку «Таблица».

После этого, как и в прошлый раз, откроется окно, где можно скорректировать координаты размещения таблицы. Жмем на кнопку «OK».

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

При нажатии на этот значок, будут доступны все те же функции, что и при запуске фильтра стандартным способом через кнопку «Сортировка и фильтр».

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

Отблагодарите автора, поделитесь статьей в социальных сетях.

Несколько ячеек

Для сортировки в Excel по нескольким столбцам или ячейкам стоит воспользоваться пунктом “Настраиваемый список” и выбрать меню “Добавить уровень”. Тут следует указать для каждого столбца необходимый параметр редактирования. Именно в таком случае информация в таблице изменится для каждого столбца отдельно.

В подменю можно создавать отдельные уровни, и делать конкретную иерархию по которой совершается редактирование.

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

Таблицы

Если у Вас есть таблица, в которой нужно выполнить сортировку сразу по нескольким столбцам, делаем следующее. Выделяем весь диапазон ячеек таблицы вместе с шапкой. Кликаем по кнопочке «Сортировка и фильтр» и выбираем «Настраиваемая …».

Давайте отсортируем класс в порядке возрастания, и таким же образом средний бал.

В окне сортировки ставим галочку в поле «Мои данные содержат заголовки». В разделе «Столбец» выбираем из списка «Класс», сортировка по «Значению», а порядок «По возрастанию».

Чтобы сделать все тоже самое по среднему балу, нажмите на кнопочку «Добавить уровень». В разделе «Столбец» выбираем «Средн.бал». Нажмите «ОК».

Данные в таблице отсортированы.

Теперь в столбце «Имя» закрасим ячейки с мальчиками в синий цвет, ячейки с девочками в розовый. Чтобы не делать это для каждой ячейки в отдельности, прочтите статью, как выделить ячейки в Excel – в ней написано, как выделить несмежные ячейки.

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

В открывшемся окне уже есть два уровня, которые мы сделали раньше. Эти уровни имеют приоритет – у первого самый большой, у второго меньше и так далее. То есть, если мы хотим, чтобы сначала выполнилась сортировка данных в таблице девочки/мальчики, затем по классу, а затем по среднему балу – нужно в таком порядке и расставить уровни.

Нажимаем на кнопку «Добавить уровень». В разделе «Столбец» выбираем «Имя», сортировка – «Цвет ячейки», порядок – «розовый», «Сверху».

Теперь с помощью стрелочек перемещаем данную строку наверх списка. Нажмите «ОК».

Таблица с отсортированными данными выглядит следующим образом.

Если Вы работаете с большими таблицами, можете также прочесть статьи по темам: как закрепить шапку в таблице Excel – чтобы при прокрутке она всегда отображалась вверху, и как сделать фильтрацию данных в Эксель – это позволит просматривать данные в таблице с конкретными параметрами.

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

Оценить статью:

(1 оценок, среднее: 5,00 из 5)

Об авторе: Олег Каминский

Вебмастер. Высшее образование по специальности «Защита информации». Создатель портала comp-profi.com. Автор большинства статей и уроков компьютерной грамотности

    Похожие записи
  • Сумма произведений в Excel
  • Как построить график в Excel
  • Как защитить и снять защиту с листа в Эксель

По цвету

Форматирование данных по дате или по цвету мало чем отличается друг от друга. Требуется выделить таблицу, зайти в меню “Сортировка” и выбрать “Параметры”. В подразделе следует выбрать параметр “Сортировка по цвету”. После этого в соответствующем окне нужно выставить оттенок цвета с которого будет начинаться сортировка (т.е. он будет находится вверху или внизу таблицы). Редактор после подтверждения действия выдаст отредактированную таблицу, в которой указанный цвет будет расположен вверху или внизу.

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

По дате

Для сортировки по дате в Excel выделяем нужную таблицу, далее порядок действий стандартный – меню “Данные”, раздел “Сортировка”. Стандартный функционал в Excel позволяет сделать такую работу в один клик – нужно выбрать “Сортировать от старых к новым” или же на “от новых к старым”. Подобная функция автоматически отсортирует все данные, согласно установленному параметру.

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

Как построить диаграмму Ганта в Excel, онлайн сервисах и других программах

Важно! Проблемы с выбором данного фильтра могут быть обусловлены некорректным форматом ячеек. Например, если дата будет введена простым числами в формате 01.01.2011, без указания формата ячейки “Дата”.

Сортировка строк

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

Проходим стандартный путь – “Данные” – “Сортировка”. Выбираем меню “Настраиваемая”, “Параметры”. Для переключения варианта сортировки со столбцов на строки следует переместить галочку на “столбцы диапазона”.

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

Таким образом можно отсортировать строки.

Случайная и динамическая сортировка

Случайное редактирование производится с помощью функции СЛЧИС. Оно подойдет для случайного форматирования различных чисел. Для этого следует выделить нужные числа, после чего ввести функцию =СЛЧИС(). В скобках указать нужный диапазон.

Динамическое редактирование подойдет для автоматического обновления таблички. Для этого в соседней ячейке ставим курсор и вводим =НАИМЕНЬШИЙ(А:A;СТРОКА(А1)). В качестве диапазона нужно выбрать полный столбец, а в качестве коэффициента – СТРОКА со ссылкой на начальное значение.

Сортировка формулой

6778 26.10.2012

Если вам нужно отсортировать список, то к вашим услугам куча способов, самый простой из которых — кнопки сортировки на вкладке или в меню Данные (Data — Sort)

. Бывают, однако, ситуации, когда сортировку списка нужно делать автоматически, т.е. формулами. Такое может потребоваться, например, при формировании данных для выпадающего списка, при вычислении данных для диаграмм и т.д. Как же «на лету» сортировать список формулой?

Способ 1. Числовые данные

Если список содержит только числовую информацию, то его сортировку можно легко сделать с помощью функций НАИМЕНЬШИЙ (SMALL) и СТРОКА (ROW):

Функция НАИМЕНЬШИЙ (SMALL) выдергивает из массива (столбец А) n-й по счету наименьший элемент. Т.е. НАИМЕНЬШИЙ(A:A;1) — это самое маленькое число из столбца, НАИМЕНЬШИЙ(А:А;2) — второе по счету наименьшее и т.д.

Функция СТРОКА (ROW) выдает порядковый номер строки для указанной ячейки, т.е. СТРОКА(А1)=1, СТРОКА(A2)=2 и т.д. В данном случае она используется просто как генератор последовательности чисел n=1,2,3… для нашего отсортированного списка. С тем же успехом можно было сделать дополнительный столбец, заполнить его вручную числовой последовательностью 1,2,3… и ссылаться на него вместо функции СТРОКА.

Способ 2. Текстовый список и обычные формулы

Если в списке не числа, а текст, то функция НАИМЕНЬШИЙ (SMALL) уже не сработает, поэтому придется пойти другим, чуть более длинным, путем.

Сначала добавим служебный столбец с формулой, где будет вычисляться порядковый номер каждого имени в будущем отсортированном списке с помощью функции СЧЁТЕСЛИ (COUNTIF):

В английской версии это будет:

=COUNTIF(A:A,»<«&A1)+COUNTIF($A$1:A1,»=»&A1)

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

Теперь полученные номера надо расставить последовательно по возрастанию. Для этого можно использовать функцию НАИМЕНЬШИЙ (SMALL) из первого способа:

Ну, и наконец, осталось просто вытащить из списка имена по их номерам. Для этого можно использовать такую формулу:

Функция ПОИСКПОЗ (MATCH) ищет в столбце В нужный порядковый номер (1, 2, 3 и т.д.) и выдает, по сути, номер строки, где находится это число. Функция ИНДЕКС (INDEX) вытаскивает из столбца А имя по этому номеру строки.

Способ 3. Формула массива

Этот способ представляет собой, по сути, тот же алгоритм расстановки, что и в Cпособе-2, но реализованный формулой массива. Для упрощения формулы диапазону ячеек С1:С10 было дано имя List (выделить ячейки, нажать Ctrl+F3 и кнопку Создать):

В ячейку Е1 копируем нашу формулу:

=ИНДЕКС(List; ПОИСКПОЗ(НАИМЕНЬШИЙ(СЧЁТЕСЛИ(List; «<«&List); СТРОКА(1:1)); СЧЁТЕСЛИ(List; «<«&List); 0))

Или в англоязычной версии:

=INDEX(List, MATCH(SMALL(COUNTIF(List, «<«&List), ROW(1:1)), COUNTIF(List, «<«&List), 0))

и нажимаем Ctrl+Shift+Enter, чтобы ввести ее как формулу массива. Потом полученную формулу можно скопировать вниз на всю длину списка.

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

Во-первых, диапазон List нужно будет задать динамически. Для этого при создании нужно указать не фиксированный диапазон C3:C10, а специальную формулу, которая будет ссылаться на все имеющиеся значения независимо от их количества. Нажмите Alt+F3 или откройте вкладку Формулы — Диспетчер имен (Formulas — Name Manager), создайте новое имя и в поле Ссылка (Reference) впишите вот такую формулу (я предполагаю, что диапазон сортируемых данных начинается с ячейки C1):

=СМЕЩ(C1;0;0;СЧЁТЗ(C1:C1000);1)

=OFFSET(C1,0,0,СЧЁТЗ(C1:C1000),1)

Во-вторых, вышеописанную формулу массива нужно будет протянуть вниз с запасом — с расчетом на вводимые в будущем дополнительные данные. При этом формула массива начнет выдавать ошибку #ЧИСЛО на незаполненных пока ячейках. Чтобы ее перехватить, можно использовать функцию ЕСЛИОШИБКА, которую нужно дописать «вокруг» нашей формулы массива:

=ЕСЛИОШИБКА(ИНДЕКС(List; ПОИСКПОЗ(НАИМЕНЬШИЙ(СЧЁТЕСЛИ(List; «<«&List); СТРОКА(1:1)); СЧЁТЕСЛИ(List; «<«&List); 0));»»)

=IFERROR(NDEX(List, MATCH(SMALL(COUNTIF(List, «<«&List), ROW(1:1)), COUNTIF(List, «<«&List), 0));»»)

Она перехватывает ошибку #ЧИСЛО и выводит вместо нее пустоту (пустые кавычки).

Ссылки по теме:

  • Сортировка диапазона по цвету
  • Что такое формулы массива и зачем они нужны
  • Сортировка функцией СОРТ и динамические массивы в новом Office 365



Vitaly

26.10.2012 00:30:08

Всё это хорошо. Но как быть когда формула нужна для того, чтобы брать данные из соседних ячеек справа, выбирая имя в выпадающем списке столбца А:А. Ведь согласно этой формуле (2 вариант) у меня будет сортировать только первый столбец, а последующие останутся не сортированными, а значит данные будут не верны. Или я ошибаюсь. Ссылка

Николай Павлов

26.10.2012 00:31:01

Я бы отсортировал первый столбец с уникальными значениями, а потом подтягивал бы к нему остальные данные в строке с помощью функции ВПР Родитель Ссылка

a0512

08.06.2015 17:40:22

у меня первый столбец с датами, т.е. при сортировке формулой вылезает несколько одинаковых дат подряд. как им присвоить уникальные значения? разобрался — спасибо (способ 2) Родитель Ссылка

Максим

26.10.2012 00:30:37

Николай, формула массива работает как надо! НО. Так как, у меня в столбце «С» порядка 15 000 строк, то после каждого ввода новых значений происходит 100% загрузки процессора на 5-10 секунд (отмечу, что ПК имеет достаточно неплохие характеристики). Это достаточно неудобно в том плане, что невозможно быстро вводить значения в столбец «С». Пока что выход только в отключении автоматического вычисления формул. Может быть есть способ как-то «ускорить» работу excel?. Ссылка

Николай Павлов

26.10.2012 00:31:18

Формулы массива по определению медленная штука. Попробуйте макросом сортировать — должно быть шустрее. Родитель Ссылка

PaVEL

12.02.2013 19:33:22

Добрый день Николай. А как можно сделать чтобы список был не фиксированный, а с возможностью добавления, а отсортированная таблица автоматически подстраивалась под исходную. Данная вопрос пересекается с темой: «Выпадающий список с добавлением новых элементов» и первым вопросом. Возможно ли это? Ссылка

Николай Павлов

09.03.2013 08:36:20

Можно про создании именованного диапазона List использовать функцию СМЕЩ (OFFSET) для создания динамического «резинового» диапазона. А формулу массива для сортировки протянуть с запасом — ниже, чем нужно. Получившиеся в лишних ячейках ошибки #ЧИСЛО можно перехватывать функцией ЕСЛИОШИБКА (IFERROR). Получившийся диапазон вполне можно использовать в качестве источника для выпадающего списка. Допишу-ка я это, пожалуй, в статью. Родитель Ссылка

Тарас Иванёха

01.04.2013 15:31:44

Добрый день. А как быть если в исходном списке не только текстовые значения, но и встречаются цифры? Ссылка

Николай Павлов

11.04.2013 10:38:35

2й и 3й способы не помогут? Родитель Ссылка

Тарас Иванёха

11.04.2013 10:50:14

Добрый день. 2 и 3 способы возвращают случайные текстовые значения из исходного списка —

СашаАлекс
МитяАлекс
ВасяБоря
КоляБоря
ЛенаВася
ЯнаВася
ТаняИван
АлексКоля
ЛенаЛена
БоряЛена
ИванМитя
ЩукарьСаша
5Таня
6Щукарь
7Яна

Родитель Ссылка
Николай Павлов

11.04.2013 21:17:57

Попробуйте поставить для ячеек с числами текстовый формат. Родитель Ссылка

Тарас Иванёха

12.04.2013 10:46:31

Форматирование ячеек не помогает. Пробывал прописывать дополнительный столбец с формулой ТЕКСТ(ссылка на исходные данные;0) — тогда третий способ сортировки возвращает первое встреченное число вместо всех остальных чисел. Родитель Ссылка

Rustem

05.06.2013 21:14:29

Тарас Иванёха, воспользуйтесь «пользовательской сортировкой»: Параметры Excel-Дополнительно-Создать списки для сортировки и заполнения-Изменить списки. Введите туда Ваш формат сортировки (второй столбец). На листе: Сортировка-Настраиваемая сортировка-Выберите Ваш список сортировки. ВСЕ! Excel 2010. Существует ли такой способ сортировки в ранних версиях, сказать не могу. Ссылка

Иван Л

31.01.2017 15:56:10

Спасибо! Как в «Способ 2» можно изменить диапазон? =СЧЁТЕСЛИ(A:A;»<«&A1)+СЧЁТЕСЛИ($A$1:A1;»=»&A1) — если значения начинаются в ячейке A1, какая должна быть формула для диапазона, если значения начинаются в ячейке C24

? Ссылка

Денис

20.03.2019 11:16:04

Добрый день! Взял вашу формулу массива но она почему то не корректно работает если столбцы начинаются не с первой строки. как можно это исправить? Ссылка

Илья Корчагин

07.11.2019 11:34:19

Попробуйте поэкспериментировать с добавлением константы к результату возвращаемому функцией ПОИСКПОЗ(…) =ЕСЛИОШИБКА(

ИНДЕКС(List;5+ПОИСКПОЗ(… Если это не поможет, то придется разбираться в том как именно Вы задаете именованный диапазон List. Родитель Ссылка

Рейтинг
( 1 оценка, среднее 5 из 5 )
Понравилась статья? Поделиться с друзьями: