Страницы: 1
RSS
Преобразование таблицы из 1 столбца в таблицу из 4 столбцов по определенному принципу
 
Имеется таблица, состоящая из 1 столбца. Данные по тематике повторяются на каждой 4-ой ячейке. Необходимо преобразовать таблицу так чтобы с 1 столбца получилось 4 столбца,который бы содержал свои набор данных. Таблица в примере. Заранее спасибо за помощь.
Изменено: Mrak777 - 19.10.2017 13:05:44
 
Попробуйте Транспонирование
"Все гениальное просто, а все простое гениально!!!"
 
Наверное я не совсем корректно описал суть задачи. В исходной таблице 1 столбец, содержащий 4 типа данных которые повторяються. ТОесть 1 и 5 ячейки имеют 1 тип- дата и время, 2-я и 6-я тип зачисления, 3-я и 7-я сумма Необходимо преобразовать таблицу менно по этому принципу. Прикладываю расширенный пример
 
Код
Sub test()
Dim arr(), iarr(), i&, j&, x&
With Лист1
    arr = .Range(.[b4], .[b4].End(xlDown)).Value
    ReDim iarr(1 To UBound(arr) / 4, 1 To 4)
    For i = 1 To 4
    x = 1
        For j = i To UBound(arr) Step 4
            iarr(x, i) = arr(j, 1): x = x + 1
        Next j
    Next i
    .Range("d4").Resize(UBound(iarr), UBound(iarr, 2)) = iarr
End With
End Sub
"Все гениальное просто, а все простое гениально!!!"
 
Спасибо помогло.
 
Поспешил..вроде работало, а щас не могу понять.как подправить скрипт чтобы он обрабатывал столбец длиной в 2600 строчек. Вылетает out of range
Изменено: Mrak777 - 19.10.2017 15:01:36
 
Там нет разницы сколько строк, пробелов не должно быть в столбце между данными.
"Все гениальное просто, а все простое гениально!!!"
 
=ИНДЕКС($B$1:$B$100;СТРОКА(A1)*4+СТОЛБЕЦ()-4)
Красным - если вторая таблица начинается в 4 столбце
F1 творит чудеса
 
;СТРОКА($A1)*4+СТОЛБЕЦ(A$1)-4)
"..Сладку ягоду рвали вместе, горьку ягоду я одна."
Страницы: 1
Наверх