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

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

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

Author Xiaoyang Last modified

Как объединить несколько строк и столбцов в одну длинную строку? Возможно, вам это кажется простым, так как вы можете копировать их по одному и вручную объединять в строку. Но если есть сотни строк и столбцов, это будет отнимать много времени и утомительно. Здесь я расскажу о некоторых быстрых способах решения этой задачи.

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

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

Транспонирование / Преобразование столбцов и строк в одну строку с помощью Kutools для Excel


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

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

doc-convert-range-to-row1

Пожалуйста, примените формулу следующим образом:

1. На новом листе активной книги щелкните ячейку A1, скопируйте и вставьте эту формулу: =OFFSET(Sheet1!$A$1,((ROW()-1)*5)+(FLOOR(COLUMN()-1,4)/4),(COLUMN()-1)-(FLOOR(COLUMN()-1,4)))

Примечание: Sheet1!$A$1 — это ссылки на лист и диапазон, которые вы хотите использовать.

ROW()-1)*5 в приведенной выше формуле, 5 обозначает номер строки; а COLUMN()-1,4)/4, 4 обозначает номер столбца. Вы можете изменить их по своему усмотрению.

2. Затем перетащите маркер заполнения вправо, пока не появится число 0. В этом случае все данные в диапазоне будут транспонированы в одну строку на новом листе. См. скриншот:

doc-convert-range-to-row2


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

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

1. Нажмите и удерживайте клавиши ALT + F11, чтобы открыть окно Microsoft Visual Basic for Applications.

2. Щелкните Вставить > Модуль и вставьте следующий код в окно Модуль.

Sub TransformOneRow()
'Updateby20131120
Dim InputRng As Range, OutRng As Range
xTitleId = "KutoolsforExcel"
Set InputRng = Application.Selection
Set InputRng = Application.InputBox("Ranges to be transform :", xTitleId, InputRng.Address, Type:=8)
Set OutRng = Application.InputBox("Paste to (single cell):", xTitleId, Type:=8)
Application.ScreenUpdating = False
xRows = InputRng.Rows.Count
xCols = InputRng.Columns.Count
For i = 1 To xRows
    InputRng.Rows(i).Copy OutRng
    Set OutRng = OutRng.Offset(0, xCols + 0)
Next
Application.ScreenUpdating = True
End Sub

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

screenshot of converting range to row with VBA
screenshot of converting range to row with VBA arrow
screenshot of converting range to row with VBA 2

Затем нажмите Ok, содержимое выбранного диапазона преобразуется в строку. См. скриншот:

screenshot of converting range to row with VBA original data
screenshot of converting range to row with VBA arrow 2
screenshot of converting range to row with VBA result

Примечание: В Set OutRng = OutRng.Offset(0, xCols + 0) вы можете изменить 0 на любое число по вашему усмотрению.

Например, если вы хотите разделить результаты согласно исходным строкам через один столбец, вы можете изменить Set OutRng = OutRng.Offset(0, xCols + 0) на Set OutRng = OutRng.Offset(0, xCols + 1), результаты будут показаны следующим образом:

screenshot of converting range to row with VBA example


Транспонирование / Преобразование столбцов и строк в одну строку с помощью Kutools для Excel

Кажется, что два вышеупомянутых метода несколько сложны для нас, начинающих пользователей Excel, здесь я расскажу о удобном инструменте — Kutools для Excel.

Kutools для Excel включает более 300 удобных инструментов для Excel. Бесплатная пробная версия без ограничений в течение 30 дней. Получите его сейчас

С помощью утилиты Преобразовать диапазон из Kutools для Excel вы можете быстро преобразовать диапазон в одну строку, выполните следующие действия:

1. Выберите диапазон, который вы хотите транспонировать.

2. Нажмите Kutools > Диапазон > Преобразовать диапазон.

3. В диалоговом окне Преобразовать диапазон выберите опцию Диапазон в одну строку, см. скриншот:

screenshot of converting range to row with kutools for Excel dialog

4. Затем нажмите OK и выберите ячейку для размещения результата из всплывающего окна.

screenshot of converting range to row with kutools for Excel output range dialog

5. Нажмите OK, и данные в диапазоне будут транспонированы в одну строку. См. скриншоты:

doc-convert-range-to-row1
-1
doc-convert-range-to-row7

Если вы хотите узнать больше об этой функции, пожалуйста, посетите Преобразовать диапазон.


Связанные статьи:

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

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