Excel Handledning: Kombinera kolumner, rader, celler
Att kombinera kolumner, rader eller celler används vanligtvis i vårt dagliga Excel-jobb, som att kombinera förnamn och efternamn som i två kolumner till en kolumn för att få det fullständiga namnet, kombinera rader baserade på samma ID och summera motsvarande värden, kombinera ett intervall av celler till en enda cell och så vidare. Den här handledningen listar alla scenarier om att kombinera kolumner/rader/celler i Excel och ger dig de olika lösningarna.
I den här handledningen skapar jag några exempel för att förklara metoderna, du kan ändra referenserna du behöver när du använder nedanstående VBA-kod eller formler, eller så kan du ladda ner exemplen för att prova metoder direkt.
Klicka för att ladda ner exempelfilen
1 Kombinera kolumner/rader till en cell
Att kombinera kolumner eller rader till en cell och separera resultatet med kommatecken, mellanslag eller andra avgränsare enligt skärmbilden nedan används mest i Excel.
Kombinera kolumner till en cell |
Kombinera rader till en cell |
I Excel används vanligtvis et-teckenet & för att sammanfoga texter.
Exempel: Kombinera förnamn (kolumn A) och efternamn (kolumn B) till fullständigt namn
Välj en cell där du vill placera det kombinerade resultatet och skriv sedan en formel så här:
=A2&" "&B2
I formeln används & för att sammanfoga texterna, A2 och B2 är de två texterna som måste kombineras, " " är avgränsaren (mellanslag) som skiljer de två texterna i resultatcellen, om du vill använda ett kommatecken som avgränsare skriver du bara ett kommatecken med dubbla citattecken ",".
Klicka ange för att få det kombinerade resultatet, dra sedan handtaget för automatisk fyllning nedåt för att få de kombinerade resultaten.
Exempel: Kombinera nr (rad 15) och namn (rad 16) till en cell
Om du vill kombinera rader till en cell ändrar du cellreferenserna och separatorn i formeln efter behov, och drar autofyllhandtaget åt höger för att få de kombinerade resultaten.
1.12 Använda CONCATENATE-funktionen (Excel 2016 eller tidigare versioner)
Om du använder Excel 2016 eller tidigare versioner kan funktionen CONCATENATE hjälpa dig.
Syntax om CONCATENATE |
CONCATENATE (text1,[text2],…) |
För mer information om CONCATENATE-funktionen, besök: HOPLÄNKA.
Exempel: Kombinera namn (kolumn F) och adress (kolumn G) till en kolumn
Välj en cell där du vill placera det kombinerade resultatet och skriv sedan en formel så här:
=KONKATERA(F2,",",G2)
I formeln är F2 och G2 de två texterna som måste kombineras, "," är avgränsaren (komma) som skiljer de två texterna i resultatcellen, om du vill använda mellanslag som avgränsare, skriv bara ett mellanslag med dubbla citattecken " ".
Klicka ange för att få det kombinerade resultatet, dra sedan handtaget för automatisk fyllning nedåt för att få de kombinerade resultaten.
För att kombinera rader ändrar du bara cellreferenserna och avgränsaren efter behov och drar autofyll-handtaget åt höger.
1.13 Använda CONCAT-funktionen eller TEXTJOIN-funktionen (Excel 2019 eller Excel 365)
Om du använder Excel 2019 eller Excel 365 kan CONCAT-funktionen och TEXTJOIN-funktionen vara det bättre valet.
Syntax om CONCAT |
CONCAT (text1,[text2],…) |
För mer information om CONCAT-funktionen, besök: KONCAT.
Användningen av CONCAT-funktionen är densamma som CONCATENATE-funktionen, för att kombinera förnamn och efternamn i två kolumner separat till en kolumn, används formeln så här:
=CONCAT(A21," ",B21)
I formeln är A21 och B21 de två texterna som måste kombineras, " " är avgränsaren (mellanslag) som skiljer de två texterna i resultatcellen, om du vill använda andra avgränsare, skriv bara avgränsaren som omges av dubbel citat "".
Tryck på Enter-tangenten för att få det kombinerade resultatet, dra sedan handtaget för automatisk fyllning nedåt för att få de kombinerade resultaten.
Skiljer sig från att kombinera kolumner, medan du kombinerar rader, efter att ha angett den första formeln, måste du dra autofyll-handtaget åt höger tills alla kombinerade resultat har uppnåtts.
Syntax om TEXTJOINT |
TEXTJOIN (delimiter, ignore_empty, text1, [text2], ...) |
För mer information om TEXTJOIN-funktionen, besök: TEXTGÅ MED.
För att kombinera kolumner eller rader med TEXTJOIN:
=TEXTJOIN(",",TRUE,E21:G21))
I formeln är E21:G21 ett kontinuerligt område som måste kombineras. " " är avgränsaren (mellanslag) som skiljer de två texterna i resultatcellen, om du vill använda andra avgränsare, skriv bara avgränsaren omgiven av dubbla citattecken "". Den logiska texten "TRUE" indikerar att du ska ignorera tomma celler vid kombination, om du vill kombinera med tomrum, ersätt TRUE med FALSE.
Tryck på Enter-tangenten för att få det kombinerade resultatet, dra sedan handtaget för automatisk fyllning nedåt för att få de kombinerade resultaten.
Ignorera tomrum |
Inkludera ämnen |
1.14 Använda Anteckningar (endast för att kombinera kolumner)
1. Använda Notepad kan också uppnå att kombinera kolumner (ingen effekt på att kombinera rader).
Välj intervallet som du vill kombinera kolumner till en och tryck på ctrl + C för att kopiera intervallet.
2. Öppna en Anteckningaroch tryck på ctrl + V för att klistra in det kopierade intervallet.
3. Välj en flik mellan två texter i Anteckningar och tryck ctrl + H att möjliggöra ersätta har en fliksymbol placerats i Hitta det textruta.
4. I Ersätt med textrutan, skriv avgränsaren du vill separera de kombinerade texterna och klicka sedan Ersätt alla. Stäng sedan ersätta dialog.
5. Välj nu texterna i Anteckningar och tryck ctrl + C för att kopiera dem, och gå till Excel, välj en cell och tryck ctrl + V för att klistra in de kombinerade resultaten.
Tillägg: Kombinera kolumner/rader till en cell med radbrytning som avgränsare
Om du vill kombinera kolumner eller rader till en cell med en radbrytning enligt skärmbilden nedan:
För det första bör du inse att i Excel, RÖDING() funktion kan användas för att ange tecken som är svåra att ange i en formel, som t.ex CHAR (10) returnerar en radbrytning.
Använd sedan CHAR(10) i formlerna som listas ovan för att kombinera kolumner eller rader med radbrytning som avgränsare:
Ampersand-symbol:
=A49&CHAR(10)&B49
CONCATENATE funktion:
=CONCATENATE(A49,CHAR(10),B49)
CONCAT-funktion
=CONCAT(A49,CHAR(10),B49)
TEXTJOIN-funktion
=TEXTJOIN(CHAR(10),TRUE,A49:B49)
Efter att ha angett en formel ovan, välj resultaten och klicka Home > Radbryt text.
Nu kombineras kolumnerna till en och separeras med en radbrytning.
Om du bara vill kombinera rader i en kolumn till en enda cell kan funktionen Justera i Excel hjälpa dig. Välj kolumnen med flera rader och klicka Home > Fyll > motivera, då kommer raderna att kombineras till den översta cellen i intervallet med utrymme som en separator.
I den här delen introducerar handledningen metoderna för att kombinera kolumner eller rader till en cell och hoppa över tomma celler enligt skärmbilden nedan:
1.21 Använda TEXTJOIN-funktionen (Excel 2019 eller Excel 365)
Om du använder Excel 2019 eller Excel 365 kan lyckligtvis den nya funktionen TEXTJOIN lösa det här jobbet enkelt.
Syntax om CONCATENATE |
TEXTJOIN (delimiter, ignore_empty, text1, [text2], ...) |
För mer information om TEXTJOIN-funktionen, besök: TEXTGÅ MED.
Exempel: Kombinera namn (kolumn A) och nummer (kolumn B) och domän (kolumn C) till en cell för att skapa en e-postadress, vissa nummer kan vara tomma.
Välj en cell som använde för att placera det kombinerade resultatet, skriv formeln så här:
=TEXTJOIN("",TRUE,A2:C2)
I formeln är A2:C2 intervallet som innehåller texter som behövde kombineras, "" är avgränsaren (ingen) som skiljer de två texterna i resultatcellen, om du vill använda en avgränsare för att separera texterna, bara skriv avgränsaren omgiven av dubbla citattecken "", såsom ",". Den logiska texten "TRUE" indikerar att du ska ignorera tomma celler vid kombination, om du vill kombinera med tomrum, ersätt TRUE med FALSE.
Klicka ange för att få det första resultatet, och dra autofyllhandtaget nedåt eller åt höger allt eftersom du behöver generera alla resultat.
Om du använder Excel 2016 eller tidigare Excel-versioner, använd et-teckenet & för att koppla ihop texterna en efter en och hoppa över tomrum manuellt.
Välj en cell där du vill placera det kombinerade resultatet och skriv sedan en formel så här:
=A10&C10
I formeln, & används för att sammanfoga texterna, är A10 och C10 de två texterna som behövde kombineras, om du vill använda ett kommatecken som avgränsare, skriv bara ett kommatecken med dubbla citattecken som "," och använd & för att koppla mellan två texter.
Klicka ange nyckeln för att få det kombinerade resultatet. Ändra sedan referenserna för formeln för att få nästa kombinerade resultat.
1.23 Använda definierad funktion
För användare av Excel 2016 och tidigare Excel-versioner, om det finns flera kolumner eller rader som måste kombineras medan du hoppar över tomrum, kan du använda en VBA för att skapa en definierad funktion för att snabbt lösa det här jobbet.
1. Tryck andra + F11 för att aktivera Microsoft Visual Basic för applikationer fönster.
2. klick Insert > Modulerna för att infoga en ny modul.
3. Kopiera och klistra in koden nedan i den nya modulen och spara den.
VBA: Kombinera celler hoppa över tomma celler
Function Concatenatecells(ConcatArea As Range) As String
'updateby Extendoffice
For Each n In ConcatArea: nn = IIf(n = "", nn & "", nn & n & "_"): Next
Concatenatecells = Left(nn, Len(nn) - 1)
End Function
4. Gå tillbaka till kalkylbladet och välj en cell som placerar det kombinerade resultatet, skriv formeln
=Concatenatecells(A15:C15)
I formeln är A15:C15 intervallet innehåller texter som behövde kombineras. I VBA-koden indikerar "_" den avgränsare som användes för att separera texterna i det kombinerade resultatet, du kan ändra avgränsaren efter behov.
Om du har installerat Kutools för Excel i Excel, den Kombinera rader, kolumner eller celler utan att förlora data funktionen är ganska till hjälp vid olika typer av kombinationsjobb.
1. Välj de celler som du vill kombinera och de celler som du vill placera de kombinerade resultaten.
2. klick Kutools > Slå ihop och dela > Kombinera rader, kolumner eller celler utan att förlora data.
3. I den öppna dialogrutan, ange alternativen enligt nedan:
1) Ange att kombinera kolumner, eller kombinera rader, eller kombinera alla celler till en.
Kombinera kolumner T.ex. | Kombinera rader T.ex. | Kombinera till en cell, t.ex. |
2) Ange separator för texterna i det kombinerade resultatet.
3) Ange platsen för det kombinerade resultatet (inaktiverat när du väljer alternativet Kombinera till en cell)
När du väljer alternativet Kombinera kolumner kan du ange att resultatet ska placeras i den vänstra cellen i det valda intervallet, eller i den högra cellen i det valda intervallet.
Vänster cell T.ex. | Höger cell T.ex. |
När du väljer Kombinera rader kan du ange att resultatet ska placeras i den översta cellen i det valda intervallet eller i den nedre cellen i det valda intervallet.
Översta cellen T.ex. | Nedre cell T.ex. |
4) Ange operationen för kombinerade resultat.
4. klick Ok or Ansök för att avsluta kombinationen.
Behåll innehållet i kombinerade celler |
Ta bort innehållet i kombinerade celler |
;Slå samman de kombinerade cellerna |
För mer information om den här funktionen, besök Kombinera kolumner, rader, celler utan att förlora data.
För mer information om Kutools för Excel, besök Kutools för Excel.
För en 30-dagars gratis provperiod av Kutools för Excel, vänligen ladda ner det nu.
Ibland kanske du vill kombinera två kolumner om en av kolumnerna innehåller tomma celler. Om vi antar att det finns två kolumner, kolumn A innehåller användarnamn och några tomma celler, och kolumn B innehåller namn, fyll nu bara de tomma cellerna i kolumn A med motsvarande innehåll i kolumn B när du kombinerar de två kolumnerna enligt skärmbilden nedan:
IF-funktionen används för att testa för ett specifikt tillstånd. Här kan du använda OM-funktionen för att testa om cellen är tom, och sedan fylla de tomma med innehåll i en annan kolumn.
Syntax om IF-funktionen |
IF (logical_test, [value_if_true], [value_if_false]) |
För mer information om IF-funktionen, besök: IF
Välj den översta cellen i kolumnen där du vill placera de kombinerade resultaten och kopiera eller ange formeln nedan:
=OM(A2="",B2,A2)
Tryck sedan på ange för att få det första resultatet, och dra ned handtaget för automatisk fyllning för att få alla resultat.
Nu har bara de tomma cellerna i kolumn A fyllts med innehållet i kolumn B.
Här är en VBA-kod som också kan hantera detta jobb.
1. Tryck andra + F11 för att aktivera Microsoft Visual Basic för applikationer och klicka sedan på Insert > Modulerna för att skapa en ny tom modul.
2. Kopiera och klistra in koden nedan i den nya modulen.
VBA: Slå samman två kolumner om de är tomma
Sub MergebyBlank()
'UpdatebyExtendoffice20220506
Dim xRg1, xRg2, xRgUser As Range
Dim xRg As Range
Dim xWsh As Worksheet
Dim xCount, xFNum As Integer
Set xRg1 = Range("A:A")
Set xRg2 = Range("B:B")
Set xWsh = xRg1.Worksheet
Set xRgUser = xWsh.UsedRange
Set xRg1 = Intersect(xRgUser, xRg1)
Set xWsh = xRg2.Worksheet
Set xRgUser = xWsh.UsedRange
Set xRg2 = Intersect(xRgUser, xRg2)
xCount = xRg1.Count
If (xCount > xRg2.Count) Then
xCount = xRg2.Count
End If
For xFNum = 1 To xCount
If (xRg1.Item(xFNum).Value = "") Then
If (xRg2.Item(xFNum).Value <> "") Then
xRg1.Item(xFNum).Value = xRg2.Item(xFNum).Value
End If
ElseIf (xRg2.Item(xFNum).Value = "") Then
If (xRg1.Item(xFNum).Value <> "") Then
xRg2.Item(xFNum).Value = xRg1.Item(xFNum).Value
End If
End If
Next
End Sub
I koden är A:A och B:B de två kolumnerna som kommer att slås samman, bara ändra dem efter behov.
3. Tryck sedan på F5 eller klicka Körning knappen, så kommer kolumn A att fyllas med värde i kolumn B om värdet är tomt i kolumn A.
2 Kombinera rader med samma ID
Om det finns en tabell med flera kolumner, innehåller en kolumn ID-värden som har dubbletter av objekt. Nu ger handledningen metoder för att kombinera raderna i tabellen baserat på samma ID och göra några beräkningar.
Här i den här delen ger den metoderna för att kombinera rader med samma ID och separerade med kommatecken enligt nedanstående skärmdump:
Här tillhandahålls en VBA-kod som kan hantera detta jobb
1. Tryck andra + F11 för att aktivera Microsoft Visual Basic för applikationer och klicka sedan på Insert > Modulerna för att skapa en ny tom modul.
2. Kopiera och klistra in koden nedan i den nya modulen.
VBA: Kombinera rader med samma ID
Sub Combine_Rows()
'UpdatebyExtendoffice20220506
Dim xRg As Range
Dim xRows As Long
Dim I As Long, J As Long, K As Long
On Error Resume Next
Set xRg = Application.InputBox("Select Range:", "Kutools For Excel", Selection.Address, , , , , 8)
Set xRg = Range(Intersect(xRg, ActiveSheet.UsedRange).Address)
If xRg Is Nothing Then Exit Sub
xRows = xRg.Rows.Count
For I = xRows To 2 Step -1
For J = 1 To I - 1
If xRg(I, 1).Value = xRg(J, 1).Value And J <> I Then
For K = 2 To xRg.Columns.Count
If xRg(J, K).Value <> "" Then
If xRg(I, K).Value = "" Then
xRg(I, K) = xRg(J, K).Text
Else
xRg(I, K) = xRg(I, K).Text & "," & xRg(J, K).Text 'here uses comma as separator, you can change it to others as you need
End If
End If
Next
xRg(J, 1).EntireRow.Delete
I = I - 1
J = J - 1
End If
Next
Next
ActiveSheet.UsedRange.Columns.AutoFit
End Sub
3. Tryck sedan på F5 eller klicka Körning knappen, så dyker en Kutools för Excel-dialogruta upp där du kan välja en tabell som måste kombineras rader med samma ID.
4. klick OK. Nu har den valda tabellen kombinerats rader baserat på samma ID.
2.12 Använda IF-funktionen för att lägga till hjälpkolumner
Om det bara finns två kolumner, och du vill kombinera raderna med samma ID, och en annan kolumnvärden separerade med kommatecken som skärmbilden nedan visar, kan IF-funktionen göra dig en tjänst.
1. Sortera ID från A till Ö. Välj ID-kolumnen, klicka Data > Sortera A till Z.
2. Sedan i Sortera varning dialogrutan, kontrollera Bygga ut välj alternativet, klicka Svart.
Nu har samma ID sorterats ihop.
3. I den intilliggande kolumnen använder du OM-funktionen så här:
=IF(A17=A18,C17&", "&B18,B18)
I formeln är A17 och A18 de två intilliggande cellerna i ID-kolumnen (A17 är rubriken i ID-kolumnen), B18 är motsvarande cell i cell A18. ", " indikerar att värdena ska separeras med kommatecken. du kan ändra referenserna och separatorn efter behov.
4. Tryck ange för att få det första resultatet, dra sedan handtaget för automatisk fyllning nedåt för att få alla resultat.
5. Gå till den intilliggande kolumnen, skriv formeln så här:
=OM(A18<>A19,"Sammanfogad","")
I formeln är A18 och A19 de två intilliggande cellerna i ID-kolumnen, om de intilliggande cellerna inte är lika, kommer den att återgå till "Sammanfogad", annars kommer den att returnera tomma.
6. Tryck ange för att få det första resultatet, dra sedan handtaget för automatisk fyllning nedåt för att få alla resultat.
7. Välj den sista formelkolumnen inklusive rubrik och klicka Data > Filter.
8. Klicka på Filter knapp och bock Sammanslagen kryssrutan i rullgardinsmenyn, klicka OK.
Nu har bara de sammanslagna raderna filtrerats bort, kopiera de filtrerade data och klistra in dem på en annan plats.
Mer information om IF-funktionen. besök: IF.
Om du har installerat Kutools för Excel i Excel, den Avancerade kombinera rader kan enkelt göra det här jobbet.
1. Välj tabellen och klicka sedan Kutools > Slå ihop och dela > Avancerade kombinera rader.
2. I Avancerade kombinera rader dialogrutan, gör så här:
1) Välj ID-kolumnen och ställ in den som Primärnyckel;
2) Välj den kolumn som du vill kombinera värdena med separator, klicka Kombinera och välj en separator.
3) klicka Ok.
Nu har raderna kombinerats med samma ID.
Funktionen Advanced Combine Rows kommer att bryta originaldata, spara data som en kopia innan du använder den.
För mer information om den här funktionen, besök Avancerade kombinera rader.
För mer information om Kutools för Excel, besök Kutools för Excel.
För en 30-dagars gratis provperiod av Kutools för Excel, vänligen ladda ner det nu.
Om du vill kombinera rader med samma ID och sedan summera värdena eller göra andra beräkningar som skärmbilden nedan visar, kan nedanstående metoder hjälpa dig.
2.21 Använda konsolideringsfunktionen
Om det bara finns två kolumner innehåller en kolumn texter (ID) och en annan innehåller värden som behöver beräknas, som summa, den inbyggda Excel-funktionen Konsolidera kan göra dig en tjänst.
1. Välj en cell där du vill placera det kombinerade resultatet och klicka sedan Data > Konsolidera.
2. I Konsolidera dialogruta, gör så här:
1) Välj Funktioner som du behöver;
2) Klicka på pilen för att välja tabellen;
3) Klicka Lägg till för att lägga till det valda intervallet till Alla referenser lista;
4) Markera kryssrutorna för Översta raden och Vänster kolumn;
5) Klicka OK.
Nu har tabellen summerats utifrån samma ID.
Här är en VBA som också kan kombinera rader med samma ID och sedan summera värden.
1. Tryck andra + F11 för att aktivera Microsoft Visual Basic för applikationer och klicka sedan på Insert > Modulerna för att skapa en ny tom modul.
2. I den nya modulen, kopiera och klistra in nedanstående VBA-kod i den.
VBA: Kombinera dubbletter av rader och summera
Sub CombineRows()
'Updateby Extendoffice
Dim WorkRng As Range
Dim Dic As Variant
Dim arr As Variant
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Set Dic = CreateObject("Scripting.Dictionary")
arr = WorkRng.Value
For i = 1 To UBound(arr, 1)
Dic(arr(i, 1)) = Dic(arr(i, 1)) + arr(i, 2)
Next
Application.ScreenUpdating = False
WorkRng.ClearContents
WorkRng.Range("A1").Resize(Dic.Count, 1) = Application.WorksheetFunction.Transpose(Dic.keys)
WorkRng.Range("B1").Resize(Dic.Count, 1) = Application.WorksheetFunction.Transpose(Dic.items)
Application.ScreenUpdating = True
End Sub
3. Tryck sedan på F5 eller klicka Körning knappen, så dyker en dialog upp för att välja den tabell du använder och klicka sedan OK.
Nu har det valda intervallet kombinerats med samma värden och summerats.
VBA kommer att bryta originaldata, spara data som en kopia innan du använder VBA.
2.23 Använda ett praktiskt verktyg – Advanced Combine Rows
Om det finns fler än två kolumner i tabellen som du vill kombinera och göra beräkningar, finns det till exempel tre kolumner, den första innehåller dubbla produktnamn som behövde kombineras, den andra innehåller butiksnamn som behövde för att kombineras och separeras med ett kommatecken, den sista kolumnen innehåller siffror som behövde summeras baserat på dubblettraderna i den första kolumnen, som nedan skärmdump visas, kan Kutools för Excels avancerade kombinera rader hjälpa dig.
1. Välj tabellen och klicka sedan Kutools > Slå ihop och dela > Avancerade kombinera rader.
2. I Avancerade kombinera rader dialogrutan, gör så här:
1) Välj ID-kolumnen och ställ in den som Primärnyckel;
2) Välj den kolumn som du vill kombinera värdena med en avgränsare, klicka Kombinera och välj en separator.
3) Välj den kolumn som du vill göra beräkningen på, klicka Beräkna och välj en beräkning.
4) klicka Ok.
Nu har raderna kombinerats med samma rader och beräknats.
Funktionen Advanced Combine Rows kommer att bryta originaldata, spara data som en kopia innan du använder den.
För mer information om den här funktionen, besök Avancerade kombinera rader.
För mer information om Kutools för Excel, besök Kutools för Excel.
För en 30-dagars gratis provperiod av Kutools för Excel, vänligen ladda ner det nu.
Om det finns en tabell med flera kolumner, innehåller en kolumn några dubbletter av värden, nu är jobbet att kombinera de intilliggande raderna i denna kolumn med samma värden som skärmbilden nedan visar. Hur kan du lösa det?
I Excel finns det ingen inbyggd funktion som direkt kan lösa detta jobb, men här tillhandahåller en VBA som kan hantera det.
1. Tryck andra + F11 för att aktivera Microsoft Visual Basic för applikationer och klicka sedan på Insert > Modulerna för att skapa en ny tom modul.
2. I den nya modulen, kopiera och klistra in nedanstående VBA-kod i den.
VBA: Kombinera intilliggande rader med samma värde
Sub MergeSameCell()
'Updateby Extendoffice
Dim Rng As Range, xCell As Range
Dim xRows As Integer
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Application.ScreenUpdating = False
Application.DisplayAlerts = False
xRows = WorkRng.Rows.Count
For Each Rng In WorkRng.Columns
For i = 1 To xRows - 1
For j = i + 1 To xRows
If Rng.Cells(i, 1).Value <> Rng.Cells(j, 1).Value Then
Exit For
End If
Next
WorkRng.Parent.Range(Rng.Cells(i, 1), Rng.Cells(j - 1, 1)).Merge
i = j - 1
Next
Next
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub
3. Tryck sedan på F5 eller klicka Körning knappen för att aktivera denna VBA, då dyker en dialog upp för att välja den tabell som du använder och sedan klicka OK.
Nu kombineras de intilliggande raderna med samma värden i den första kolumnen i det valda intervallet.
VBA kommer att bryta originaldata, spara data som en kopia innan du använder VBA. Och denna VBA kommer att slå samman samma värden i den första kolumnen i den valda tabellen.
2.32 Använda ett praktiskt verktyg – Slå samman samma celler
Om du har Kutools för Excel installerat i Excel, den Slå samman samma celler funktion i Kutools för Excel kan lösa detta jobb i ett steg.
Välj den kolumn som du vill kombinera samma värden och klicka sedan på Kutools > Slå ihop och dela > Slå samman samma celler.
Nu har de intilliggande cellerna med samma värden slagits samman.
I Om du vill ta bort de sammanslagna cellerna och fylla tillbaka värdena kan du använda Ta bort sammanslagningen av celler och fyll värden särdrag.
För mer information om den här funktionen, besök Slå samman samma celler.
För mer information om den här funktionen, besök Ta bort cell.
För mer information om Kutools för Excel, besök Kutools för Excel.
För 30-dagars gratis provversion av Kutools för Excel, vänligen ladda ner nu.
3 Kombinera celler
För att kombinera ett intervall med flera rader och kolumner till en enda cell, tillhandahålls här fyra metoder.
Exempel: Kombinera område A1:C3
I Excel används vanligtvis et-teckenet & för att sammanfoga texter.
Välj en cell som du vill placera det kombinerade resultatet och skriv sedan en formel så här:
=A1&", "&B1&", "&C1&", "&A2&", " &B2&", "&C2&", "&A3&", "&B3&", "&C3
I formeln, & används för att sammanfoga texterna, är ", " avgränsaren (komma + mellanslag) som skiljer de två texterna i resultatcellen, om du vill använda andra avgränsare, skriv bara en avgränsare omgiven av dubbla citattecken.
Klicka ange nyckeln för att få det kombinerade resultatet.
3.12 Använda CONCATENATE-funktionen (Excel 2016 eller tidigare versioner)
Om du använder Excel 2016 eller tidigare versioner kan funktionen CONCATENATE hjälpa dig.
Syntax om CONCATENATE |
CONCATENATE (text1,[text2],…) |
För mer information om CONCATENATE-funktionen, besök: HOPLÄNKA
Välj en cell som du vill placera det kombinerade resultatet och skriv sedan en formel så här:
=KONKATERA(A1,", ",B1,", ",C1,", ",A2,", ",B2,", ",C2,", ",A3,", ",B3,"", " ,C3)
I formeln är A1, B1…,C3 de texter du vill kombinera. ", " är avgränsaren (komma + mellanslag) som skiljer de två texterna i resultatcellen, om du vill använda andra avgränsare, skriv bara en avgränsare omsluten av dubbla citattecken.
Tryck sedan på ange nyckeln för att få det kombinerade resultatet.
3. 13 Använda CONCAT-funktionen eller TEXTJOIN-funktionen (Excel 2019 eller Excel 365)
Om du använder Excel 2019 eller Excel 365 kan CONCAT-funktionen och TEXTJOIN-funktionen vara det bättre valet.
Syntax om CONCAT |
CONCAT (text1,[text2],…) |
För mer information om CONCAT-funktionen, besök: KONCAT.
Användningen av CONCAT-funktionen är densamma som CONCATENATE-funktionen, för att kombinera förnamn och efternamn som i två kolumner separat i en kolumn, används formeln så här:
=CONCAT(A1,", ",B1,", ",C1,", ",A2,", ",B2,", ",C2,", ",A3,", ",B3,"", " ,C3)
I formeln är A1, B1…,C3 de texter du vill kombinera. ", " är avgränsaren (komma + mellanslag) som skiljer de två texterna i resultatcellen, om du vill använda andra avgränsare, skriv bara en avgränsare omsluten av dubbla citattecken.
Tryck sedan på ange nyckeln för att få det kombinerade resultatet.
Syntax om TEXTJOIN |
TEXTJOIN (delimiter, ignore_empty, text1, [text2], ...) |
För mer information om TEXTJOIN-funktionen, besök: TEXTGÅ MED.
För att kombinera kolumner eller rader med TEXTJOIN:
=TEXTJOIN(", ",TRUE,A1:C3)
I formeln är A1:C3 ett kontinuerligt område som måste kombineras. ", " är avgränsaren (komma + mellanslag) som skiljer de två texterna i resultatcellen, om du vill använda andra avgränsare, skriv bara avgränsaren omgiven av dubbla citattecken "". Den logiska texten "TRUE" indikerar att du ska ignorera tomma celler vid kombination, om du vill kombinera med tomrum, ersätt TRUE med FALSE.
Tryck sedan på ange nyckeln för att få det kombinerade resultatet.
Om du vill använda radbrytning som avgränsare med CHAR(10) i formeln, till exempel =TEXTJOIN(CHAR(10),TRUE,A1:C3), formatera sedan resultatcellen som Wrap Text.
3.14 Använda Kombinera kolumner/rader/celler till en cell utan att förlora data
Om du har Kutools för Excel installerat i Excel, Kombinera rader, kolumner eller celler utan att förlora data funktion kan snabbt hantera detta jobb.
1. Välj intervallet av celler som du vill kombinera till en cell och klicka sedan Kutools > Slå ihop och dela > Kombinera rader, kolumner eller celler utan att förlora data.
2. Kontrollera i poppdialogen Kombinera i en enda cell och ange en separator som du behöver och klicka sedan Ok.
Nu slås cellerna samman till en cell med en specifik avgränsare. Om cellinnehållet är för många för att visas i den sammanslagna cellen kan du klicka Radbryt text under Home fliken för att visa dem.
För mer information om den här funktionen, besök Kombinera kolumner, rader, celler utan att förlora data.
För mer information om Kutools för Excel, besök Kutools för Excel.
För en 30-dagars gratis provperiod av Kutools för Excel, vänligen ladda ner det nu.
Transponera celler till en enda kolumn |
Transponera celler till en enda rad |
3.21 Namnge intervallet och använd INDEX-funktionen (endast för en enda kolumn)
Om du vill överföra cellområdet till en enda kolumn kan du namnge området och sedan använda INDEX-funktionen.
1. Välj cellintervallet, högerklicka för att aktivera snabbmenyn och klicka Definiera namn.
2. I popping Nytt namn skriv ett namn i dialogrutan Namn textruta, klicka OK.
3. Efter att ha namngett området, välj sedan en cell som placerar de transponerade data, använd INDEX-funktionen så här:
=INDEX(MyData,1+INT((ROW(A1)-1)/COLUMNS(MyData)),MOD(ROW(A1)-1+COLUMNS(MyData),COLUMNS(MyData))+1)
För mer information om INDEX-funktionen, besök här..
4. Tryck ange och dra sedan autofyll-handtaget nedåt för att fylla denna formel tills en #REF! felvärdet visas.
5. Ta bort felvärdet, sedan har cellintervallet kombinerats till en kolumn.
3.22 VBA (endast för en kolumn)
För att kombinera celler till en enda kolumn, här är en VBA som också kan fungera.
1. Tryck andra + F11 för att aktivera Microsoft Visual Basic för applikationer och klicka sedan på Insert > Modulerna för att skapa en ny tom modul.
2. Kopiera och klistra in nedanstående VBA-kod till den tomma modulen.
VBA: Konvertera intervall till en kolumn
Sub ConvertRangeToColumn()
'UpdatebyExtendoffice
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
3. Tryck sedan på F5 eller klicka Körning knappen, en dialogruta dyker upp för att välja ett cellintervall, klicka OK.
4. En annan dialogruta dyker upp för att välja en cell för att placera resultatet, klicka OK.
3.23 Använda ett praktiskt verktyg – Transform Range
Om du vill kombinera celler till en rad finns det ingen inbyggd funktion i Excel som stödjer det. Men om du har Kutools för Excel installerat, dess Transformera intervall funktionen stöder konvertering av ett intervall till en enskild kolumn eller en rad, stöder även konvertering av en rad eller en kolumn till ett intervall.
1. välj cellintervallet och klicka Kutools > Mätområde > Transformera intervall.
2. I Transformera intervall dialogrutan, kontrollera Område till enstaka kolumn or Räckvidd till enstaka rad alternativ som du behöver. Klick OK.
3. En dialogruta dyker upp för att välja en cell för att placera resultatet, klicka OK.
Nu har cellintervallet konverterats till en rad eller en kolumn.
För mer information om den här funktionen, besök Transformera intervall.
För mer information om Kutools för Excel, besök Kutools för Excel.
För en 30-dagars gratis provperiod av Kutools för Excel, vänligen ladda ner det nu.
Om det finns några dubbletter i en tabell med flera kolumner, hur kan du stapla kolumnerna i en kolumn utan dubbletterna som skärmbilden nedan visar?
I den här delen ger den tre olika metoder för att hantera detta jobb.
3.31 Kopiera och klistra in och ta bort dubbletter
I Excel är den allmänna metoden för att lösa det här jobbet att kopiera och klistra in kolumnerna en efter en och sedan ta bort dubblettvärdena.
1. Välj den första kolumnen och tryck på ctrl + C för att kopiera den, välj sedan en destinationscell och tryck på ctrl + V nycklar.
2. Upprepa sedan steg 1 för att kopiera andra kolumner och klistra in dem under den första kolumnen.
3. Välj sedan den staplade kolumnen, klicka Data > Ta bort dubbletter, sedan i Ta bort dubbletter dialogrutan, kontrollera kolumnnamnet, klicka OK.
4. Nu visas en dialogruta för att påminna dig om att dubblettvärdena har tagits bort. Klick OK för att stänga den, och den staplade kolumnen behåller bara de unika värdena.
Om det finns hundratals kolumner är det tidskrävande att kopiera och klistra in en efter en. Men om du har Kutools för Excel installerat i Excel, den Transformera intervall funktionen kan snabbt konvertera intervallet till en kolumn och sedan tillämpa Ta bort dubbletter funktion i Excel.
Välj kolumnintervallet och klicka Kutools > Mätområde > Transformera intervall.
Kontrollera sedan Område till enstaka kolumn alternativet och klicka på OK för att välja en cell för att placera den staplade kolumnen.
Och använd sedan Ta bort dubbletter för att ta bort dubblettvärdena.
För mer information om den här funktionen, besök Transformera intervall.
För mer information om Kutools för Excel, besök Kutools för Excel.
För en 30-dagars gratis provperiod av Kutools för Excel, vänligen ladda ner det nu.
Dessutom, här är en VBA-kod som kan lösa det här jobbet.
1. Tryck andra + F11 för att aktivera Microsoft Visual Basic för applikationer och klicka sedan på Insert > Modulerna för att skapa en ny tom modul.
2. Kopiera och klistra in koden nedan i den nya modulen.
VBA: Stapla kolumner i en utan dubbletter
Sub FindUniques()
'UpdatebyExtendoffice
Dim rng As Range
Dim InputRng As Range, OutRng As Range
xTitleId = "KutoolsforExcel"
Set InputRng = Application.Selection
Set InputRng = Application.InputBox("Range :", xTitleId, InputRng.Address, Type:=8)
Set OutRng = Application.InputBox("Out put to (single cell):", xTitleId, Type:=8)
Set dic = CreateObject("Scripting.Dictionary")
For j = 1 To InputRng.Columns.Count
For i = 1 To InputRng.Rows.Count
xValue = InputRng.Cells(i, j).Value
If xValue <> "" And Not dic.Exists(xValue) Then
OutRng.Value = xValue
dic(xValue) = ""
Set OutRng = OutRng.Offset(1, 0)
End If
Next
Next
End Sub
3. Tryck sedan på F5 eller klicka Körning knappen, sedan dyker en dialog upp för att välja de kolumner som behövs. Klicka på OK för att staplas.
4. I den andra popup-dialogrutan väljer du sedan en destinationscell för att placera den staplade kolumnen och klickar på OK.
Nu har kolumnerna staplats i en kolumn med endast unika värden.
Om det finns två kolumner, formateras en som en speciell formatering, till exempel en anpassad DateTimemm/dd/yyyy, för att kombinera dessa två kolumner till en med de vanliga metoderna, kommer den anpassade formateringen att tas bort som skärmbilden nedan visar:
Nu i den här delen kommer det att ge några sätt att kombinera celler och behålla formateringen.
3.41 Inbädda TEXT-funktion i formel
TEXT-funktionen används för att konvertera ett tal till text i en specifik formatering. Här kan vi använda den för att först konvertera cellen (innehåller ett tal) till en formatering och sedan kombinera den med andra celler genom att använda "&", CONCATENATE-funktionen, CONCAT-funktionen eller TEXTJOIN-funktionen.
För mer information om att generellt kombinera celler till en, gå tillbaka till 1.1.
Syntax om TEXT-funktionen |
TEXT (value, format_text) |
För mer information om TEXT-funktionen, besök TEXT funktion.
Här tar inbäddningsfunktionen TEXT i CONCAT-funktionen som instans.
Kopiera och klistra in formeln nedan i en cell där du vill att det kombinerade resultatet ska placeras:
=CONCAT(TEXT(A2,"mm/dd/yyyy hh:mm")," ",B2)
I formeln är A2 cellen som du vill behålla sin formatering, "mm/dd/åååå hh:mm" är formateringen du använder, B2 är den andra cellen som används för att kombinera. " " indikerar att värdena separeras med mellanslag. du kan ändra referenser, formatering och separator efter behov.
Klicka ange och dra autofyllhandtaget nedåt för att fylla cellerna med den här formeln.
1. Välj tabellen som du vill kombinera celler till en och tryck på ctrl + C för att kopiera dem.
2. Öppna ett tomrum ord dokument, tryck ctrl + V för att placera dem, klicka sedan på tabellen i dokumentet, nu visas en kryssikon uppe till höger i tabellen.
3. Klicka på Layout fliken och klicka sedan på Konvertera till text i Data grupp, i poppingen Konvertera tabell till text dialogrutan, ange avgränsare för kolumnerna. Klick OK.
Nu har innehållet i tabellen i Word konverterats till texter.
4. Välj de konverterade texterna och tryck ctrl + C för att kopiera dem och gå tillbaka till Excel och markera en tom cell, tryck på ctrl + V för att klistra in det kombinerade resultatet.
3.43 Använda ett praktiskt verktyg – Kombinera utan att förlora data
Det mest effektiva sättet måste vara att använda Kutools för ExcelÄr Kombinera rader, kolumner eller celler utan att förlora data funktion, som bara behöver markera Använd formaterade värden kryssrutan medan du använder funktionen, kommer det kombinerade resultatet att behålla dataformateringen.
1. Välj tabellen inklusive cellerna som placerar resultatet, klicka Kutools > Slå ihop och dela > Kombinera rader, kolumner eller celler utan att förlora data.
2. I den öppna dialogrutan, ange tröskan efter behov och avmarkera Använd formaterade värden kryssrutan (som standard är det här alternativet markerat). Klick Ok.
Nu har data kombinerats och behåll formateringen.
För mer information om den här funktionen, besök Kombinera kolumner, rader, celler utan att förlora data.
För mer information om Kutools för Excel, besök Kutools för Excel.
För en {module745}-dagars gratis provperiod av Kutools för Excel, vänligen ladda ner det nu.
Om vi antar att det finns en tabell som innehåller år, månader och dagar i separerade kolumner, är jobbet att kombinera kolumnerna och skapa ett datum enligt skärmbilden nedan:
DATUM-funktionen används för att skapa ett datum med år, månad och dag.
Syntax om DATE-funktionen |
DATE( year, month, day ) |
För mer information om DATE-funktionen, besök DATE-funktionen.
Kopiera och klistra in formeln nedan i en cell som kommer att placera datumet:
=DATE(A2,B2,C2)
I formeln är A2, B2 och C2 de celler som innehåller år, månad och dag.
Klicka ange för att få det första datumet, dra sedan handtaget för automatisk fyllning nedåt för att få alla datum.
Fler Excel-tutorials:
Kombinera flera arbetsböcker/arbetsblad till ett
Denna handledning listar nästan alla kombinationsscenarier du kan möta och ger dig relativt professionella lösningar.
Dela text-, nummer- och datumceller (dela upp i flera kolumner)
Denna handledning är uppdelad i tre delar: delade textceller, delade nummerceller och delade datumceller. Varje del ger olika exempel som hjälper dig att veta hur du ska hantera klyvningsjobbet när du stöter på samma problem.
Kombinera innehållet i flera celler utan att förlora data i Excel
Denna handledning begränsar extraheringen till en specifik position i en cell och samlar olika metoder för att hjälpa till att extrahera text eller siffror från en cell efter specifik position i Excel.
Jämför två kolumner för matchningar och skillnader i Excel
Här täcker den här artikeln de flesta möjliga scenarier av de två jämförande kolumnerna du kan möta, och hoppas att det kan hjälpa dig.
De bästa Office-produktivitetsverktygen
Kutools för Excel löser de flesta av dina problem och ökar din produktivitet med 80%
- Super Formula Bar (enkelt redigera flera rader med text och formel); Läslayout (enkelt läsa och redigera ett stort antal celler); Klistra in i filtrerat intervall...
- Sammanfoga celler / rader / kolumner och förvaring av data; Delat cellinnehåll; Kombinera duplicerade rader och summa / genomsnitt... Förhindra duplicerade celler; Jämför intervall...
- Välj Duplicera eller Unikt Rader; Välj tomma rader (alla celler är tomma); Super Find och Fuzzy Find i många arbetsböcker; Slumpmässigt val ...
- Exakt kopia Flera celler utan att ändra formelreferens; Skapa referenser automatiskt till flera ark; Sätt in kulor, Kryssrutor och mer ...
- Favorit och sätt snabbt in formler, Intervall, diagram och bilder; Kryptera celler med lösenord; Skapa e-postlista och skicka e-post ...
- Extrahera text, Lägg till text, ta bort efter position, Ta bort mellanslag; Skapa och skriva ut personsökningstalsatser; Konvertera mellan celler innehåll och kommentarer...
- Superfilter (spara och tillämpa filterscheman på andra ark); Avancerad sortering efter månad / vecka / dag, frekvens och mer; Specialfilter av fet, kursiv ...
- Kombinera arbetsböcker och arbetsblad; Sammanfoga tabeller baserat på nyckelkolumner; Dela data i flera ark; Batchkonvertera xls, xlsx och PDF...
- Gruppering av pivottabell efter veckonummer, veckodagen och mer ... Visa olåsta, låsta celler av olika färger; Markera celler som har formel / namn...
- 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!