Excel сортировка по возрастанию чисел с буквами
В Excel можно сортировать буквенно-цифровые символы из a-1, a-2, a-3 . a-123 вместо a-1, a-10, a-100, a-11?
Сортировка по самым старым по новейшим или через A-Z определенно не даст мне желаемого результата. Я пытался отформатировать ячейки как числа, но это не помогло.
2 ответа
Простым решением является использование строковых функций для помещения числовых значений в новый столбец в виде числа. Затем сортируйте по этому столбцу. Вы не указали, как значения могут изменяться или как они расположены, но пример:
Предположим, префикс "a-" никогда не меняется, записи в столбце A начинаются со строки 2, а столбец B доступен. В B2 вы должны поместить что-то вроде: = value (mid (a2,3, len (a2) -2)), а затем скопировать формулу по мере необходимости. Чтобы отсортировать, выделите оба столбца и выполните сортировку по B.
Если могут быть другие префиксы, скажем, b-, c- и т. д., аналогичным образом разделить текстовую часть на другой столбец. Затем отсортируйте текстовый столбец в качестве первого столбца сортировки и числовой столбец в качестве второго.
Все, что вы выделите, будет отсортировано в соответствии со столбцами сортировки.
Чтобы объяснить строковые функции, начните с функции mid, которая извлекает строку символов из строки символов. mid (a2,3, len (a2) -2) просматривает текст в a2, начинается с третьего символа (первая цифра, предполагая, что все префиксы «a-»), а затем принимает количество символов, которое на два меньше, чем число в исходном тексте (длина исходного текста минус символы «a-»). Затем функция значения превращает этот результат в число, а не в строку числовых символов.
Пользователь @ fixer1234 прав, вы, вероятно, хотите использовать строковые функции. Вот один из способов сделать это.
Шаг 1
В столбце «Числа» выделите диапазон, а затем разделите текст на дефис: do .
Data > Text to Columns > Delimited > Next > Other: - > Finish
Обратите внимание, что в текстовом поле Other: вам нужен дефис ( - ). И убедитесь, что соседний столбец (справа) пуст, прежде чем сделать это, чтобы не перезаписывать важные данные.
Вы также можете использовать эту функцию для извлечения числа из столбца A:
Шаг 2
Теперь, что мы собираемся сделать на следующем шаге, как вы можете заметить на скриншоте выше, это добавить нули к началу каждого из чисел, у которых меньше цифр, чем наибольшее число. Это позволит вам сортировать эти числа так, как вы хотите.
Но сначала нам нужно немного разобраться в фактах. Если вы можете легко определить, какое наибольшее число, просто посчитайте цифры этого наибольшего числа - это будет число нулей, которое вы хотите использовать в нашей следующей функции. Есть еще один способ определить самое длинное число, не считая вручную цифры самого большого числа.
[ОБНОВЛЕНИЕ] . Вы можете использовать следующую функцию (хотя до сих пор мы не вполне знаю, почему ), чтобы определить самое длинное число:
Кроме того, вы можете просто ввести следующую формулу в ячейку (вы видите это на изображении выше, когда ячейка выделена оранжевым цветом), но вместо того, чтобы просто нажать ENTER чтобы установить ячейку, нажмите горячую клавишу CTRL-SHIFT-ENTER . Это изменит характер функции, превратив ее в формула массива , без необходимости играть с такими функциями, как INDEX() .
(убедитесь, что диапазон соответствует точной таблице, которую вы используете.)
После того как вы нажмете CTRL-SHIFT-ENTER , содержимое ячейки изменится на это, но ввод этого вручную ничего не изменит:
Тем не менее, вы хотите сделать это хорошо. Просто определите, сколько цифр составляют наибольшее число в вашем списке: «1», конечно, имеет 1 цифру, «10» имеет 2 цифры, «100» имеет 3 цифры и т. Д.
Шаг 3
Наконец, в столбце «Развернуть» эта функция преобразует числа из столбца «Числа» в текст с указанным числом предшествующих нулей, которое вы должны использовать на шаге 2.
Обязательно ставьте кавычки вокруг нулей.
Если наибольшее число имеет 8 цифр, то ваша функция будет выглядеть следующим образом:
Сортировка данных на листе позволяет изменять их порядок и быстрее находить нужные значения. Можно отсортировать диапазон или таблицу данных по одному или нескольким столбцам данных. Например, вы можете отсортировать список сотрудников сначала по отделам, а затем по фамилиям.
Как сортировать данные в Excel?
Выделение данных для сортировки
Выделите диапазон табличных данных, например A1:L5 (несколько строк и столбцов) или C1:C80 (один столбец). Этот диапазон может включать и заголовки столбцов.
Быстрая сортировка
Выделите одну ячейку в столбце, в котором требуется выполнить сортировку.
Чтобы выполнить сортировку по возрастанию (от А до Я или от наименьшего числа к наибольшему), на вкладке Данные в группе Сортировка и фильтрация нажмите кнопку .
Чтобы выполнить сортировку по убыванию (от Я до А или от наибольшего числа к наименьшему), нажмите кнопку .
Сортировка по указанным условиям
Эта возможность позволяет выбрать столбец для сортировки, а также другие критерии, например цвет шрифта или ячейки.
Выделите одну любую ячейку в диапазоне, для которого требуется выполнить сортировку.
Нажмите на вкладке Данные в группе Сортировка и фильтрация кнопку Сортировка. Откроется диалоговое окно "Сортировка".
Выберите в раскрывающемся списке Сортировать по первый столбец, для которого вы хотите выполнить сортировку.
Выберите в списке Сортировка пункт Значения, Цвет ячейки, Цвет шрифта или Значок ячейки.
В списке Порядок выберите порядок сортировки, который вы хотите применить. Можно сортировать текст и числа по возрастанию и по убыванию: от А до Я или от Я до А для текста и от наименьшего к наибольшему или от наибольшего к наименьшему для чисел.
В Excel есть кнопки, отвечающие за быструю сортировку выделенного массива данных. Их использование станет оптимальным в тех ситуациях, когда нужно обработать ячейки всего один раз, предварительно выделив необходимые.
-
Зажмите левую кнопку мыши и выделите все значения, которые далее будут подвергаться сортировке.
Если вы еще не решили, хотите сортировать только указанный диапазон или нужно захватывать соседние ячейки, проверьте каждый вариант, отменяя его нажатием горячей клавиши Ctrl + Z. Так проще определиться с изменениями, происходящими в таблице.
Способ 2: Настраиваемая сортировка
Настраиваемая сортировка позволяет более гибко выстроить расположение элементов в таблице, учитывая несколько уровней и разных диапазонов данных. Для ее создания используется специальное меню, которое и возьмем во внимание далее.
- Рекомендуем сразу выделить всю таблицу, если помимо сортировки по алфавиту вы желаете добавить еще несколько уровней.
Способ 3: Формула сортировки
Недостатки предыдущих методов состоят в том, что они сортируют только единоразово, а динамически при внесении изменений таблица не меняется. Если вас не устраивает такой вариант, понадобится вручную создать формулу сортировки, которая при добавлении или удалении элементов автоматически пересчитает их и поставит в нужном порядке. Формул будет несколько, поскольку пока разработчики не добавили специальную функцию, которая позволяла бы обойтись без применения вспомогательных подсчетов. Весь дальнейший процесс состоит из нескольких этапов для правильного понимания принципа сортировки по алфавиту.
Шаг 1: Создание вспомогательной формулы
Основная задача – создать вспомогательную формулу, которая анализирует слова в ячейках и определяет их порядковый номер в будущем отсортированном по алфавиту списке. Это происходит при сравнении встроенными алгоритмами Excel, работающими по принципу анализа кодировки. Детально разбирать работу этой формулы не будем, только покажем ее создание.
-
Для работы с будущими вычислениями понадобится создать из ячеек группу, для чего их необходимо выделить и в специально отведенном поле сверху задать новое название.
Шаг 2: Создание формулы сортировки
Вспомогательная формула готова и работает правильно, поэтому можно приступить к созданию основной функции, которая и будет заниматься сортировкой благодаря уже существующему автоматическому определителю позиций.
-
В новой ячейке начните вводить =ПОИСКПОЗ(СТРОКА(A1) . Эта формула отвечает за поиск позиции строки, из-за чего и следует указать аргумент "A1".
Для упрощения понимания отдельно предоставляем полную формулу:
=(ИНДЕКС(Фрукты;ПОИСКПОЗ(СТРОКА(A1);номер_слова;0))) , вам же останется только отредактировать ее под свои цели и растянуть на необходимый диапазон ячеек.
Шаг 3: Модернизации формулы для повторных названий
Единственный недостаток созданной только что формулы – некорректная ее работа при наличии повторных названий, что вы можете заметить на представленном далее скриншоте. Это связано с тем, что вспомогательная функция не в состоянии правильно обработать повторяющиеся слова, поэтому ее придется немного усовершенствовать, если вы хотите использовать в списке повторы.
-
Откройте вспомогательную формулу и уберите знак " СЧЁТЕСЛИ работал только при условии равенства.
Отблагодарите автора, поделитесь статьей в социальных сетях.
Сортировка данных – распространенный способ упорядочивания значений от большего к меньшему, по алфавиту или другим параметрам. В Excel это можно сделать несколькими методами – обращаясь к функциям или используя пункты в меню.
Вариант 1: Быстрая сортировка в Excel
Иногда требуется максимально быстро отсортировать данные в столбце по возрастанию чисел, убыванию или по алфавиту. Для этого идеально подойдут кнопки быстрой сортировки, предназначенные как раз для выполнения поставленной задачи.
Выделите зажатой левой кнопкой мыши столбец с данными и вызовите меню «Редактирование».
Откройте список «Сортировка и фильтр» и выберите подходящий для вас вариант упорядочения. С числами это по возрастанию или убыванию, а для текста – по алфавиту и в обратную сторону.
Если вы выделили не все ячейки в столбце, появится окно с предложением расширить диапазон. Сделайте это, если за пределами выделения тоже находятся значения, которые нужно сортировать. Укажите сортировку в пределах данного диапазона, если за ним находятся исключительно заголовки.
Изменения вступают в силу сразу же. Нажмите Ctrl + Z для отмены действия, если что-то выполнено неправильно.
Обратите внимание на то, что сортировка сбивается после внесения любых изменений в клетках. Придется снова обращаться к тем же самым кнопкам, упорядочив уже новый массив с данными.
Вариант 2: Настраиваемая сортировка
Более продвинутый вариант, позволяющий задать сразу несколько условий упорядочения, – это настраиваемая сортировка, выполняющаяся через соответствующее окно. Давайте разберем сортировку по двум разным параметрам:
Вы можете не выделять заранее столбец, если для него задано название. Вызовите то же меню редактирования, но на этот раз нажмите по «Настраиваемая сортировка».
Выберите вариант с расширением или сохранением диапазона, если предварительно выделили столбец.
Вы увидите первый уровень сортировки, который и стоит настроить с самого начала.
Выберите столбец для сортировки из первого выпадающего списка.
Далее укажите вариант сортировки. Это может быть значение, цвет шрифта или ячейки, знаки условного форматирования.
В завершение укажите, в каком порядке необходимо отсортировать данные.
Если затем нужно применить еще один вариант сортировки, добавьте уровень и настройте его должным образом.
После применения вернитесь к таблице и убедитесь в том, что действия произведены верно. Учитывайте, что в этом случае сортировка тоже собьется, если вы внесете изменения в любой ячейке.
Вариант 3: Функция НАИБОЛЬШИЙ или НАИМЕНЬШИЙ
Последний вариант – единственный динамический, то есть после внесения изменений в клетках сортировка автоматически перестроится и ее последовательность будет правильной. Как вы уже поняли, для этого понадобится использовать функцию НАИБОЛЬШИЙ или НАИМЕНЬШИЙ.
В пустом столбце выберите первую ячейку для сортировки (желательно, чтобы она находилась параллельно ячейке с существующего столбца). Вызовите одну из указанных функций, отталкиваясь от необходимого вам типа упорядочения.
Далее в скобках укажите (C:C;СТРОКА(C1)), поменяв буквы на номер столбца сортировки.
Растяните функцию, зажав левую кнопку мыши в правой нижней точке ячейки и потянув вниз. Вы увидите, что данные указанного столбца перенесены параллельно, но соблюдена сортировка по возрастанию или убыванию. При этом исходные данные остаются в таком же хаотичном порядке, как были и раньше.
Теперь в исходном столбце вы можете вносить любые изменения для значений, а параллельные данные в отсортированном столбце поменяются в зависимости от указанных данных, но порядок все равно будет правильным.
Используйте любой из вариантов сортировки по надобности, но учитывайте, что динамически меняется только способ с применением функции. Конечно, он потребует создания дополнительного столбца, но в некоторых случаях это является оптимальным решением. Только не забудьте дать название столбцу, чтобы все пользователи таблицы понимали, для чего он нужен на листе.
Читайте также: