Добрый день, уважаемые знатоки! У меня такая задачка: приходит файл в одном столбце в одной куче данные, которые должны быть таблицей из 7 столбцов (не форматируется на отправляющей стороне никак) таких "строк" может быть очень много, до 20000 шт, поэтому делать таблицу через "специальную вставку" нерационально Можно ли написать такой макрос, который будет каждые 7 ячеек транспонировать в таблицу? в примере, наверное, более наглядно Благодарю всех откликнувшихся!!!
Добрый день, уважаемые знатоки! У меня такая задачка: приходит файл в одном столбце в одной куче данные, которые должны быть таблицей из 7 столбцов (не форматируется на отправляющей стороне никак) таких "строк" может быть очень много, до 20000 шт, поэтому делать таблицу через "специальную вставку" нерационально Можно ли написать такой макрос, который будет каждые 7 ячеек транспонировать в таблицу? в примере, наверное, более наглядно Благодарю всех откликнувшихся!!!Goodzel
Макрос сделан для листа, на котором данные начинаются со строки 1 (а не со строки 4, как у Вас в файле).
[vba]
Код
Sub Транспонировать()
Dim lr As Long, i As Long, r As Long Application.ScreenUpdating = False lr = Cells(Rows.Count, "A").End(xlUp).Row For i = 1 To lr Step 7 r = r + 1 Cells(i, "A").Resize(7).Copy Cells(r, "F").PasteSpecial Paste:=xlPasteAll, Transpose:=True Next i Application.CutCopyMode = False Application.ScreenUpdating = True MsgBox "Готово!", vbInformation
End Sub
[/vba]
Макрос сделан для листа, на котором данные начинаются со строки 1 (а не со строки 4, как у Вас в файле).
[vba]
Код
Sub Транспонировать()
Dim lr As Long, i As Long, r As Long Application.ScreenUpdating = False lr = Cells(Rows.Count, "A").End(xlUp).Row For i = 1 To lr Step 7 r = r + 1 Cells(i, "A").Resize(7).Copy Cells(r, "F").PasteSpecial Paste:=xlPasteAll, Transpose:=True Next i Application.CutCopyMode = False Application.ScreenUpdating = True MsgBox "Готово!", vbInformation