Gå til hovedindhold

Hvordan kombineres flere kolonner til en liste i Excel?

For at kombinere eller flette flere kolonner til en lang liste kan du normalt kopiere og indsætte kolonnedataene en efter en i den angivne kolonne. Men her kan jeg introducere dig nogle hurtige tricks til at løse denne opgave i Excel.

Kombiner flere kolonner til en liste med VBA-kode

Kombiner flere kolonner til en liste med Kutools til Excel


Uden at gentage for at kopiere og indsætte kolonnedataene, kan følgende VBA-kode hjælpe dig med at håndtere dette job hurtigt og nemt.

1. Hold nede i Alt + F11 nøgler i Excel, og det åbner Microsoft Visual Basic til applikationer vindue.

2. Klik indsatte > Moduler, og indsæt følgende makro i Moduler Vindue.

VBA-kode: Kombiner eller flet flere kolonner til en liste

Sub CombineColumns1()
'updateby Extendoffice
    Dim xRng As Range
    Dim i As Integer
    Dim xLastRow As Integer
    Dim xTxt As String
    On Error Resume Next
    xTxt = Application.ActiveWindow.RangeSelection.Address
    Set xRng = Application.InputBox("please select the data range", "Kutools for Excel", xTxt, , , , , 8)
    If xRng Is Nothing Then Exit Sub
    xLastRow = xRng.Columns(1).Rows.Count + 1
    For i = 2 To xRng.Columns.Count
        Range(xRng.Cells(1, i), xRng.Cells(xRng.Columns(i).Rows.Count, i)).Cut
        ActiveSheet.Paste Destination:=xRng.Cells(xLastRow, 1)
        xLastRow = xLastRow + xRng.Columns(i).Rows.Count
    Next
End Sub

3. Tryk derefter på F5 nøgle til at køre denne kode, og der vises et promptfelt for at minde dig om at vælge det dataområde, du vil kombinere i kun en kolonne, se skærmbillede:

doc kombiner kolonner til en 1

4. Og klik derefter på OK -knappen, og de valgte kolonner er blevet flettet i kun en kolonne som følgende skærmbilleder vist:

doc kombiner kolonner til en 2 2 doc kombiner kolonner til en 3

Tips: Efter at have kørt denne VBA, ryddes de originale data i området, du må hellere kopiere og gemme dem et andet sted først.


Hvis du har installeret Kutools til Excel, dens Transformér rækkevidde hjælpeprogram kan hjælpe dig med at kombinere flere kolonner i en enkelt kolonne eller en enkelt række.

Kutools til Excel : med mere end 300 praktiske Excel-tilføjelsesprogrammer, gratis at prøve uden begrænsning på 30 dage.

Efter installation Kutools til Excelskal du gøre som følger:

1. Vælg de søjledata, du vil kombinere, til en liste.

2. Klik derefter på Kutools > Range > Transformér rækkevidde, se skærmbillede:

3. I Transformér rækkevidde dialogboksen, vælg Område til enkelt kolonne valgmulighed og klik Ok knap, se skærmbillede:

doc kombiner kolonner til en 5

4. I det følgende dukkede ud Transformér rækkevidde Klik på en celle, hvor du vil sende resultatet, se skærmbillede:

doc kombiner kolonner til en 6

5. Klik derefter på OK knappen, er dine valgte kolonner blevet kombineret til en enkelt kolonne på den angivne placering, du ønskede. Se skærmbillede:

doc kombiner kolonner til en 7

Download og gratis prøveversion Kutools til Excel nu!


Kutools til Excel: med mere end 300 praktiske Excel-tilføjelsesprogrammer, gratis at prøve uden begrænsning på 30 dage. Download og gratis prøveversion nu!

Bedste kontorproduktivitetsværktøjer

🤖 Kutools AI Aide: Revolutionér dataanalyse baseret på: Intelligent udførelse   |  Generer kode  |  Opret brugerdefinerede formler  |  Analyser data og generer diagrammer  |  Aktiver Kutools funktioner...
Populære funktioner: Find, fremhæv eller identificer dubletter   |  Slet tomme rækker   |  Kombiner kolonner eller celler uden at miste data   |   Runde uden formel ...
Super opslag: VLookup med flere kriterier    Multiple Value VLookup  |   VOpslag på tværs af flere ark   |   Fuzzy Lookup ....
Avanceret rulleliste: Opret hurtigt rulleliste   |  Afhængig rulleliste   |  Multivælg rulleliste ....
Column Manager: Tilføj et bestemt antal kolonner  |  Flyt kolonner  |  Skift synlighedsstatus for skjulte kolonner  |  Sammenlign områder og kolonner ...
Fremhævede funktioner: Grid fokus   |  Designvisning   |   Stor Formel Bar    Arbejdsbog & Ark Manager   |  Ressourcebibliotek (Autotekst)   |  Datovælger   |  Kombiner regneark   |  Krypter/Dekrypter celler    Send e-mails efter liste   |  Superfilter   |   Specielt filter (filter fed/kursiv/gennemstreget...) ...
Top 15 værktøjssæt12 tekst Værktøjer (tilføje tekst, Fjern tegn, ...)   |   50 + Chart Typer (Gantt kort, ...)   |   40+ Praktisk formler (Beregn alder baseret på fødselsdag, ...)   |   19 Indsættelse Værktøjer (Indsæt QR-kode, Indsæt billede fra sti, ...)   |   12 Konvertering Værktøjer (Tal til ord, Valutaomregning, ...)   |   7 Flet og del Værktøjer (Avancerede kombinere rækker, Opdel celler, ...)   |   ... og mere

Overlad dine Excel-færdigheder med Kutools til Excel, og oplev effektivitet som aldrig før. Kutools til Excel tilbyder over 300 avancerede funktioner for at øge produktiviteten og spare tid.  Klik her for at få den funktion, du har mest brug for...

Beskrivelse


Fanen Office bringer en grænseflade til et kontor med Office, og gør dit arbejde meget lettere

  • Aktiver redigering og læsning af faner i Word, Excel, PowerPoint, Publisher, Access, Visio og Project.
  • Åbn og opret flere dokumenter i nye faner i det samme vindue snarere end i nye vinduer.
  • Øger din produktivitet med 50 % og reducerer hundredvis af museklik for dig hver dag!
Comments (7)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
This works great if you need to combine all of one column, then move to the next column, etc. What if you need to combine them in the row order? Such as...
A1
B1
A2
B2
This comment was minimized by the moderator on the site
Hello, Kevin,
To combine the data from rows into one single column based on the row order, please apply the following code:
Sub ConvertRangeToColumn()
'Updateby Extendoffice
Dim Range1 As Range, Range2 As Range, Rng As Range
Dim rowIndex As Integer
xTitleId = "KutoolsforExcel"
Set Range1 = Application.Selection
Set Range1 = Application.InputBox("Source Ranges:", xTitleId, Range1.Address, Type:=8)
Set Range2 = Application.InputBox("Convert to (single cell):", xTitleId, Type:=8)
rowIndex = 0
Application.ScreenUpdating = False
For Each Rng In Range1.Rows
    Rng.Copy
    Range2.Offset(rowIndex, 0).PasteSpecial Paste:=xlPasteAll, Transpose:=True
    rowIndex = rowIndex + Rng.Columns.Count
Next
Application.CutCopyMode = False
Application.ScreenUpdating = True
End Sub


Please have a try, hope it can help you!
This comment was minimized by the moderator on the site
Доброго вечера, благодарю Вас за помощь, Вы сэкономили часы времени. Спасибо, желаю Вам счастья!
This comment was minimized by the moderator on the site
Hello,
Glad it can help you! 😀
This comment was minimized by the moderator on the site
Спасибо большое, все сработало!!!
This comment was minimized by the moderator on the site
This has been very helpful. It saved me hours of copying and pasting columns from A to ANY.
This comment was minimized by the moderator on the site
This worked perfect and was very helpful! Thanks!
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations