Vpiši se  \/ 
x
or
x
Registracija  \/ 
x

or

Kako prenesti stolpce v vrstice in vstaviti nove vrstice za zapolnitev podatkov v Excelu?

V tem članku predstavljam kodo VBA za prenos stolpcev v vrstice in vstavljanje novih vrstic za izpolnitev podatkov, kot je prikazano na spodnji sliki zaslona. Če vas zanima ta postopek, pojdite spodaj za več podrobnosti.
doc transpose vstavi vrstice 1

Prenesite in vstavite vrstice z VBA


puščica modri desni mehurček Prenesite in vstavite vrstice z VBA

Ni neposrednega načina za prenos obsega in vstavljanje vrstic za zapolnitev istih podatkov, toda tukaj lahko predstavim kodo VBA za hitro reševanje te naloge.

1. Pritisnite Alt + F11 tipke za odpiranje Microsoft Visual Basic za aplikacije okno.

2. klik Vstavi > Moduliin prilepite pod kodo VBA v okno modula. Oglejte si posnetek zaslona:

VBA: Prenesite in vstavite vrstice.

 Sub TransposeInsertRows()
'UpdatebyExtendoffice20161125
    Dim xRg As Range
    Dim i As Long, j As Long, k As Long
    Dim x As Long, y As Long
    Set xRg = Application.InputBox _
    (Prompt:="Range Selection...", _
    Title:="Kutools For Excel", Type:=8)
    Application.ScreenUpdating = False
    x = xRg(1, 1).Column + 2
    y = xRg(1, xRg.Columns.Count).Column
    For i = xRg(xRg.Rows.Count, 1).Row To xRg(1, 1).Row Step -1
        If Cells(i, x) <> "" And Cells(i, x + 1) <> "" Then
            k = Cells(i, x - 2).End(xlToRight).Column
            If k > y Then k = y
            For j = k To x + 1 Step -1
                Cells(i + 1, 1).EntireRow.Insert
                With Cells(i + 1, x - 2)
                    .Value = .Offset(-1, 0)
                    .Offset(0, 1) = .Offset(-1, 1)
                    .Offset(0, 2) = Cells(i, j)
                End With
                Cells(i, j).ClearContents
            Next j
        End If
    Next i
    Application.ScreenUpdating = True
End Sub

 

doc transpose vstavi vrstice 2

3. Pritisnite F5 tipko za zagon kode, nato izberite obseg podatkov, ki ga želite prenesti, in v pogovorno okno vstavite vrstice. Oglejte si posnetek zaslona:
doc transpose vstavi vrstice 3

4. klik OK. In izbrani obseg je bil pretvorjen, kot je prikazano spodaj.
doc transpose vstavi vrstice 4

Opombe: pred zagonom kode raje shranite kopijo izvirnih podatkov.

Nasvet.Če želite hitro prenesti navzkrižno tabelo v tabelo s seznami ali obratno, poskusite uporabiti Kutools za Excel Prenesi dimenzije tabele kot je prikazano na naslednjem posnetku zaslona. Popolnoma deluje brez omejitev v 30 dneh, prosim prenesite in si zagotovite brezplačno preskusno različico zdaj

doc prenese križ na seznam

Najboljša orodja za pisarniško produktivnost

Kutools za Excel rešuje večino vaših težav in poveča produktivnost za 80%

  • Ponovna uporaba: Hitro vstavite zapletene formule, grafikoni in vse, kar ste že uporabljali; Šifriraj celice z geslom; Ustvari poštni seznam in pošiljanje e-pošte ...
  • Vrstica Super Formula (enostavno urejanje več vrstic besedila in formule); Bralna postavitev (enostavno branje in urejanje velikega števila celic); Prilepite v filtrirani obseg...
  • Združi celice / vrstice / stolpce brez izgube podatkov; Vsebina razdeljenih celic; Združi podvojene vrstice / stolpce... prepreči podvojene celice; Primerjaj obsege...
  • Izberite Duplicate ali Unique Vrstice; Izberite prazne vrstice (vse celice so prazne); Super Find in Fuzzy Find v mnogih delovnih zvezkih; Naključna izbira ...
  • Natančna kopija Več celic brez spreminjanja sklica formule; Samodejno ustvarjanje referenc na več listov; Vstavi oznake, Potrditvena polja in še več ...
  • Izvleček besedila, Dodaj besedilo, Odstrani po položaju, Odstrani presledek; Ustvari in natisni vmesne seštevke strani Pretvarjanje med vsebino celic in komentarji...
  • Super filter (shranite in uporabite sheme filtrov za druge liste); Napredno razvrščanje glede na mesec / teden / dan, pogostost in drugo; Poseben filter s krepko, ležeče ...
  • Združite delovne zvezke in delovne liste; Spoji tabele na podlagi ključnih stolpcev; Razdelite podatke na več listov; Paketna pretvorba xls, xlsx in PDF...
  • Več kot 300 zmogljivih funkcij. Podpira Office / Excel 2007-2019 in 365. Podpira vse jezike. Preprosta namestitev v vašem podjetju ali organizaciji. Vse funkcije 30-dnevnega brezplačnega preskusa. 60-dnevno jamstvo za vračilo denarja.
zavihek kte 201905

Kartica Office prinaša vmesnik z zavihki v Office in poenostavi vaše delo

  • Omogočite urejanje in branje z zavihki v Wordu, Excelu, PowerPointu, Publisher, Access, Visio in Project.
  • Odprite in ustvarite več dokumentov v novih zavihkih istega okna in ne v novih oknih.
  • Poveča vašo produktivnost za 50% in vsak dan zmanjša na stotine klikov z miško!
dno pisarniške mize
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.
    belmer01 · 6 months ago
    The above code works great. It keeps the first two columns. How would I change the code so that it only keeps the first column?
  • To post as a guest, your comment is unpublished.
    danielad.riosr@unilibrebog.edu.co · 1 years ago
    How can I transpose the data every two cells

    The initial exercise is:


    Class1 | Name | Nancy | Judy | Lily | Daniel
    Class2 | Name | Bruce | Uee | Perter | Daniel
    Class3 | Name | kate | Kelly | Wenddy | Daniel

    and I need it to look like this:

    Class1 | Name | Nancy | Judy
    Class1 | Name | Lily | Daniel
    Class 2 | Name | Bruce | Uee
    Class 2 | Name | Perter | Daniel
    Class3 | Name | kate | Kelly
    Class3 | Name | Wenddy | Daniel
  • To post as a guest, your comment is unpublished.
    Daniela · 1 years ago
    how can I make data 3 and 4 remain in the same column:


    the initial exercise is:

    Class1 | Name | Nancy | Judy | Lily | Daniel
    Class2 | Name | Bruce | Uee | Perter | Daniel
    Class3 | Name | kate | Kelly | Wenddy | Daniel

    I need to transpose it like this

    Class1 | Name | Nancy | Judy
    Class1 | Name | Lily | Daniel
    Class 2 | Name | Bruce | Uee
    Class 2 | Name | Perter | Daniel
    Class3 | Name | kate | Kelly
    Class3 | Name | Wenddy | Daniel
  • To post as a guest, your comment is unpublished.
    Val · 3 years ago
    how would i change the VBA code so that it will keep more of the columns the same? for example instead of the first two columns staying the same it will be the first 4?
    • To post as a guest, your comment is unpublished.
      Sunny · 3 years ago
      I am not sure, may be you can try to change x = xRg(1, 1).Column + 2 to x = xRg(1, 1).Column + 4.
  • To post as a guest, your comment is unpublished.
    Chasles · 3 years ago
    If my cross table's informations come from formulas, those formulas don't always follow when the macro is applied. How could I fix this to make sure that the formulas are kept in the cells?
    • To post as a guest, your comment is unpublished.
      Sunny · 3 years ago
      Hi, thank u for ur message. For solving your problem, you can apply Kutools' Convert Formula to Text before you running the macro, then after transposing thetable, apply Kutools' Convert Text to Formula. Please Let me know if it works. Thank u.