Megjegyzés: A webhely többi nyelvét a Google fordítja. Vissza az angol nyelvre
Belépek  \/ 
x
or
x
Regisztráció  \/ 
x

or

Hogyan lehet minden 5 vagy n sort átadni egy oszlopból több oszlopba?

doc átültet minden 5 sorban 1

Ha feltételezzük, hogy hosszú adatai vannak az A oszlopban, mostantól minden öt sort át szeretne ültetni az A oszlopból több oszlopba, például átültetni az A5: A1-től C5: G6-ig, A6: A6-től C10: G7-ig stb. a következő képernyőkép látható. Hogyan tudná kezelni ezt a feladatot anélkül, hogy többször másolna és beillesztene az Excel programba?

Átültet minden 5 vagy n sort egy oszlopból több oszlopba képlettel

Átültet minden 5 vagy n sort egy oszlopból több oszlopba VBA kóddal

Átültet minden 5 vagy n sort egy oszlopból több oszlopba a Kutools for Excel programmal


Az Excelben a következő képletet alkalmazhatja az n n sor átültetéséhez egy oszlopból több oszlopba, kérjük, tegye a következőket:

1. Írja be a következő képletet egy üres cellába, ahová be akarja tenni például az eredményt, C1 = INDEX ($ A: $ A, ROW (A1) * 5-5 + OSZLOP (A1)), lásd a képernyőképet:

doc átültet minden 5 sorban 2

Megjegyzések: A fenti képletben A: A az átültetni kívánt oszlop hivatkozás, és A1 a használt oszlop első cellája, a szám 5 jelzi az oszlopok számát, amelyet az adatai meg fognak találni, ezeket igény szerint módosíthatja. És a lista első cellájának a munkalap első sorában kell lennie.

2. Ezután húzza jobbra a kitöltő fogantyút öt cellára, és húzza tovább a kitöltő fogantyút a cellák tartományába, amíg a 0 meg nem jelenik, lásd a képernyőképet:

doc átültet minden 5 sorban 3


Átalakítsa minden 5 vagy n sort egy oszlopból több oszlopba:

Minden 5 vagy n sor átalakítása egy oszlopból több oszlopká, Kutools for Excel's Transform Range segédprogram segítségével megoldhatja ezt a munkát a lehető leggyorsabban. Ez segíthet abban is, hogy egy adatsort egyetlen sorba vagy oszlopba helyezzen át. Kattintson a Kutools for Excel letöltéséhez!

doc átültet minden 5 sorban 10

Kutools for Excel: több mint 300 praktikus Excel-bővítménnyel, ingyenesen, korlátozás nélkül, 30 nap alatt kipróbálható. Töltse le és ingyenes próbaverziót most!


Ha nem tudja megfelelően alkalmazni a képletet, a következő VBA-kód is segítségére lehet.

1. Tartsa lenyomva a ALT + F11 billentyűk megnyitásához Microsoft Visual Basic for Applications ablak.

2. Kattints betétlap > Modulok, és illessze be a következő kódot a Modulok Ablak.

VBA kód: 5 vagy n soronként helyezze át egy oszlopból több oszlopba:

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. A kód beillesztése után nyomja meg a gombot F5 gombot a futtatásához, és megjelenik egy prompt doboz, amely emlékezteti Önt az átültetni kívánt oszlop kiválasztására, lásd a képernyőképet:

doc átültet minden 5 sorban 4

4. Ezután kattintson OK, és válasszon egy cellát, ahová az eredményt egy másik felbukkanó mezőbe szeretné tenni, lásd a képernyőképet:

doc átültet minden 5 sorban 5

5. és kattintson OK, az oszlop adatait öt szükséges oszlopra konvertáltuk, lásd a képernyőképet:

doc átültet minden 5 sorban 6

Megjegyzések: A fenti kódban megváltoztathatja a számot 5 másik számra, amelyre szüksége van.


Ha van Kutools for Excel, Annak Transform Range segédprogram segítségével gyorsan átvihet egy oszlopot vagy sort több oszlopba és sorba.

Kutools for Excel : több mint 300 praktikus Excel-bővítménnyel, ingyenesen, korlátozás nélkül, 30 nap alatt kipróbálható. 

Telepítése után Kutools for Excel, kérjük, tegye a következőket:

1. Jelölje ki az adatokat az oszlopban, majd kattintson a gombra Kutools > Választék > Transform Range, lásd a képernyőképet:

2. Az Transform Range párbeszédpanelen válassza ki Egyetlen oszlop a tartományhoz lehetőség a Átalakítás típusa, majd ellenőrizze Rögzített érték alatt a Sorok rekordonként, majd adja meg az átültetni kívánt oszlopok számát a Rögzített érték mező, lásd a képernyőképet:

doc átültet minden 5 sorban 8

3. Kattintson a gombra Ok gombra, a felbukkanó mezőben válassza ki a cellát az eredmény megjelenítéséhez, lásd a képernyőképet:

doc átültet minden 5 sorban 9

4. Ezután kattintson OK gombra, és az oszlopadatokat 5 soronként transzponáltuk a következő képernyőkép szerint:

doc átültet minden 5 sorban 6

Töltse le és ingyenes próbaverziót Kutools for Excel Now!


Kutools for Excel: több mint 300 praktikus Excel-bővítménnyel, ingyenesen, korlátozás nélkül, 30 nap alatt kipróbálható. Töltse le és ingyenes próbaverziót most!

A legjobb irodai termelékenységi eszközök

A Kutools for Excel megoldja a legtöbb problémát, és 80% -kal növeli a termelékenységet

  • újrafelhasználás: Gyorsan helyezze be összetett képletek, diagramok és bármi, amit korábban használt; Cellák titkosítása jelszóval; Levelezőlista létrehozása és e-maileket küldeni ...
  • Super Formula Bar (könnyedén szerkeszthet több szöveget és képletet); Olvasás elrendezés (könnyen olvasható és szerkeszthető nagyszámú cella); Beillesztés a Szűrt tartományba...
  • Cellák / sorok / oszlopok egyesítése az adatok elvesztése nélkül; Osztott cellák tartalma; Kombinálja a duplikált sorokat / oszlopokat... megakadályozza az ismétlődő cellákat; Hasonlítsa össze a tartományokat...
  • Válassza a Másolat vagy az Egyedi lehetőséget Sorok; Válassza az Üres sorok lehetőséget (az összes cella üres); Super Find és Fuzzy Find sok munkafüzetben; Véletlenszerű kiválasztás ...
  • Pontos másolás Több cella a képletreferencia megváltoztatása nélkül; Automatikus referenciák létrehozása több lapra; Helyezze be a golyókat, Jelölőnégyzetek és még sok más ...
  • Kivonat szöveg, Szöveg hozzáadása, Eltávolítás pozíció szerint, Hely eltávolítása; Hozz létre és nyomtasson személyhívó részösszegeket; Konvertálás a cellatartalom és a megjegyzések között...
  • Szuper szűrő (mentse el és alkalmazza a szűrősémákat más lapokra); Haladó rendezés hónap / hét / nap, gyakoriság és egyebek szerint; Speciális szűrő félkövér, dőlt betűvel ...
  • Kombinálja a munkafüzeteket és a munkalapokat; Táblázatok egyesítése kulcsoszlopok alapján; Az adatok felosztása több lapra; Kötegelt konvertálás xls, xlsx és PDF...
  • Több mint 300 hatékony funkció. Támogatja az Office / Excel 2007-2019 és 365. Támogatja az összes nyelvet. Könnyen telepíthető a vállalkozásba vagy szervezetbe. 30 napos ingyenes próbaverzió. 60 napos pénzvisszafizetési garancia.
kte tab 201905

Az Office fül a füles felületet hozza az Office-ba, és sokkal könnyebbé teszi a munkáját

  • Füles szerkesztés és olvasás engedélyezése Wordben, Excelben és PowerPointban, Publisher, Access, Visio és Project.
  • Több dokumentum megnyitása és létrehozása ugyanazon ablak új lapjain, mint új ablakokban.
  • 50% -kal növeli a termelékenységet, és minden nap több száz kattintással csökkenti az egér kattintását!
officetab alja
Say something here...
symbols left.
You are guest
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Pradeep · 1 years ago
    Hi, How to do this for Colms to rows. Thank you
    • To post as a guest, your comment is unpublished.
      Jan steihn · 11 months ago
      I've rewritten the command to this one:
      =INDEX($A:$A,ROW(A1)+((COLUMN(A1)-2)*5))
      This executes it inverted.
      So:
      1
      2
      3
      4
      5
      6
      7
      8
      9
      ...
      becomes
      1, 6
      2, 7
      3, 8
      4, 9
      5, ...
  • To post as a guest, your comment is unpublished.
    Maha · 1 years ago
    Thanks alot _/\_ Awesome job with =INDEX($A:$A,ROW(B1)*5-5+COLUMN(B1))
    worked perfectly
  • To post as a guest, your comment is unpublished.
    Arun Balaji VN · 1 years ago
    I tried only the the formula option and it worked great. Till now have been using (Transpose formula with ctrl+shift+enter) but there the disadvantage for we have delete many extra rows. when the rows to be transposed for large in the order of lakhs, then deleting them in excel is either impossible or takes a lot of time.
    this approach made the life easier by only copying the required rows... Thanks
  • To post as a guest, your comment is unpublished.
    Sian · 2 years ago
    This is fricking AWESOME!!! Thank you SO much. Your example was exactly what I needed and it worked beautifully.
  • To post as a guest, your comment is unpublished.
    hamidreza · 3 years ago
    =INDEX($A:$A,ROW(A1)*5-5+COLUMN(A1))
    It was very simple and really useful. Thank you so much
  • To post as a guest, your comment is unpublished.
    Thank · 3 years ago
    It was great! Thank you! You saved me hours of manual work!
  • To post as a guest, your comment is unpublished.
    xplode · 3 years ago
    Thank you so much!
    It was really helpful. :)
  • To post as a guest, your comment is unpublished.
    MTVN · 4 years ago
    What formula to transpose every 5 rows to a single column?
  • To post as a guest, your comment is unpublished.
    hgimongu · 4 years ago
    Hi!

    May I ask you how to add Blank cell delimits records, instead of 5 as the data I am handling hasn't got fix number of rows. I believe the part which I should change may be around this part of the code:

    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

    Best
    • To post as a guest, your comment is unpublished.
      Mark.lewis2020 · 11 months ago
      I have the same issue , where the columns are not fixed, and there are empty lines, but I have a same character and end of each data set , that is "=" can I use this as delimiter , that breaks the loop, and next line is considered as new data set ?
    • To post as a guest, your comment is unpublished.
      Mark · 11 months ago
      did you get an answer for the same as i have the same issue , columns are not fixed in numbers, what should I do , can I use a particular character as a delimiter that breaks the loop and count next line and new data set ?