Как отсортировать список чисел, разделенных запятыми, в Excel?
Сортировка списка значений по возрастанию или убыванию — это очень распространенная задача в Excel. Однако ситуация усложняется, когда эти числа сгруппированы в одной ячейке и разделены запятыми, как показано на скриншоте ниже. Многие пользователи не знают, как отсортировать числа внутри одной ячейки, поскольку стандартные инструменты сортировки Excel работают со строками или столбцами, но не с содержимым ячеек. В этой статье мы рассмотрим несколько практических решений, которые помогут эффективно сортировать числа, разделенные запятыми внутри ячеек, экономя время и уменьшая ручной труд при работе с Excel.
Сортировка значений, разделенных запятыми, с помощью функции «Текст по столбцам»
Сортировка значений, разделенных запятыми, с помощью Kutools для Excel
Сортировка значений, разделенных запятыми, с помощью кода VBA
Сортировка значений, разделенных запятыми, с помощью функции «Текст по столбцам»
Чтобы отсортировать числа, разделенные запятыми, в пределах одной ячейки, сначала нужно временно разделить эти числа на отдельные ячейки, отсортировать их, а затем (при необходимости) снова объединить. Функция Excel «Текст по столбцам» может быстро разделить данные, разделенные запятыми, на отдельные столбцы, после чего вы можете транспонировать, сортировать и дополнительно обрабатывать свои данные. Этот подход хорошо работает, если вы комфортно чувствуете себя при преобразовании ячеек и выполнении ручных шагов.
Область применения: Этот метод лучше всего подходит для пользователей, работающих с небольшими или умеренными списками и не нуждающихся в частом повторении процесса, так как он требует нескольких ручных шагов и может быть не идеальным для динамических или часто обновляемых данных.
Несколько моментов для рассмотрения: Убедитесь, что справа от выбранного столбца есть достаточно пустых ячеек, чтобы избежать перезаписи существующих данных при разделении с помощью «Текст по столбцам». Помните о проверке ваших данных на наличие пробелов после запятых, так как они могут повлиять на результаты разделения и потребовать обрезки. Объединение отсортированных значений обратно в одну ячейку автоматически не происходит в этом методе и потребует дополнительных действий.
1. Выберите ячейки, которые хотите разделить по запятым, и нажмите Данные > Текст по столбцам. В шаге 1 Мастера преобразования текста в столбцы, выберите опцию Разделители для указания, что запятые будут использоваться для разделения текста. Смотрите скриншот:
2. Нажмите Далее для перехода к шагу 2 Мастера. Отметьте поле Запятая в качестве разделителя, затем нажмите Далее еще раз, чтобы перейти к шагу 3 Мастера. Здесь выберите ячейку, куда вы хотите вывести разделенные значения, убедившись, что диапазон вывода имеет достаточно места справа. Смотрите скриншот:
3. Нажмите Готово, и значения будут разделены в соседние столбцы. Проверьте, что числа разделены, как ожидалось; если нет, проверьте исходные данные на наличие начальных/конечных пробелов. Смотрите скриншот:
4. Для подготовки к сортировке выделите все разделенные ячейки, нажмите Ctrl + C для копирования, затем щелкните правой кнопкой мыши на пустой области и выберите Специальная вставка > Транспонировать. Это расположит числа вертикально в одном столбце. Смотрите скриншот:
После транспонирования ваши числа должны выглядеть следующим образом:
5. Теперь выделите столбец с транспонированными значениями. Перейдите на вкладку Данные и нажмите предпочитаемую опцию сортировки в группе Сортировка и фильтр (по возрастанию или по убыванию). Если диалоговое окно Предупреждение о сортировке появится, выберите Продолжить с текущим выделением и подтвердите, нажав OK.
Выбранный столбец теперь будет отсортирован в порядке, который вы выбрали. Если вам нужно обработать несколько ячеек, повторите это действие для каждой из них.
6. Повторите описанный выше процесс для каждого набора транспонированных значений. Обратите внимание, что этот метод ручной и лучше всего подходит для коротких списков.
Совет: После сортировки, если вы хотите снова объединить числа в одну ячейку через запятую, вы можете использовать функцию TEXTJOIN (в Excel 2016 или новее) или вручную объединить элементы с помощью оператора CONCATENATE. Будьте внимательны к таким ошибкам, как пропущенные значения или неправильное размещение разделителей.
Сортировка значений, разделенных запятыми, с помощью Kutools для Excel
При работе с большими наборами данных или выполнении такого рода задач регулярно использование таких инструментов, как Kutools для Excel, обеспечивает быстрый и удобный способ разделения и сортировки значений, разделенных запятыми, в ячейках. Используя утилиту Разделение ячеек, можно значительно сократить объем ручной работы. Этот подход особенно подходит для пользователей, стремящихся оптимизировать свой рабочий процесс и минимизировать повторяющиеся действия.
После установки Kutools для Excel следуйте этим шагам:
1. Выберите диапазон, содержащий значения, разделенные запятыми, которые вы хотите обработать. Нажмите Kutools > Объединить и разделить > Разделить ячейки. В диалоговом окне Разделить ячейки , отметьте Разделить на строки в секции Тип , и отметьте Другое в секции Разделить по Убедитесь, что ввели запятую (, ) в качестве разделителя. Смотрите скриншот:
2. Нажмите OK. Появится диалоговое окно, предлагающее выбрать ячейку для размещения разделенных значений. Выберите целевую ячейку с достаточным количеством пустых строк ниже, затем подтвердите, нажав OK. Числа, разделенные запятыми, теперь должны быть разделены на отдельные строки. Смотрите скриншот:
3. Выберите один из разделенных столбцов или строк, которые хотите отсортировать, затем перейдите к пункту меню Данные > Сортировать от наименьшего к наибольшему или Сортировать от наибольшего к наименьшему. В диалоговом окне Предупреждение о сортировке , снова выберите Продолжить с текущим выделением и нажмите OK. Смотрите скриншот:
4. Повторите шаг 3 для сортировки дополнительных столбцов, если это необходимо. После сортировки вы можете дополнительно обработать или снова объединить данные, используя формулы, такие как TEXTJOIN.
Совет: Этот метод особенно полезен для повторяющихся задач, так как Kutools автоматизирует многие ручные шаги разделения. Если у вас длинные списки или нужно обработать сразу несколько ячеек, это решение может значительно повысить эффективность.
Kutools для Excel - Усильте Excel более чем 300 необходимыми инструментами. Наслаждайтесь постоянно бесплатными функциями ИИ! Получите прямо сейчас
Демонстрация: Сортировка значений, разделенных запятыми, с помощью Kutools для Excel
Сортировка значений, разделенных запятыми, с помощью кода VBA
Для тех, кто хочет полностью автоматизировать процесс — независимо от версии Excel — простой макрос VBA может быть использован для разделения, сортировки и повторного объединения чисел, разделенных запятыми, в любой ячейке. Это решение идеально подходит для пользователей, сталкивающихся с повторяющимися задачами или большими объемами данных, где ручные варианты непрактичны.
Преимущества: VBA позволяет обрабатывать большие наборы данных, обрабатывать много ячеек за один раз и повторять операцию по необходимости. Однако запуск макросов требует включения макросов в вашей книге и базового знакомства с редактором VBA. Для многопользовательских или высокоавтоматизированных сред это может быть наиболее масштабируемым подходом.
Примечание: Всегда сохраняйте свою работу перед запуском новых макросов, и, если возможно, протестируйте макрос на копии ваших данных, чтобы предотвратить случайную потерю.
1. Нажмите Разработчик > Visual Basic, чтобы открыть редактор Microsoft Visual Basic для приложений. В редакторе нажмите Вставка > Модуль, затем вставьте следующий код в Модуль:
Sub SortCommaSeparatedNumbers()
Dim rng As Range
Dim cell As Range
Dim arr As Variant
Dim sortedArr As Variant
Dim temp As String
Dim i As Long, j As Long
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set rng = Application.Selection
Set rng = Application.InputBox("Select range to sort comma-separated numbers", xTitleId, rng.Address, Type:=8)
Application.ScreenUpdating = False
For Each cell In rng
If Not IsEmpty(cell.Value) Then
arr = Split(cell.Value, ",")
' Bubble Sort
For i = LBound(arr) To UBound(arr) - 1
For j = i + 1 To UBound(arr)
If Val(arr(i)) > Val(arr(j)) Then
temp = arr(i)
arr(i) = arr(j)
arr(j) = temp
End If
Next j
Next i
cell.Value = Join(arr, ",")
End If
Next cell
Application.ScreenUpdating = True
MsgBox "Sorting done!", vbInformation, xTitleId
End Sub
2. Закройте редактор VBA. Вернитесь в Excel и нажмите Alt + F8, выберите SortCommaSeparatedNumbers, затем нажмите Выполнить. Появится диалоговое окно, предлагающее выбрать диапазон ячеек для обработки. После того как вы выберете диапазон и подтвердите, скрипт обработает каждую ячейку, автоматически сортируя числа внутри них и снова объединяя их запятыми.
Устранение неполадок и советы: Этот макрос сортирует значения как числа — даже если после запятых следуют пробелы. Если ячейки содержат нечисловые записи, макрос также сортирует их, но может выдать неожиданные результаты. Чтобы сортировать по убыванию, измените оператор сравнения в коде с If Val(arr(i)) > Val(arr(j)) Then
на If Val(arr(i)) < Val(arr(j)) Then
. Если ваш список включает текст или смешанные данные, рассмотрите возможность добавления проверки типов. Обязательно сделайте резервную копию данных перед запуском пакетных операций.
Подводя итог, сортировка чисел, разделенных запятыми, внутри ячеек может быть выполнена несколькими способами в Excel, каждый из которых подходит для разных сценариев и версий Excel. «Текст по столбцам» или Kutools — практичные решения для ручной или инструментальной обработки, тогда как VBA обеспечивает эффективную автоматическую обработку — особенно для часто обновляемых или больших наборов данных. Учитывайте свои реальные потребности, размер данных и версию Excel, чтобы выбрать правильное решение. При возникновении ошибок или непредвиденного поведения дважды проверьте разделители, форматирование ячеек и убедитесь, что очистили лишние пробелы перед запуском вышеуказанных методов. Регулярное сохранение вашей работы и работа с копиями данных помогают избежать случайной потери или перезаписи важной информации.
Лучшие инструменты для повышения продуктивности в Office
Повысьте свои навыки работы в Excel с помощью Kutools для Excel и ощутите эффективность на новом уровне. Kutools для Excel предлагает более300 расширенных функций для повышения производительности и экономии времени. Нажмите здесь, чтобы выбрать функцию, которая вам нужнее всего...
Office Tab добавляет вкладки в Office и делает вашу работу намного проще
- Включите режим вкладок для редактирования и чтения в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
- Открывайте и создавайте несколько документов во вкладках одного окна вместо новых отдельных окон.
- Увеличьте свою продуктивность на50% и уменьшите количество щелчков мышью на сотни ежедневно!
Все надстройки Kutools. Один установщик
Пакет Kutools for Office включает надстройки для Excel, Word, Outlook и PowerPoint, а также Office Tab Pro — идеально для команд, работающих в разных приложениях Office.





- Комплексный набор — надстройки для Excel, Word, Outlook и PowerPoint плюс Office Tab Pro
- Один установщик, одна лицензия — настройка занимает считанные минуты (MSI-совместимо)
- Совместная работа — максимальная эффективность между приложениями Office
- 30-дневная полнофункциональная пробная версия — без регистрации и кредитной карты
- Лучшее соотношение цены и качества — экономия по сравнению с покупкой отдельных надстроек