Я не знаю, как выглядит ваш файл, но я бы использовал регулярные выражения для добавления пробелов или нулей перед каждым числом, чтобы сделать их одинаковой длины (например, 2 становится 002). Затем они будут отсортированы правильно, и вы можете использовать другую замену, чтобы впоследствии убрать начальные пробелы / нули.
Это шаги (работает для номера до 10 символов)
Найти: ^ заменить: 0000000000
Найти: d*(d) Заменить: 1
Найти: ^0* Заменить:
Это работает путем добавления 10 нулей перед числом, хотя это, вероятно, слишком много. Вторая замена, которая берет последние 10 цифр числа, чтобы привести все обратно к одинаковой длине, давая вам такие числа, как 0000000839, 0000000003 и т.д. Они будут отсортированы в том порядке, в котором вы хотите их отсортировать. После сортировки последнее выражение уберет все начальные нули, поэтому вы вернете исходные числа.
Если вам нужны более длинные числа, просто добавьте больше нулей к первой замене и соответственно увеличьте 10 во второй замене. Если вы собираетесь делать это чаще, вы можете записать макрос с этими шагами.
Сортировка в Excel. Как сделать фильтр в excel ?
изменён AVee 176
ответ дан AVee 176
Теперь это легко сделать (по крайней мере, в Notepad++ 7.5.9):
Используйте пункт меню: Edit -> Line Operations -> Sort Lines As Integers Ascending
(Обратите внимание, что если вы не выделите какой-либо текст, он будет сортировать весь файл, а если вы выделите текст, он ограничит сортировку выделенным текстом.)
ответ дан User 2k
Я не пробовал это, но есть плагин, который утверждает, что делает это (пока строки начинаются с числа). Вот ссылка: http://www.scout-soft.com/linesort/
Обновление Хорошо, этот плагин, по-видимому, пока отсутствует. Возможно, он не работает с более новыми версиями NP++. Вот еще один, который я видел в менеджере плагинов, поэтому он, по крайней мере, более распространен: http://william.famille-blum.org/blog/index.php?entry=entry110123-113226
Я только что попробовал это на 6.6.9, и это немного неловко (не забудьте нажать кнопку «Добавить» в диалоговом окне), но работает отлично.
изменён krowe 5k
ответ дан krowe 5k
Выделите все и скопируйте как текст в Excel или другую программу для работы с электронными таблицами, используйте пользовательскую сортировку. Каждая строка должна быть вставлена как отдельная ячейка, A1, B1 и т.д. Просто нужно установить поле как цифру, а не текст. Это делается путем установки формата ячейки или использования функции TEXT. Вставить обратно в блокнот ++.
В более сложном случае, когда OP содержит текст, смешанный с числами (например, «1 Первая строка», «12 Двенадцатая строка»), мы можем создать столбец сортировки для упорядочивания списка. Поскольку после числа есть пробел, мы можем найти этот пробел, чтобы создать столбец только с числами, используя = LEFT (A1, FIND («», A1,1)). После распространения функции на весь столбец мы можем отсортировать оба столбца в соответствии с порядком столбцов сортировки (т. Е. Числовым порядком), а затем скопировать первый столбец обратно в правильном порядке. Точная формула для разрыва номера строки будет зависеть от формата строки, но приведенная выше команда должна работать с незначительными изменениями в большинстве случаев, в противном случае обмен стека имеет дополнительные примеры подобных формул.
Сортировка данных в MS Excel
Источник: poweruser.guru
В программе можно выполнить сортировку только текста только числовых
Здравствуйте. Подскажите «красивый», желательно без перебора, вариант сортировки колонок, в которых находится как текст, так и числа.
Если сортировать, как есть, то сортировка происходит только по числам с 1-9, т.е. при 3х-значном числе будет последовательность: текст=100, текст=11, текст=12 .
Мне в голову пришел только вариант замены текста на число, и после сортировки — обратно на текст. Пример приложен.
Здравствуйте. Подскажите «красивый», желательно без перебора, вариант сортировки колонок, в которых находится как текст, так и числа.
Если сортировать, как есть, то сортировка происходит только по числам с 1-9, т.е. при 3х-значном числе будет последовательность: текст=100, текст=11, текст=12 .
Мне в голову пришел только вариант замены текста на число, и после сортировки — обратно на текст. Пример приложен. rever27
Сообщение Здравствуйте. Подскажите «красивый», желательно без перебора, вариант сортировки колонок, в которых находится как текст, так и числа.
Если сортировать, как есть, то сортировка происходит только по числам с 1-9, т.е. при 3х-значном числе будет последовательность: текст=100, текст=11, текст=12 .
Мне в голову пришел только вариант замены текста на число, и после сортировки — обратно на текст. Пример приложен. Автор — rever27
Дата добавления — 24.06.2015 в 17:40
Источник: www.excelworld.ru
Хитрости сортировки
Сортировка — функция Excel до боли знакомая и привычная почти всем. Тем не менее, есть несколько нестандартных и интересных случаев ее применения.
Случай 1. Сортировка по смыслу, а не по алфавиту
Представим весьма распространенную ситуацию: есть таблица, в которой присутствует столбец с названием месяца (январь, февраль, март. ) или дня недели (пт, вт, ср. ). При простой сортировке по данному столбцу Excel располагает элементы по-алфавиту (т.е. от А до Я): А хотелось бы, конечно, получить на выходе привычную последовательность с января по декабрь или с понедельника по вторник. Такое можно легко реализовать с помощью особой сортировки по пользовательскому списку (custom list sorting). Выделите таблицу и нажмите большую кнопку Сортировка на вкладке Данные (Data — Sort) . Откроется диалоговое окно, в котором нужно задать поле (столбец) сортировки и в последнем раскрывающемся списке выбрать тип сортировки Настраиваемый список (Custom List) :


- должности (директор, замдиректора, руководитель департамента, начальник отдела. )
- воинские звания (генерал, полковник, подполковник, майор. )
- сертификации (TOEFL, ITIL, MCP, MVP. )
- клиентов или товары по важности лично для вас (виски, текила, коньяк, вино, пиво, лимонад. )
- и т.д.
Случай 2. Сортировка текста и чисел одновременно
Предположим, что в нашей таблице есть столбец с кодами различных запчастей и агрегатов для автомобилей (part number). Причем крупные детали в сборе (например, коробка передач, двигатель, рулевое управление) обозначаются чисто цифровым кодом, а мелкие детали, которые в них входят — кодом с добавлением уточняющего номера через, допустим, точку. Попытка отсортировать такой список обычным образом приведет к нежелательному результату, т.к. Excel сортирует отдельно числа (номера крупных агрегатов в сборе) и отдельно текст (номера мелких деталей с точками):
![]() |
![]() |
А хотелось бы, конечно, получить список, где после каждого крупного агрегата будут идти его детали:
Чтобы это реализовать, нужно временно добавить еще один столбец к нашей таблице, в котором превратить все коды в текст с помощью функции ТЕКСТ:
Если затем произвести сортировку по этому столбцу, то Excel спросит о том, как ему сортировать числа и текст:
Если выбрать второй вариант в этом диалоговом окне, то Excel не будет преобразовывать номера крупных агрегатов в числа и станет сортировать весь список как текст, что и даст нам нужный результат. Вспомогательный столбец потом, конечно же, можно удалить.
Ссылки по теме
- Сортировка по цвету
- Сортировка по цвету с помощью надстройки PLEX
- Сортировка формулой
Источник: www.planetaexcel.ru