-1

Итак, у меня есть набор данных MASSIVE, в его необработанном формате это файл CSV и содержит две таблицы столбцов, которые расположены друг над другом. на рисунке ниже версия файла с разделителями представлена в столбцах A и B, с первым набором данных в A1:B3, вторым в A5:B11, третьим в A13:B19 и так далее ... их более 7 миллионов Точки данных, делающие это вручную, будут фактическим временем жизни.

Я хочу, чтобы данные выглядели как вторая картинка, где я создал уравнение, которое выполняет это действие. однако это не может объяснить расхождения в длине таблицы; также VLOOKUP для всего набора данных может привести к сбою моего компьютера.

Кто-то должен знать, как я могу импортировать этот набор данных и получить результат, который я описал, пожалуйста, помогите!

Так выглядит набор данных до обработки

Это то, что я хочу, чтобы мои данные заканчивались как в F2:L9 Думайте о F2 как о ячейке A1 в конечном выводе

1 ответ1

0

Я быстро написал некоторый базовый код для вас, чтобы вы могли использовать макрос для этого.

Sub RotateData()
    'Row 1
    Dim r As Integer
    r = 1
    'Column 1 or "A"
    Dim c As Integer
    c = 1

    Dim ws As Worksheet: Set ws = ActiveSheet

    Do While ws.Cells(r, c) <> ""
    Do While ws.Cells(r, c) <> ""
        ws.Cells(c, r + 5) = ws.Cells(r, c)
        r = r + 1
    Loop
        r = 1
        c = c + 1
    Loop
    End Sub

>

Это общая идея, так как функция TRANSPOSE() в Excel ограничена заданным количеством элементов для обработки. Я обработал 280-мегабайтные CSV-файлы и обнаружил, что отдельная рабочая книга и просто ссылка на набор данных экономит много ресурсов процессора и оперативной памяти.

Этот код требует, чтобы в каждой ячейке было «что-то».

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .