Добрый вечер!
Получаю выкачку из 1с в иерархичном виде. Необходимо превратить её в плоскую таблицу, чтобы дальше анализировать в сводной таблице.
Я плохо понимаю VBA, но нашла следующий код, который позволяет работать с 3х уровневой иерархией (у меня 6 уровней):
В приложении файл "пример для 3х ур кода", с которым работает код выше и мой файл "выгрузка", на котором нужно реализовать "раскладку" 6ти уровневой иерархии. Буду очень благодарна, если поможете!
Спасибо
Получаю выкачку из 1с в иерархичном виде. Необходимо превратить её в плоскую таблицу, чтобы дальше анализировать в сводной таблице.
Я плохо понимаю VBA, но нашла следующий код, который позволяет работать с 3х уровневой иерархией (у меня 6 уровней):
Код |
---|
Sub reFormat() Dim sh As Worksheet, shd As Worksheet, cell As Range, dest As Range, fil As String Set shd = ThisWorkbook.Worksheets("Result") shd.UsedRange.Rows.Delete shd.[a1].Resize(1, 3) = Array("Филиал", "Номенклатура", "Кредит") Set dest = shd.[a2] Set sh = ThisWorkbook.Worksheets("TDSheet") fil = "" For Each cell In sh.UsedRange.Columns(1).Cells If cell.EntireRow.OutlineLevel = 2 Then fil = cell.Value If cell.EntireRow.OutlineLevel = 3 Then dest.Resize(1, 3).Value = Array(fil, cell.Value, cell.Offset(, 5).Value) Set dest = dest.Offset(1) End If Set cell = cell.Offset(1) Next shd.Activate End Sub |
В приложении файл "пример для 3х ур кода", с которым работает код выше и мой файл "выгрузка", на котором нужно реализовать "раскладку" 6ти уровневой иерархии. Буду очень благодарна, если поможете!
Спасибо