Перейти к содержимому

Kutools для Office — один пакет. Пять инструментов. Выполняйте больше.

Как отсортировать список чисел, разделенных запятыми, в Excel?

Author Sun Last modified

Сортировка списка значений по возрастанию или убыванию — это очень распространенная задача в Excel. Однако ситуация усложняется, когда эти числа сгруппированы в одной ячейке и разделены запятыми, как показано на скриншоте ниже. Многие пользователи не знают, как отсортировать числа внутри одной ячейки, поскольку стандартные инструменты сортировки Excel работают со строками или столбцами, но не с содержимым ячеек. В этой статье мы рассмотрим несколько практических решений, которые помогут эффективно сортировать числа, разделенные запятыми внутри ячеек, экономя время и уменьшая ручной труд при работе с Excel.

A screenshot of3 cells of comma-separated values in Excel for sorting, and their sorting results

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

Сортировка значений, разделенных запятыми, с помощью Kutools для Excelgood idea3

Сортировка значений, разделенных запятыми, с помощью кода VBA


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

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

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

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

1. Выберите ячейки, которые хотите разделить по запятым, и нажмите Данные > Текст по столбцам. В шаге 1 Мастера преобразования текста в столбцы, выберите опцию Разделители для указания, что запятые будут использоваться для разделения текста. Смотрите скриншот:

2. Нажмите Далее для перехода к шагу 2 Мастера. Отметьте поле Запятая в качестве разделителя, затем нажмите Далее еще раз, чтобы перейти к шагу 3 Мастера. Здесь выберите ячейку, куда вы хотите вывести разделенные значения, убедившись, что диапазон вывода имеет достаточно места справа. Смотрите скриншот:
A screenshot of the Text to Columns Wizard in Excel with Comma delimiter selected

3. Нажмите Готово, и значения будут разделены в соседние столбцы. Проверьте, что числа разделены, как ожидалось; если нет, проверьте исходные данные на наличие начальных/конечных пробелов. Смотрите скриншот:
A screenshot showing separated values after using Text to Columns in Excel

4. Для подготовки к сортировке выделите все разделенные ячейки, нажмите Ctrl + C для копирования, затем щелкните правой кнопкой мыши на пустой области и выберите Специальная вставка > Транспонировать. Это расположит числа вертикально в одном столбце. Смотрите скриншот:
A screenshot of Paste Special with Transpose option in Excel context menu

После транспонирования ваши числа должны выглядеть следующим образом:
A screenshot of transposed data after Paste Special in Excel

5. Теперь выделите столбец с транспонированными значениями. Перейдите на вкладку Данные и нажмите предпочитаемую опцию сортировки в группе Сортировка и фильтр (по возрастанию или по убыванию). Если диалоговое окно Предупреждение о сортировке появится, выберите Продолжить с текущим выделением и подтвердите, нажав OK.
A screenshot of Sort & Filter options on Excel Data tab for sorting columns A screenshot of Sort Warning dialog in Excel with Continue with current selection

Выбранный столбец теперь будет отсортирован в порядке, который вы выбрали. Если вам нужно обработать несколько ячеек, повторите это действие для каждой из них.
A screenshot of sorted values in Excel after using Text to Columns and Sort

6. Повторите описанный выше процесс для каждого набора транспонированных значений. Обратите внимание, что этот метод ручной и лучше всего подходит для коротких списков.
A screenshot of3 cells of comma-separated values in Excel for sorting, and their sorting results

Совет: После сортировки, если вы хотите снова объединить числа в одну ячейку через запятую, вы можете использовать функцию TEXTJOIN (в Excel 2016 или новее) или вручную объединить элементы с помощью оператора CONCATENATE. Будьте внимательны к таким ошибкам, как пропущенные значения или неправильное размещение разделителей.


Сортировка значений, разделенных запятыми, с помощью Kutools для Excel

При работе с большими наборами данных или выполнении такого рода задач регулярно использование таких инструментов, как Kutools для Excel, обеспечивает быстрый и удобный способ разделения и сортировки значений, разделенных запятыми, в ячейках. Используя утилиту Разделение ячеек, можно значительно сократить объем ручной работы. Этот подход особенно подходит для пользователей, стремящихся оптимизировать свой рабочий процесс и минимизировать повторяющиеся действия.

Kutools для Excel предлагает более 300 продвинутых функций для упрощения сложных задач, повышая креативность и эффективность. Интеграция с возможностями ИИ позволяет Kutools автоматизировать задачи с высокой точностью, делая управление данными без усилий. Подробная информация о Kutools для Excel...  Бесплатная пробная версия...

После установки Kutools для Excel следуйте этим шагам:

1. Выберите диапазон, содержащий значения, разделенные запятыми, которые вы хотите обработать. Нажмите Kutools > Объединить и разделить > Разделить ячейки. В диалоговом окне Разделить ячейки , отметьте Разделить на строки в секции Тип , и отметьте Другое в секции Разделить по Убедитесь, что ввели запятую (, ) в качестве разделителя. Смотрите скриншот:
 A screenshot of Kutools Split Cells dialog

2. Нажмите OK. Появится диалоговое окно, предлагающее выбрать ячейку для размещения разделенных значений. Выберите целевую ячейку с достаточным количеством пустых строк ниже, затем подтвердите, нажав OK. Числа, разделенные запятыми, теперь должны быть разделены на отдельные строки. Смотрите скриншот:
A screenshot showing Kutools dialog to specify where to place split values
A screenshot showing comma-separated values split to rows in Excel using Kutools

3. Выберите один из разделенных столбцов или строк, которые хотите отсортировать, затем перейдите к пункту меню Данные > Сортировать от наименьшего к наибольшему или Сортировать от наибольшего к наименьшему. В диалоговом окне Предупреждение о сортировке , снова выберите Продолжить с текущим выделением и нажмите OK. Смотрите скриншот:
A screenshot of Sort & Filter options on Excel Data tab for sorting columns A screenshot of Sort Warning dialog in Excel with Continue with current selection

4. Повторите шаг 3 для сортировки дополнительных столбцов, если это необходимо. После сортировки вы можете дополнительно обработать или снова объединить данные, используя формулы, такие как TEXTJOIN.
A screenshot of3 cells of comma-separated values in Excel for sorting, and their sorting results

Совет: Этот метод особенно полезен для повторяющихся задач, так как 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

🤖 Kutools AI Aide: Совершенно новый подход к анализу данных благодаря: Интеллектуальное выполнение |  Генерация кода  |  Создание пользовательских формул |  Анализ данных и построение диаграмм  |  Вызов Kutools Functions
Популярные функции: Поиск, выделение или отметка дубликатов | Удалить пустые строки | Объединить столбцы или адреса без потери данных | Округлить ...
Супер ПОИСК: VLOOKUP по нескольким критериям | VLOOKUP по нескольким значениям | Многолистовой поиск | Распознавание нечетких соответствий ...
Расширенный раскрывающийся список: Быстро создать раскрывающийся список | Зависимый раскрывающийся список | Множественный выбор в раскрывающемся списке ...
Менеджер столбцов: Добавить определённое количество столбцов | Переместить столбцы | Переключить видимость скрытых столбцов | Сравнить диапазоны и столбцы ...
Рекомендуемые функции: Сетка фокусировки | Дизайн листа | Улучшенная строка формулы | Управление книгой и листами | Библиотека автотекста | Выбор даты | Объединить данные | Зашифровать/расшифровать ячейки | Отправить письмо по списку | Супер фильтр | Специальный фильтр (фильтр жирный/курсив/зачеркнутый...) ...
Топ15 наборов инструментов:12 текстовых инструментов (Добавить текст, Удалить определенные символы, ...) |50+ типов диаграмм (Диаграмма Ганта, ...) |40+ полезных формул (Расчет возраста на основе даты рождения, ...) |19 инструментов для вставки (Вставить QR-код, Вставить изображение по пути, ...) |12 инструментов преобразования (Преобразовать в слова, Конвертация валюты, ...) |7 инструментов объединения и разделения (Расширенное объединение строк, Разделить ячейки, ...) | ... и многое другое
Используйте Kutools на предпочитаемом вами языке — поддерживает Английский, Испанский, Немецкий, Французский, Китайский и более40 других языков!

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