Hoppa till huvudinnehåll

Hur transponerar jag var 5: e eller varannan rad från en kolumn till flera kolumner?

doc transponera var 5: e rad 1

Om du antar att du har långa data i kolumn A, och nu vill du transponera var femte rad från kolumn A till flera kolumner, till exempel transponera A5: A1 till C5: G6, A6: A6 till C10: G7, och så vidare som följande skärmdump visas. Hur kan du hantera den här uppgiften utan att kopiera och klistra in flera gånger i Excel?

Transponera var 5: e eller varannan rad från en kolumn till flera kolumner med formeln

Transponera var 5: e eller varannan rad från en kolumn till flera kolumner med VBA-kod

Transponera var 5: e eller varannan rad från en kolumn till flera kolumner med Kutools för Excel


I Excel kan du använda följande formel för att transponera varje n rader från en kolumn till flera kolumner, gör så här:

1. Ange följande formel i en tom cell där du vill lägga resultatet, C1, till exempel, = INDEX ($ A: $ A, RAD (A1) * 5-5 + KOLONN (A1)), se skärmdump:

doc transponera var 5: e rad 2

Anmärkningar: I ovanstående formel, A: A är kolumnreferensen som du vill transponera, och A1 är den första cellen i den använda kolumnen, numret 5 anger antalet kolumner som dina data kommer att hitta, du kan ändra dem efter behov. Och den första cellen i listan måste placeras på första raden i kalkylbladet.

2. Dra sedan påfyllningshandtaget åt höger till fem celler och fortsätt att dra påfyllningshandtaget ner till cellområdet tills visar 0, se skärmdump:

doc transponera var 5: e rad 3


Omvandla var 5: e eller varannan rad från en kolumn till flera kolumner:

För att omvandla var 5: e eller varannan rad från en kolumn till flera kolumner, Kutools för Excel's Transformera intervall verktyget kan hjälpa dig att lösa detta jobb så fort du kan. Det kan också hjälpa dig att transponera en rad data till en rad eller kolumn. Klicka för att ladda ner Kutools för Excel!

doc transponera var 5: e rad 10

Kutools för Excel: med mer än 300 praktiska Excel-tillägg, gratis att prova utan begränsning på 30 dagar. Ladda ner och testa gratis nu!


Om du inte kan använda formeln korrekt kan följande VBA-kod också hjälpa dig.

1. Håll ner ALT + F11 nycklar för att öppna Microsoft Visual Basic för applikationer fönster.

2. Klicka Insert > Modulernaoch klistra in följande kod i Modulerna Fönster.

VBA-kod: Transponera var 5: e eller varannan rad från en kolumn till flera kolumner:

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. När du har klistrat in koden, tryck F5 nyckel för att köra den, och en snabbruta dyker upp för att påminna dig om att du väljer den kolumn som du vill transponera, se skärmdump:

doc transponera var 5: e rad 4

4. Klicka sedan OK, och välj en cell där du vill placera resultatet i en annan poppad ruta, se skärmdump:

doc transponera var 5: e rad 5

5. och klicka OK, har data i kolumnen konverterats till fem kolumner som du behöver, se skärmdump:

doc transponera var 5: e rad 6

Anmärkningar: I koden ovan kan du ändra numret 5 till ett annat nummer du behöver.


Om du har Kutools för Excel, med dess Transformera intervall verktyget kan du snabbt transponera en kolumn eller rad till flera kolumner och rader.

Kutools för Excel : med mer än 300 praktiska Excel-tillägg, gratis att prova utan begränsning på 30 dagar. 

När du har installerat Kutools för Excel, gör så här:

1. Markera data i kolumnen och klicka sedan på Kutools > Mätområde > Transformera intervall, se skärmdump:

2. I Transformera intervall dialogrutan väljer du Enstaka kolumn för intervall alternativet under Transformera typ, och kontrollera sedan Fast värde under Rader per post, ange sedan antalet kolumner som du vill transponera till i Fast värde ruta, se skärmdump:

doc transponera var 5: e rad 8

3. Och klicka sedan på Ok knapp, välj en cell för att mata ut resultatet, se skärmdump:

doc transponera var 5: e rad 9

4. Klicka sedan OK -knappen och din kolumninformation har transponerats var femte rad enligt följande skärmdump:

doc transponera var 5: e rad 6

Ladda ner och testa gratis Kutools för Excel nu!


Kutools för Excel: med mer än 300 praktiska Excel-tillägg, gratis att prova utan begränsning på 30 dagar. Ladda ner och testa gratis nu!

Bästa kontorsproduktivitetsverktyg

🤖 Kutools AI Aide: Revolutionera dataanalys baserat på: Intelligent utförande   |  Generera kod  |  Skapa anpassade formler  |  Analysera data och generera diagram  |  Anropa Kutools funktioner.
Populära funktioner: Hitta, markera eller identifiera dubbletter   |  Ta bort tomma rader   |  Kombinera kolumner eller celler utan att förlora data   |   Rund utan formel ...
Superuppslag: Flera kriterier VLookup    VLookup med flera värden  |   VSök över flera ark   |   Fuzzy Lookup ....
Avancerad rullgardinslista: Skapa snabbt en rullgardinslista   |  Beroende rullgardinslista   |  Flervals-rullgardinslista ....
Kolumnhanterare: Lägg till ett specifikt antal kolumner  |  Flytta kolumner  |  Växla synlighetsstatus för dolda kolumner  |  Jämför intervall och kolumner ...
Utvalda funktioner: Rutnätsfokus   |  Designvy   |   Stor formelbar    Arbetsbok & Bladhanterare   |  Resursbibliotek (Automatisk text)   |  Datumväljare   |  Kombinera arbetsblad   |  Kryptera/Dekryptera celler    Skicka e-postmeddelanden efter lista   |  Superfilter   |   Specialfilter (filtrera fet/kursiv/genomstruken...) ...
Topp 15 verktygssatser12 text verktyg (lägga till text, Ta bort tecken, ...)   |   50+ Diagram Typer (Gantt Chart, ...)   |   40+ Praktiskt Formler (Beräkna ålder baserat på födelsedag, ...)   |   19 Införande verktyg (Infoga QR-kod, Infoga bild från sökväg, ...)   |   12 Konvertering verktyg (Siffror till ord, Valutaväxling, ...)   |   7 Slå ihop och dela verktyg (Avancerade kombinera rader, Dela celler, ...)   |   ... och mer

Uppgradera dina Excel-färdigheter med Kutools för Excel och upplev effektivitet som aldrig förr. Kutools för Excel erbjuder över 300 avancerade funktioner för att öka produktiviteten och spara tid.  Klicka här för att få den funktion du behöver mest...

Beskrivning


Fliken Office ger ett flikgränssnitt till Office och gör ditt arbete mycket enklare

  • Aktivera flikredigering och läsning i Word, Excel, PowerPoint, Publisher, Access, Visio och Project.
  • Öppna och skapa flera dokument i nya flikar i samma fönster, snarare än i nya fönster.
  • Ökar din produktivitet med 50 % och minskar hundratals musklick för dig varje dag!
Comments (15)
Rated 5 out of 5 · 1 ratings
This comment was minimized by the moderator on the site
Bonjour,

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

Je voudrait que cette cellule soit dans la première 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, Heeelllp...

Merci d'avance
Stéphane
This comment was minimized by the moderator on the site
You're a genius. Thanks!
Rated 5 out of 5
This comment was minimized by the moderator on the site
I try doing this just as written, and all I get is Error:508
This comment was minimized by the moderator on the site
Hi, How to do this for Colms to rows. Thank you
This comment was minimized by the moderator on the site
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, ...
This comment was minimized by the moderator on the site
Thanks alot _/\_ Awesome job with =INDEX($A:$A,ROW(B1)*5-5+COLUMN(B1))
worked perfectly
This comment was minimized by the moderator on the site
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
This comment was minimized by the moderator on the site
This is fricking AWESOME!!! Thank you SO much. Your example was exactly what I needed and it worked beautifully.
This comment was minimized by the moderator on the site
=INDEX($A:$A,ROW(A1)*5-5+COLUMN(A1))
It was very simple and really useful. Thank you so much
This comment was minimized by the moderator on the site
It was great! Thank you! You saved me hours of manual work!
This comment was minimized by the moderator on the site
Thank you so much! It was really helpful. :)
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations