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

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

Как преобразовать одну строку в несколько столбцов и строк в Excel?

Author Sun Last modified

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

A screenshot showing a single row of data being converted into multiple columns and rows

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

Содержание:


Преобразование строки ячеек в несколько столбцов или строк с помощью функций «Текст по столбцам» и «Вставить с транспонированием»

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

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

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

3. Нажмите Готово. Ваша одиночная ячейка будет разделена на несколько столбцов на основе указанного разделителя. Возможно, вам потребуется скорректировать ширину столбцов для лучшей видимости. См. скриншоты:

A screenshot of the original data
Arrow
A screenshot showing cell content seperated by space is split into multiple cells

Примечание: Если вы хотите дополнительно преобразовать эти значения столбцов в несколько строк:

  • Выберите значения в новых столбцах, нажмите Ctrl + C для копирования.
  • Щелкните правой кнопкой мыши на ячейке, где вы хотите начать размещение транспонированных данных, и выберите Вставить особые параметры > Транспонировать. См. скриншоты:
A screenshot of Excel data to be transposed into rows using Paste Special
Arrow
A screenshot showing multiple rows after transposing columns

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


Преобразование одной строки в несколько столбцов и строк с помощью «Преобразовать диапазон»

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

Если у вас установлена Kutools for Excel, вы можете воспользоваться инструментом «Преобразовать диапазон». Эта функция позволяет напрямую преобразовывать однострочные или одностолбцовые макеты данных в многострочные и многоколоночные диапазоны всего за несколько кликов. Она особенно полезна для работы с большими наборами данных и минимизирует необходимость ручного копирования или использования сложных формул.

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

1. Выберите одну строку, которую хотите преобразовать, затем перейдите в Kutools > Диапазон > Преобразовать диапазон. См. скриншот:

2. В диалоговом окне «Преобразовать диапазон» выберите Одна строка в диапазон. В области Колонки на запись укажите, сколько колонок должно содержать каждая строка результата. Вы можете задать это число на основе предпочитаемого макета или требований вашего отчета. См. скриншот:

Советы:

  • «Фиксированное значение» для колонок определяет, сколько элементов будет содержать каждая новая строка. Например, если у вас одна строка из 18 значений, и вы установите колонки на запись равным 6, ваши данные будут преобразованы в 3 строки по 6 столбцов каждая.
  • Если длина строки не делится нацело, последняя строка может содержать меньше столбцов, чем указано.

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

A screenshot prompting the user to select a destination cell for the converted data

4. Нажмите OK снова. Ваша одиночная строка теперь будет преобразована в аккуратно организованный диапазон с множеством строк и столбцов. Смотрите результат ниже:

A screenshot showing the final result of converting a single row to a range of multiple columns and rows using Kutools

Примечания:

  • Эта функция также работает в обратном направлении — позволяя сжимать многостолбцовые/многострочные диапазоны в одну строку или столбец, если это необходимо. Нажмите здесь, чтобы узнать больше о «Преобразовать диапазон».
  • Обязательно сделайте резервную копию своих данных или работайте с копией, особенно если исходный или целевой диапазоны могут пересекаться.

Kutools для Excel - Усильте Excel более чем 300 необходимыми инструментами. Наслаждайтесь постоянно бесплатными функциями ИИ! Получите прямо сейчас

Преобразование одной строки в несколько столбцов и строк с помощью формулы Excel INDEX

Если вы предпочитаете подход на основе формул — идеально подходит для пользователей, которые не хотят использовать надстройки или желают автоматизировать работу с формулами листа — функция INDEX Excel, часто в сочетании с SEQUENCE (доступна в Microsoft 365 и новее), позволяет эффективно преобразовать одну строку в двумерный диапазон.

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

Пример сценария: Предположим, что ваши данные находятся в строке 1, от ячейки A1 до R1 (всего 18 элементов), и вы хотите расположить их в 6 столбцов и 3 строки.

1. Выберите верхнюю левую ячейку желаемого диапазона вывода (например, ячейку A3).

2. Введите следующую формулу в ячейку A3:

=INDEX($A$1:$R$1, SEQUENCE(3,6))

Объяснение параметров: Диапазон $A$1:$R$1 — это ваша исходная строка. 6 — количество столбцов для каждой строки вывода. Измените эти значения по необходимости.

Она автоматически заполнит сетку 3x6 (работает только в Excel с поддержкой динамических массивов).

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


Преобразование одной строки в несколько столбцов и строк с помощью кода VBA

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

Типичный пример использования: У вас есть одна строка переменной длины, которую вы хотите разделить на определенное количество столбцов для каждой строки (например, каждые 6 значений становятся новой строкой), и вы хотите избежать ручных или формулярных преобразований.

Инструкции:

1. Откройте Excel и нажмите Alt + F11, чтобы запустить редактор VBA.

2. В редакторе VBA нажмите Вставка > Модуль и вставьте следующий код в окно модуля:

Sub RowToMultiRowCol()
    Dim inputRng As Range
    Dim outputCell As Range
    Dim nCols As Integer
    Dim nData As Integer
    Dim i As Integer
    Dim r As Integer
    Dim c As Integer
    
    On Error Resume Next
    xTitleId = "KutoolsforExcel"
    
    Set inputRng = Application.InputBox("Select the single row to convert", xTitleId, "", Type:=8)
    Set outputCell = Application.InputBox("Select the top-left cell for the result", xTitleId, "", Type:=8)
    nCols = Application.InputBox("Number of columns per row:", xTitleId, "6", Type:=1)
    
    On Error GoTo 0
    
    If inputRng Is Nothing Or outputCell Is Nothing Or nCols <= 0 Then Exit Sub
    
    nData = inputRng.Columns.Count
    
    For i = 1 To nData
        r = Int((i - 1) / nCols)
        c = ((i - 1) Mod nCols)
        outputCell.Offset(r, c).Value = inputRng.Cells(1, i).Value
    Next i
End Sub

3. Закройте редактор VBA. В Excel перейдите в Инструменты разработчика > Макросы, выберите RowToMultiRowCol и нажмите Выполнить.

4. Макрос предложит вам:

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

Макрос быстро и эффективно заполнит вашу область вывода переупорядоченными данными.

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

Советы: Всегда сохраняйте свою книгу перед запуском макросов, так как действия VBA нельзя отменить.


Демонстрация: Транспонировать диапазон

 
Kutools для Excel: Более 300 удобных инструментов у вас под рукой! Наслаждайтесь постоянно бесплатными функциями ИИ! Скачать сейчас!

Лучшие инструменты для повышения продуктивности в 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-дневная полнофункциональная пробная версия — без регистрации и кредитной карты
  • Лучшее соотношение цены и качества — экономия по сравнению с покупкой отдельных надстроек