Перейти к основному содержанию

Как перенести каждые 5 или n строк из одного столбца в несколько столбцов?

документ транспонировать каждые 5 строк 1

Предположим, у вас есть длинные данные в столбце A, и теперь вы хотите транспонировать каждые 5 строк из столбца A в несколько столбцов, например транспонировать A1: A5 в C6: G6, A6: A10 в C7: G7 и т. Д. показан следующий снимок экрана. Как вы могли бы справиться с этой задачей без многократного копирования и вставки в Excel?

Перенести каждые 5 или n строк из одного столбца в несколько столбцов с формулой

Транспонировать каждые 5 или n строк из одного столбца в несколько столбцов с кодом VBA

Перенести каждые 5 или n строк из одного столбца в несколько столбцов с помощью Kutools for Excel


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

1. Введите следующую формулу в пустую ячейку, в которую вы хотите поместить результат, например C1, = ИНДЕКС ($ A: $ A; СТРОКА (A1) * 5-5 + КОЛОНКА (A1)), см. снимок экрана:

документ транспонировать каждые 5 строк 2

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

2. Затем перетащите маркер заливки вправо к пяти ячейкам и продолжайте перетаскивать маркер заливки вниз в диапазон ячеек, пока не отобразится 0, см. Снимок экрана:

документ транспонировать каждые 5 строк 3


Преобразуйте каждые 5 или n строк из одного столбца в несколько столбцов:

Чтобы преобразовать каждые 5 или n строк из одного столбца в несколько столбцов, Kutools for Excel's Диапазон преобразования Утилита поможет вам решить эту задачу как можно быстрее. Это также может помочь вам перенести диапазон данных в одну строку или столбец. Нажмите, чтобы загрузить Kutools for Excel!

документ транспонировать каждые 5 строк 10

Kutools for Excel: с более чем 300 удобными надстройками Excel, которые можно попробовать бесплатно без ограничений в течение 30 дней. Загрузите и бесплатную пробную версию прямо сейчас!


Если вы не можете правильно применить формулу, следующий код VBA также может вам помочь.

1. Удерживайте ALT + F11 , чтобы открыть Microsoft Visual Basic для приложений окно.

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

Код VBA: транспонировать каждые 5 или n строк из одного столбца в несколько столбцов:

Public Sub TransposeData()
'updateby Extendoffice
    Dim xLRow As Long
    Dim xNRow As Long
    Dim i As Long
    Dim xUpdate As Boolean
    Dim xRg As Range
    Dim xOutRg As Range
    Dim xTxt As String
    On Error Resume Next
    xTxt = ActiveWindow.RangeSelection.Address
    Set xRg = Application.InputBox("Please select data range(only one column):", "Kutools for Excel", xTxt, , , , , 8)
    Set xRg = Application.Intersect(xRg, xRg.Worksheet.UsedRange)
    If xRg Is Nothing Then Exit Sub
    If (xRg.Columns.Count > 1) Or _
       (xRg.Areas.Count > 1) Then
        MsgBox "the used range only contain one column", , "Kutools for Excel"
        Exit Sub
    End If
    Set xOutRg = Application.InputBox("please select output range(specify one cell):", "Kutools for Excel", xTxt, , , , , 8)
    If xOutRg Is Nothing Then Exit Sub
    Set xOutRg = xOutRg.Range(1)
    xUpdate = Application.ScreenUpdating
    Application.ScreenUpdating = False
    xLRow = xRg.Rows.Count
    For i = 1 To xLRow Step 5
        xRg.Cells(i).Resize(5).Copy
        xOutRg.Offset(xNRow, 0).PasteSpecial Paste:=xlPasteAll, Transpose:=True
        xNRow = xNRow + 1
    Next
    Application.ScreenUpdating = xUpdate
End Sub

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

документ транспонировать каждые 5 строк 4

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

документ транспонировать каждые 5 строк 5

5, И нажмите OK, данные в столбце были преобразованы в пять столбцов, которые вам нужны, см. снимок экрана:

документ транспонировать каждые 5 строк 6

Внимание: В приведенном выше коде вы можете изменить номер 5 на другой номер, который вам нужен.


Если вы только что Kutools for Excel, С его Диапазон преобразования утилиту, вы можете быстро перенести один столбец или строку на несколько столбцов и строк.

Kutools for Excel : с более чем 300 удобными надстройками Excel, бесплатно и без ограничений в течение 30 дней. 

После установки Kutools for Excel, пожалуйста, сделайте следующее:

1. Выберите данные в столбце, а затем щелкните Кутулс > Диапазон > Диапазон преобразования, см. снимок экрана:

2. В Диапазон преобразования диалоговое окно, выберите Один столбец для диапазона вариант под Тип трансформации, а затем проверьте Фиксированная стоимость под Строк на запись, затем укажите количество столбцов, которые вы хотите перенести в Фиксированная стоимость box, см. снимок экрана:

документ транспонировать каждые 5 строк 8

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

документ транспонировать каждые 5 строк 9

4. Затем нажмите OK , и данные вашего столбца были перенесены каждые 5 строк, как показано на следующем снимке экрана:

документ транспонировать каждые 5 строк 6

Загрузите бесплатную пробную версию Kutools for Excel прямо сейчас!


Kutools for Excel: с более чем 300 удобными надстройками Excel, которые можно попробовать бесплатно без ограничений в течение 30 дней. Загрузите и бесплатную пробную версию прямо сейчас!

Лучшие инструменты для офисной работы

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

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

Описание


Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
Comments (15)
Rated 5 out of 5 · 1 ratings
This comment was minimized by the moderator on the site
Bonjour,

J'ai, dans mon unique colonne de données, des cellules placées aléatoirement toutes les x lignes et qui contiennent une suite de caractères.

Je voudrait que cette cellule soit dans la première colonne de la ligne transposée, avec, dans les colonnes suivantes, la transposition des lignes qui la suivent, jusqu'à la répétition de ma chaine de caractères, qui signifierait le début de la ligne suivante...

Bref, Heeelllp...

Merci d'avance
Stéphane
This comment was minimized by the moderator on the site
You're a genius. Thanks!
Rated 5 out of 5
This comment was minimized by the moderator on the site
I try doing this just as written, and all I get is Error:508
This comment was minimized by the moderator on the site
Hi, How to do this for Colms to rows. Thank you
This comment was minimized by the moderator on the site
I've rewritten the command to this one:
=INDEX($A:$A,ROW(A1)+((COLUMN(A1)-2)*5))
This executes it inverted.
So:
1
2
3
4
5
6
7
8
9
...
becomes
1, 6
2, 7
3, 8
4, 9
5, ...
This comment was minimized by the moderator on the site
Thanks alot _/\_ Awesome job with =INDEX($A:$A,ROW(B1)*5-5+COLUMN(B1))
worked perfectly
This comment was minimized by the moderator on the site
I tried only the the formula option and it worked great. Till now have been using (Transpose formula with ctrl+shift+enter) but there the disadvantage for we have delete many extra rows. when the rows to be transposed for large in the order of lakhs, then deleting them in excel is either impossible or takes a lot of time.
this approach made the life easier by only copying the required rows... Thanks
This comment was minimized by the moderator on the site
This is fricking AWESOME!!! Thank you SO much. Your example was exactly what I needed and it worked beautifully.
This comment was minimized by the moderator on the site
=INDEX($A:$A,ROW(A1)*5-5+COLUMN(A1))
It was very simple and really useful. Thank you so much
This comment was minimized by the moderator on the site
It was great! Thank you! You saved me hours of manual work!
This comment was minimized by the moderator on the site
Thank you so much! It was really helpful. :)
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations