Przewyższać; Jak zaimportować tabelę CSV jako wiersze oddzielone numerem tabeli?


-1

Mam więc MASYWNY zestaw danych, w nieprzetworzonym formacie jest to plik CSV i zawiera dwie tabele kolumn ułożone jedna na drugiej. na zdjęciu poniżej ograniczona wersja pliku jest przedstawiona w kolumnach A i B, z pierwszym zestawem danych w A1: B3 drugim w A5: B11 trzecim w A13: B19 i tak dalej ... ponad 7 milionów punkty danych, więc zrobienie tego ręcznie byłoby faktycznym czasem życia.

Chcę, aby dane wyglądały na drugim zdjęciu, na którym utworzyłem równanie, które wykonuje tę akcję. nie może jednak uwzględniać rozbieżności w długości tabeli; również WYSZUKAJ.PIONOWO dla całego zestawu danych spowoduje awarię komputera.

Ktoś musi wiedzieć, jak mogę zaimportować ten zestaw danych i uzyskać opisany przeze mnie wynik, proszę o pomoc!

Tak wygląda zestaw danych przed przetwarzaniem

Właśnie tak chcę, aby moje dane wylądowały jak w F2: L9 Myśl o F2 jako komórce A1 w końcowym wyniku

Odpowiedzi:


0

Szybko napisałem podstawowy kod, abyś mógł z niego zrezygnować, aby zrobić makro.

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

>

Jest to ogólna idea, ponieważ TRANSPOSE()funkcja w programie Excel jest ograniczona do określonej liczby elementów do obsługi. Obchodziłem się z plikami csv o wielkości 280 MB i odkryłem, że osobny skoroszyt i samo odwołanie się do zestawu danych pozwala zaoszczędzić dużo mocy procesora i pamięci RAM.

Ten kod wymaga posiadania „czegoś” w każdej komórce.


Nie znam się dobrze na stosowaniu notacji r w programie Excel, jeśli chcę iterować całą kartę z tą funkcją, co mogę do tego odwołać?
Kevin Freiges

rNotacja jest dla liczby wierszy i cnotacja jest dla licznika kolumn . <br/> To jest makro, więc wystarczy, że uruchomisz to makro za pomocą karty „programista” i przeniesie kolumny danych. Pamiętaj tylko, że w powyższym kodzie nie ma żadnych przerw w wierszach lub kolumnach, w przeciwnym razie nie zostaną one transponowane wszystkie. <br/> Ten kod jest bardzo prosty i niestety będzie wymagał ręcznego przenoszenia komórek.
Ładowanie ...
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.