Note: The other languages of the website are Google-translated. Back to English

Jak przetransponować co 5 lub n wierszy z jednej kolumny do wielu kolumn?

doc transponuj co 5 wierszy 1

Przypuśćmy, że masz długie dane w kolumnie A, a teraz chcesz transponować co 5 wierszy z kolumny A do wielu kolumn, na przykład transponować A1: A5 do C6: G6, A6: A10 do C7: G7 itd. następujący zrzut ekranu. Jak poradzić sobie z tym zadaniem bez wielokrotnego kopiowania i wklejania w programie Excel?

Transponuj co 5 lub n wierszy z jednej kolumny do wielu kolumn za pomocą formuły

Transponuj co 5 lub n wierszy z jednej kolumny do wielu kolumn za pomocą kodu VBA

Transponuj co 5 lub n wierszy z jednej kolumny do wielu kolumn za pomocą Kutools for Excel


W programie Excel możesz zastosować następującą formułę, aby transponować każde n wierszy z jednej kolumny do wielu kolumn, wykonaj następujące czynności:

1. Wprowadź następującą formułę do pustej komórki, w której chcesz umieścić wynik, na przykład C1, = INDEKS ($ A: $ A, WIERSZ (A1) * 5-5 + KOLUMNA (A1))zobacz zrzut ekranu:

doc transponuj co 5 wierszy 2

Uwagi: W powyższym wzorze, Odp .: A to odniesienie do kolumny, które chcesz przetransponować, a A1 jest pierwszą komórką używanej kolumny, liczbą 5 wskazuje liczbę kolumn, które zostaną zlokalizowane przez Twoje dane, możesz je zmienić według potrzeb. Pierwsza komórka listy musi znajdować się w pierwszym wierszu arkusza.

2. Następnie przeciągnij uchwyt wypełniania w prawo do pięciu komórek i kontynuuj przeciąganie uchwytu wypełniania w dół do zakresu komórek, aż wyświetli się 0, patrz zrzut ekranu:

doc transponuj co 5 wierszy 3


Przekształć co 5 lub n wierszy z jednej kolumny na wiele kolumn:

Aby przekształcić co 5 lub n wierszy z jednej kolumny na wiele kolumn, Kutools dla programu Excel's Zakres transformacji narzędzie może pomóc w rozwiązaniu tego zadania tak szybko, jak to tylko możliwe. Może również pomóc w transpozycji zakresu danych do pojedynczego wiersza lub kolumny. Kliknij, aby pobrać Kutools dla programu Excel!

doc transponuj co 5 wierszy 10

Kutools dla programu Excel: z ponad 300 poręcznymi dodatkami do programu Excel, które można wypróbować bez ograniczeń w ciągu 30 dni. Pobierz i bezpłatną wersję próbną teraz!


Jeśli nie możesz poprawnie zastosować formuły, następujący kod VBA również może Ci pomóc.

1. Przytrzymaj ALT + F11 klawisze, aby otworzyć Microsoft Visual Basic for Applications okno.

2, Kliknij wstawka > Modułi wklej następujący kod w Moduł Okno.

Kod VBA: transponuj co 5 lub n wierszy z jednej kolumny do wielu kolumn:

Public Sub TransposeData()
'updateby Extendoffice
    Dim xLRow As Long
    Dim xNRow As Long
    Dim i As Long
    Dim xUpdate As Boolean
    Dim xRg As Range
    Dim xOutRg As Range
    Dim xTxt As String
    On Error Resume Next
    xTxt = ActiveWindow.RangeSelection.Address
    Set xRg = Application.InputBox("Please select data range(only one column):", "Kutools for Excel", xTxt, , , , , 8)
    Set xRg = Application.Intersect(xRg, xRg.Worksheet.UsedRange)
    If xRg Is Nothing Then Exit Sub
    If (xRg.Columns.Count > 1) Or _
       (xRg.Areas.Count > 1) Then
        MsgBox "the used range only contain one column", , "Kutools for Excel"
        Exit Sub
    End If
    Set xOutRg = Application.InputBox("please select output range(specify one cell):", "Kutools for Excel", xTxt, , , , , 8)
    If xOutRg Is Nothing Then Exit Sub
    Set xOutRg = xOutRg.Range(1)
    xUpdate = Application.ScreenUpdating
    Application.ScreenUpdating = False
    xLRow = xRg.Rows.Count
    For i = 1 To xLRow Step 5
        xRg.Cells(i).Resize(5).Copy
        xOutRg.Offset(xNRow, 0).PasteSpecial Paste:=xlPasteAll, Transpose:=True
        xNRow = xNRow + 1
    Next
    Application.ScreenUpdating = xUpdate
End Sub

3. Po wklejeniu kodu naciśnij F5 klawisz, aby go uruchomić, a pojawi się okno zachęty przypominające o wybraniu kolumny, którą chcesz transponować, patrz zrzut ekranu:

doc transponuj co 5 wierszy 4

4. Następnie kliknij OKi wybierz jedną komórkę, w której chcesz umieścić wynik w innym wyskakującym okienku, zobacz zrzut ekranu:

doc transponuj co 5 wierszy 5

5, i kliknij OKdane w kolumnie zostały przekonwertowane na pięć potrzebnych kolumn, patrz zrzut ekranu:

doc transponuj co 5 wierszy 6

Uwagi: W powyższym kodzie możesz zmienić numer 5 na inny numer, którego potrzebujesz.


Jeśli masz Kutools dla programu Excel, Z siedzibą w Zakres transformacji narzędzie, możesz szybko transponować jedną kolumnę lub wiersz do wielu kolumn i wierszy.

Kutools dla programu Excel : z ponad 300 poręcznymi dodatkami Excela, które można wypróbować bez ograniczeń w ciągu 30 dni. 

Po zainstalowaniu Kutools dla programu Excelwykonaj następujące czynności:

1. Wybierz dane w kolumnie, a następnie kliknij Kutools > Zakres > Zakres transformacjizobacz zrzut ekranu:

2, w Zakres transformacji okno dialogowe, wybierz Pojedyncza kolumna do zakresu opcja pod Typ transformacji, a następnie sprawdź Stała wartość pod Wiersze na rekord, a następnie określ liczbę kolumn, do których chcesz transponować w pliku Stała wartość pudełko, patrz zrzut ekranu:

doc transponuj co 5 wierszy 8

3. A następnie kliknij Ok przycisk, w wyskakującym okienku wybierz komórkę, aby wyświetlić wynik, patrz zrzut ekranu:

doc transponuj co 5 wierszy 9

4. Następnie kliknij OK przycisk, a dane kolumny zostały transponowane co 5 wierszy, jak pokazano na poniższym zrzucie ekranu:

doc transponuj co 5 wierszy 6

Pobierz i bezpłatną wersję próbną Kutools dla programu Excel teraz!


Kutools dla programu Excel: z ponad 300 poręcznymi dodatkami do programu Excel, które można wypróbować bez ograniczeń w ciągu 30 dni. Pobierz i bezpłatną wersję próbną teraz!

Najlepsze narzędzia biurowe

Kutools dla programu Excel rozwiązuje większość problemów i zwiększa produktywność o 80%

  • Ponowne użycie: Szybko włóż złożone wzory, wykresy i wszystko, czego używałeś wcześniej; Szyfruj komórki z hasłem; Utwórz listę mailingową i wysyłaj e-maile ...
  • Pasek Super Formula (łatwo edytować wiele wierszy tekstu i formuły); Układ do czytania (łatwe odczytywanie i edytowanie dużej liczby komórek); Wklej do filtrowanego zakresu...
  • Scal komórki / wiersze / kolumny bez utraty danych; Podziel zawartość komórek; Połącz zduplikowane wiersze / kolumny... Zapobiegaj zduplikowanym komórkom; Porównaj zakresy...
  • Wybierz Duplikat lub Unikalny Wydziwianie; Wybierz puste wiersze (wszystkie komórki są puste); Super Find i Fuzzy Find w wielu zeszytach ćwiczeń; Losowy wybór ...
  • Dokładna kopia Wiele komórek bez zmiany odwołania do formuły; Automatyczne tworzenie odniesień do wielu arkuszy; Wstaw punktory, Pola wyboru i nie tylko ...
  • Wyodrębnij tekst, Dodaj tekst, Usuń według pozycji, Usuń przestrzeń; Tworzenie i drukowanie podsumowań stronicowania; Konwertuj zawartość komórek i komentarze...
  • Super filtr (zapisz i zastosuj schematy filtrów do innych arkuszy); Zaawansowane sortowanie według miesiąca / tygodnia / dnia, częstotliwości i innych; Specjalny filtr pogrubieniem, kursywą ...
  • Połącz skoroszyty i arkusze robocze; Scal tabele na podstawie kluczowych kolumn; Podziel dane na wiele arkuszy; Konwersja wsadowa xls, xlsx i PDF...
  • Ponad 300 zaawansowanych funkcji. Obsługuje Office / Excel 2007-2021 i 365. Obsługuje wszystkie języki. Łatwe wdrażanie w przedsiębiorstwie lub organizacji. Pełne funkcje 30-dniowa bezpłatna wersja próbna. 60-dniowa gwarancja zwrotu pieniędzy.
karta kte 201905

Karta Office wprowadza interfejs z zakładkami do pakietu Office i znacznie ułatwia pracę

  • Włącz edycję i czytanie na kartach w programach Word, Excel, PowerPoint, Publisher, Access, Visio i Project.
  • Otwieraj i twórz wiele dokumentów w nowych kartach tego samego okna, a nie w nowych oknach.
  • Zwiększa produktywność o 50% i redukuje setki kliknięć myszką każdego dnia!
officetab dół
Sortuj komentarze według
Komentarze (15)
Znamionowy 5 z 5 · 1 oceny
Ten komentarz został zminimalizowany przez moderatora na stronie
Cześć! Czy mogę zapytać, jak dodać puste pola rozdzielające komórki zamiast 5, ponieważ dane, które przetwarzam, nie mają ustalonej liczby wierszy. Uważam, że część, którą powinienem zmienić, może dotyczyć tej części kodu: For i = 1 To xLRow Krok 5 xRg.Cells(i).Resize(5).Copy xOutRg.Offset(xNRow, 0).PasteSpecial Paste: =xlWklej wszystko, Transpozycja:=True xNRow = xNRow + 1 Best
Ten komentarz został zminimalizowany przez moderatora na stronie
czy otrzymałeś odpowiedź na to samo, co ja mam ten sam problem, kolumny nie są ustalone w liczbach, co mam zrobić, czy mogę użyć określonego znaku jako ogranicznika, który przerywa pętlę i liczy następny wiersz i nowy zestaw danych?
Ten komentarz został zminimalizowany przez moderatora na stronie
Mam ten sam problem , gdzie kolumny nie są ustalone i są puste wiersze , ale mam ten sam znak i koniec każdego zestawu danych , czyli "=" czy mogę użyć tego jako ogranicznika, który przerywa pętlę, i następny wiersz jest uważany za nowy zestaw danych ?
Ten komentarz został zminimalizowany przez moderatora na stronie
Jaką formułę transponować co 5 wierszy do jednej kolumny?
Ten komentarz został zminimalizowany przez moderatora na stronie
Dziękuję bardzo! To było naprawdę pomocne. :)
Ten komentarz został zminimalizowany przez moderatora na stronie
To było wspaniałe! Dziękuję Ci! Zaoszczędziłeś mi godziny ręcznej pracy!
Ten komentarz został zminimalizowany przez moderatora na stronie
= INDEKS ($ A: $ A, WIERSZ (A1) * 5-5 + KOLUMNA (A1))
To było bardzo proste i bardzo przydatne. Dziękuję bardzo
Ten komentarz został zminimalizowany przez moderatora na stronie
To jest cholernie NIESAMOWITE!!! Dziękuję bardzo. Twój przykład był dokładnie tym, czego potrzebowałem i działał pięknie.
Ten komentarz został zminimalizowany przez moderatora na stronie
Wypróbowałem tylko opcję formuły i zadziałała świetnie. Do tej pory używałem (formuła transpozycji z ctrl+shift+enter), ale jest to wada, ponieważ usunęliśmy wiele dodatkowych wierszy. gdy wiersze, które mają zostać przetransponowane na duże, są rzędu lakhów, usunięcie ich w programie Excel jest albo niemożliwe, albo zajmuje dużo czasu.
takie podejście ułatwiło życie, kopiując tylko wymagane wiersze... Dzięki
Ten komentarz został zminimalizowany przez moderatora na stronie
Wielkie dzięki _/\_ Świetna praca z =INDEX($A:$A,ROW(B1)*5-5+COLUMN(B1))
działał idealnie
Ten komentarz został zminimalizowany przez moderatora na stronie
Cześć, Jak to zrobić dla Colms do wierszy. Dziękuję Ci
Ten komentarz został zminimalizowany przez moderatora na stronie
Przepisałem polecenie na to:
=INDEKS($A:$A;WIERSZ(A1)+((KOLUMNA(A1)-2)*5))
To wykonuje go w odwrotnej kolejności.
Więc:
1
2
3
4
5
6
7
8
9
...
staje się
1, 6
2, 7
3, 8
4, 9
5, ...
Ten komentarz został zminimalizowany przez moderatora na stronie
Próbuję to zrobić tak, jak napisano, a wszystko, co otrzymuję, to Error:508
Ten komentarz został zminimalizowany przez moderatora na stronie
Jesteś geniuszem. Dziękuję!
Znamionowy 5 z 5
Ten komentarz został zminimalizowany przez moderatora na stronie
Witam,

J'ai, dans mon unique colonne de données, des cellules placees aléatoirement toutes les x lignes et qui contiennent une suite de caractères.

Je voudrait que cette cellule soit dans la premiere colonne de la ligne transposée, avec, dans les colonnes suivantes, la transposition des lignes qui la suivent, jusqu'à la répétition de ma chaine de caractères, qui signifierait le début de la ligne suivante. ..

Bref, Heeellp...

Merci d'Avance
Stéphane
Nie ma tu jeszcze żadnych komentarzy
Zostaw swój komentarz
Publikowanie jako gość
×
Oceń ten post:
0   Postacie
Sugerowane lokalizacje

Bądż na bieżąco

Prawa autorskie © 2009 - www.extendoffice.com. | Wszelkie prawa zastrzeżone. Zasilany przez ExtendOffice, | Mapa strony
Microsoft i logo Office są znakami towarowymi lub zastrzeżonymi znakami towarowymi Microsoft Corporation w Stanach Zjednoczonych i / lub innych krajach.
Chronione przez Sectigo SSL