Опубликовано: 14.09.2023

Сортировка данных в таблице MS Excel

Для облечения поиска и анализа данных данные в таблице Microsoft Excel необходимо упорядочить в соответствии с поставленной задачей. Для этого в приложении предусмотрены два вида сортировки: простая (по значениям одного столбца) и настраиваемая (по значениям двух и более столбцов).

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

Если требуется распечатать, например, список сотрудников, то очевидно он должен быть предварительно отсортирован по значениям столбца «ФИО», чтобы потом в этом списке легче было найти нужную фамилию. Для сортировки списка по значениям данного столбца необходимо выделить в этом столбце одну (!) любую ячейку с фамилией (см. рис. ниже), а затем указать направление сортировки.

Список сотрудников

Кнопки указания направления сортировки — «от А до Я» или «от Я до А» — можно найти на вкладке «Данные» (см. рис. ниже).

Кнопки выбора направления сортировки

Также команды выбора направления сортировки можно найти на вкладке «Главная» в разделе «Редактирование»

Команды выбора направления сортировки

и в контекстном меню, появляющемся при щелчке правой кнопкой мыши по выделенной ячейке.

Контекстное меню

Если для таблицы был включен фильтр, команды выбора направления сортировки можно также найти в меню, появляющемся при нажатии кнопки фильтра (см. рис. ниже).

Меню фильтра

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

Список сотрудников после сортировки

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

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

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

Кнопка 'Отменить'

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

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

Вызов диалога настройки сортировки производится кнопкой «Сортировка» на вкладке «Данные» (см. рис. ниже).

Кнопка вызова диалога настройки сортировки

Команду вызова диалога настройки можно также найти на вкладке «Главная» в разделе «Редактирование»

Команда вызова диалога настройки сортировки

и в контекстном меню, появляющемся при щелчке правой кнопкой мыши по выделенной ячейке.

Контекстное меню

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

Для исключения строки заголовков из выделенной области (если она была ошибочно туда включена приложением), необходимо в диалоге «Сортировка» установить галочку «Мои данные содержат заголовки».

Диалоговое окно 'Сортировка'

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

Диалог 'Сортировка'

Для добавления следующего уровня сортировки следует щёлкнуть по кнопке «Добавить уровень» () и в появившейся новой строке в поле «Затем по» (см. рис. ниже) выбрать из списка название столбца, по которому будет произведена сортировка во вторую очередь. В данном случае это будет столбец «ФИО».

Диалог 'Сортировка'

Для подтверждения операции сортировки нажимаем кнопку «ОК» и получаем следующий список (см. рис. ниже), в котором первыми идут отсортированные в алфавитном порядке женские фамилии, а затем — отсортированные в том же порядке мужские фамилии.

Список сотрудников после сортировки

Если после выполнения операции сортировки при последующем просмотре таблицы выясниться, что какие-то параметры сортировки были заданы неверно (например, неправильно был задан порядок следования уровней), следует повторно вызвать на экран диалог «Сортировка». Поскольку Excel запоминает параметры последней выполненной сортировки, диалог «Сортировка» будет выведен на экран с заполненными ранее параметрами. Останется только подкорректировать эти параметры, используя имеющиеся в диалоге кнопки, а затем выполнить сортировку повторно.

Например, изменить порядок следования уровней сортировки в диалоге «Сортировка» можно с помощью кнопок со стрелками ( и ). Данные кнопки позволяют поднять выше или опустить выбранный уровень в списке диалога. Удалить же выбранный уровень из списка позволяет кнопка «Удалить уровень» ().

Если в одном из сортируемых столбцов таблицы содержатся данные, для которых следует учитывать регистр символов (например, в столбце содержится марка оборудования, код продукции или что-то в этом роде), следует включить параметр «Учитывать регистр». Сделать это можно в окне «Параметры сортировки» (см. рис. ниже), которое вызывается на экран с помощью кнопки «Параметры…» () из диалога «Сортировка».

Диалог 'Параметры сортировки'

Сортировка данных в выбранной области таблицы

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

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

Список сотрудников

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

Строки листа выделяются целиком, если справа или слева от таблицы с данными, подлежащими сортировке, на листе ничего больше нет, например, других таблиц с другими данными (бывает, что некоторые пользователи размещают на одном листе по горизонтали сразу две-три таблицы). Для выделения нескольких строк целиком можно, например, просто провести указателем мыши сверху вниз или снизу вверх по кнопкам заголовков этих строк при нажатой левой клавише мыши, как это показано на рисунке ниже.

Выделение строк в списке

Если же справа или слева от таблицы, или даже в самой таблице есть ещё что-то, что не должной попасть в область сортировки, в диапазон должны быть включены строки ограниченной длины, содержащие только те данные, которые должны быть отсортированы. Например, если надо отсортировать сведения о нескольких сотрудниках из списка, но при этом исключить из области сортировки ячейки столбца «№ п/п» (см. рис. ниже), то для выделения диапазона строк следует выделить сначала левую верхнюю ячейку будущего диапазона, нажать клавишу Shift и не отпуская её щёлкнуть по правой нижней ячейке выделяемого диапазона, как это показано на нижеприведённом рисунке.

Выделение строк в списке

Особенности сортировки в выделенной области

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

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

Диалог 'Сортировка'

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

Диалог-предупреждение

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

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

Как правило, сортировка выполняется сверху вниз, однако значения при необходимости можно отсортировать и слева направо. Для этого следует выделить в таблице одну любую ячейку с данными (если отсортировать необходимо всю таблицу) или какую-то область таблицы, например, несколько столбцов (если необходимо выполнить сортировку для этих столбцов) и вызвать на экран диалог настройки сортировки. В диалоге настройки сортировки необходимо щёлкнут по кнопке «Параметры…» (), а в появившемся диалоге «Параметры сортировки» установить переключатель «Сортировать» в положение «столбцы диапазона» (см. рис. ниже).

Диалог 'Параметры сортировки'

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

Диалог 'Сортировка'

О возможных проблемах при выполнении сортировки

Приложение неправильно определяет границы области с данными

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

Другой способ решения данной проблемы — это скрытие пустых столбцов и строк перед сортировкой.

Контекстное меню

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

При сортировке строки встают не на свои места

Если в результате сортировки по значениям столбца с текстовыми данными некоторые строки встали не на свои места, то чаще всего причинами этого являются:

  • использование в отдельных словах символов латинского алфавита вместо похожих символов кириллицы (А-A, С-C, Н-H и т.д.) либо наоборот — кириллических символов вместо латинских. С этим часто приходится сталкиваться, когда в ячейках столбца содержатся марки и модели оборудования, названия компаний и т.п. В прочем тексте, если первой буквой предложения или текстовой строки является русская «С», то она нередко бывает подменена латинской «С» или наоборот;
  • использование в тексте лишних пробелов: начальных, конечных и между словами. Пользователи со слабым зрением нередко добавляют дополнительные пробелы между словами для улучшения читаемости текста. Ненужные начальные и конечные пробелы могут появится в данных таблицы при экспортировании или вставке этих данных через буфер обмена из других приложений.

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

Тоже самое происходит и при подмене символов кириллицы латинскими символами — в машинном алфавите латинские символы также предшествуют символам кириллицы.

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

Для проверки формата ячеек столбца эти ячейки следует предварительно выделить (за исключением ячейки заголовка столбца) и вызвать контекстное меню, щёлкнув правой кнопкой мыши по выделенной области.

Контекстное меню

Если в диалоговом окне «Формат ячеек», вызванном для нескольких ячеек столбца, на вкладке «Число» в списке форматов не выделен ни один формат (см. рис. ниже), значит, среди проверяемых ячеек присутствуют ячейки разных форматов.

Диалоговое окно 'Формат ячеек'

Для правильно отформатированного столбца, например, в формате «Дата» вкладка «Число» должна иметь примерно следующий вид:

Диалоговое окно 'Формат ячеек'

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

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

Диалог-предупреждение

Другие статьи по схожей тематике