Přejít k hlavnímu obsahu

Rozdělit textové řetězce oddělovačem do více řádků – 3 rychlé triky

Autor: Xiaoyang Naposledy změněno: 2025-03-06

Normálně můžete použít funkci Text to Column k rozdělení obsahu buňky do více sloupců pomocí určitého oddělovače, jako je čárka, tečka, středník, lomítko atd. Někdy však může být nutné rozdělit obsah buňky s oddělovači do více řádků a zopakujte data z dalších sloupců, jak je uvedeno níže. Máte nějaké dobré způsoby, jak se s tímto úkolem vypořádat v aplikaci Excel? Tento tutoriál představí některé efektivní metody k dokončení této úlohy v Excelu.

rozdělit text do více řádků

Video: Rozdělte textové řetězce pomocí oddělovače do více řádků

 


Metoda A: Rozdělte text s oddělovači do více řádků pomocí kódu VBA

V této části představím dva kódy VBA, které pomohou rozdělit obsah buněk, které jsou odděleny určitým oddělovačem.

Rozdělit text oddělený čárkou, mezerou, středníkem atd.

Chcete-li rozdělit textové řetězce, které jsou odděleny nějakým normálním oddělovačem, jako je čárka, mezera, středník, lomítko atd., může vám pomoci následující kód. Postupujte prosím podle následujících kroků:

 Pozor: Tento kód není podpora Zrušit, před použitím tohoto kódu si raději zálohujte data.

Krok 1: Otevřete editor modulu VBA a zkopírujte kód

1. Aktivujte list, který chcete použít. A pak stiskněte Alt + F11 klávesy pro otevření Microsoft Visual Basic pro aplikace okno.

2. V otevřeném okně klikněte na Vložit > Modul k vytvoření nového prázdného modulu.

3. Poté zkopírujte a vložte níže uvedený kód do prázdného modulu.

Kód VBA: Rozdělte text konkrétním oddělovačem (čárka, tečka, mezera atd.)

Sub SplitTextIntoRows()
'UpdatebyExtendoffice
    Dim xSRg, xIptRg, xCrRg, xRg As Range
    Dim xSplitChar As String
    Dim xArr As Variant
    Dim xFNum, xFFNum, xRow, xColumn, xNum As Integer
    Dim xWSh As Worksheet
    Set xSRg = Application.InputBox("Select a range:", "Kutools for Excel", , , , , , 8)
    If xSRg Is Nothing Then Exit Sub
    xSplitChar = Application.InputBox("Type delimiter:", "Kutools for Excel", , , , , , 2)
    If xSplitChar = "" Then Exit Sub
    Application.ScreenUpdating = False
    xRow = xSRg.Row
    xColumn = xSRg.Column
    Set xWSh = xSRg.Worksheet
    For xFNum = xSRg.Rows.Count To 1 Step -1
        Set xRg = xWSh.Cells.Item(xRow + xFNum - 1, xColumn)
        xArr = Split(xRg, xSplitChar)
        xIndex = UBound(xArr)
        For xFFNum = LBound(xArr) To UBound(xArr)
            xRg.EntireRow.Copy
            xRg.Offset(1, 0).EntireRow.Insert Shift:=xlShiftDown
            xRg.Worksheet.Cells(xRow + xFNum, xColumn) = xArr(xIndex)
            xIndex = xIndex - 1
        Next
        xRg.EntireRow.Delete
    Next
    Application.CutCopyMode = False
    Application.ScreenUpdating = True
End Sub   

Krok 2: Spuštěním kódu získáte výsledek

1. Po vložení kódu stiskněte F5 klíč ke spuštění tohoto kódu. Poté se zobrazí okno s výzvou, které vám připomene, že jste vybrali buňky obsahující text s oddělovači, který chcete rozdělit, viz snímek obrazovky:

vba kód pro výběr buněk obsahujících text s oddělovači

2. Poté klikněte na OK, objeví se další okno s výzvou, které vám připomene zadat oddělovač, podle kterého chcete data rozdělit. Zde napíšu čárku a mezeru (, ), viz snímek obrazovky:

vba kódu pro zadání oddělovače rozdělení dat na základě

3. Nakonec klikněte na OK knoflík. Nyní uvidíte, že vybrané textové řetězce jsou rozděleny do řádků na základě čárky a data ostatních relativních sloupců se opakují, jak je uvedeno níže:

vybrané textové řetězce jsou rozděleny do řádků

Rozdělit text oddělený zalomením řádku

Pokud je obsah vašich buněk oddělen zalomením řádků, chcete-li je rozdělit do více řádků, zde je další kód VBA, který vám může pomoci.

 Pozor: Tento kód není podpora Zrušit před použitím tohoto kódu si raději zálohujte data.

Krok 1: Otevřete editor modulu VBA a zkopírujte kód

1. lis Alt + F11 klávesy pro otevření Microsoft Visual Basic pro aplikace okno.

2. V otevřeném okně klikněte na Vložit > Modul k vytvoření nového prázdného modulu.

3. Poté zkopírujte a vložte níže uvedený kód do prázdného modulu.

Kód VBA: Rozdělte text zalomením řádku

Sub SplitTextIntoRows()
'UpdatebyExtendoffice
    Dim xSRg, xIptRg, xCrRg, xRg As Range
    Dim xSplitChar As String
    Dim xArr As Variant
    Dim xFNum, xFFNum, xRow, xColumn, xNum As Integer
    Dim xWSh As Worksheet
    Set xSRg = Application.InputBox("Select a range:", "Kutools for Excel", , , , , , 8)
    If xSRg Is Nothing Then Exit Sub
    xSplitChar = Chr(10)
    Application.ScreenUpdating = False
    xRow = xSRg.Row
    xColumn = xSRg.Column
    Set xWSh = xSRg.Worksheet
    For xFNum = xSRg.Rows.Count To 1 Step -1
        Set xRg = xWSh.Cells.Item(xRow + xFNum - 1, xColumn)
        xArr = Split(xRg, xSplitChar)
        xIndex = UBound(xArr)
        For xFFNum = LBound(xArr) To UBound(xArr)
            xRg.EntireRow.Copy
            xRg.Offset(1, 0).EntireRow.Insert Shift:=xlShiftDown
            xRg.Worksheet.Cells(xRow + xFNum, xColumn) = xArr(xIndex)
            xIndex = xIndex - 1
        Next
        xRg.EntireRow.Delete
    Next
    Application.CutCopyMode = False
    Application.ScreenUpdating = True
End Sub 

Krok 2: Spuštěním kódu získáte výsledek

1. Po vložení kódu stiskněte F5 klíč ke spuštění tohoto kódu. Ve vyskakovacím poli vyberte buňky, které chcete rozdělit, viz snímek obrazovky:

vba kód pro výběr rozsahu k rozdělení

2. Poté klikněte na OK tlačítko, data ve vybraných buňkách jsou rozdělena do řádků, jak je znázorněno na obrázku níže:

data ve vybraných buňkách jsou rozdělena do řádků

Metoda B: 10s pro rozdělení textu s oddělovači do více řádků pomocí Kutools pro Excel

Pokud jste nainstalovali Kutools pro Excel, S jeho Rozdělit data do řádků můžete rozdělit textové řetězce do více řádků libovolným oddělovačem, který jste zadali. Proveďte prosím následující kroky:

Kutools pro Excel nabízí více než 300 pokročilých funkcí pro zefektivnění složitých úkolů, zvýšení kreativity a efektivity. Vylepšené o schopnosti AI, Kutools automatizuje úkoly s přesností, takže správa dat je snadná. Podrobné informace o Kutools pro Excel...         Zkušební verze zdarma...

Krok 1: Vyberte funkci Rozdělit data do řádků

klikněte Kutools > Sloučit a rozdělit > Rozdělit data do řádků, viz screenshot:

Klikněte na Kutools > Sloučit a rozdělit > Rozdělit data na řádky

Krok 2: Zadejte datové buňky a oddělovač pro rozdělení

Ve vyskakovacím dialogovém okně použijte následující možnosti:

  • 1). Vyberte seznam buněk, které chcete oddělit Rozsah (jeden sloupec) Textové pole;
  • 2). Poté vyberte oddělovač, který odděluje vaše data, zde vyberu já Ostatní a do textového pole zadejte čárku a mezeru (, );
  • 3). Konečně klikni OK .
V dialogovém okně zadejte datové buňky a oddělovač pro rozdělení

Nyní byly vybrané buňky s oddělenými textovými řetězci převedeny na více řádků na základě konkrétního oddělovače, viz snímek obrazovky:

vybrané buňky se převedou na více řádků

 Tipy: Pokud chcete obnovit původní data, stačí stisknout Ctrl + Z pro zrušení.

Snadné použití? Máte zájem o tuto funkci, prosím kliknutím stáhněte a získejte bezplatnou zkušební verzi na 30 dní.


Metoda C: Rozdělit text s oddělovači do více řádků podle Power Query

Pokud používáte Office 365 nebo Excel 2016 a novější verze, Power Query je výkonný nástroj, který vám pomůže rozdělit text s oddělovači do více řádků nebo sloupců. Je to užitečné, pokud chcete, aby se rozdělená data obnovila, když se změní vaše původní data. Chcete-li to dokončit, proveďte prosím následující kroky:

Krok 1: Získejte datovou tabulku do Power Query

1. Vyberte rozsah dat, který chcete použít, a klikněte Data > Z tabulky, viz screenshot:

 Tipy: V Excelu 2019 a Office 365 klikněte Data > Z tabulky/rozsahu.

klikněte na Data > Z tabulky

2. Ve vyskakovacím okně Vytvořit tabulku , klepněte na tlačítko OK OK tlačítko pro vytvoření tabulky, viz snímek obrazovky:

kliknutím na tlačítko OK vytvořte tabulku

3. Nyní Power Query editor zobrazí se okno s daty, viz snímek obrazovky:

ο Power Query Zobrazí se okno editoru s daty

Krok 2: Proveďte transformace v Power Query

1. Vyberte sloupec, který chcete rozdělit. A pak klikněte Domů > Rozdělit sloupec > Oddělovačem, viz screenshot:

klikněte na Domů > Rozdělit sloupec > Podle oddělovače

2. V Rozdělit sloupec oddělovačem dialogové okno:

Chcete-li rozdělit textové řetězce čárkou, mezerou, středníkem atd., postupujte takto:

  • 1). Vyberte oddělovač, kterým jsou vaše data oddělena od Vyberte nebo zadejte oddělovač rozbalovací seznam;
  • 2). Vybrat Každý výskyt oddělovače z Rozdělit v sekce;
  • 3). Poté klikněte Pokročilé volby rozbalte sekci a vyberte Řádky pod Rozdělit na;
  • 4). Konečně klikni OK zavřete toto dialogové okno.
zadejte možnosti v dialogovém okně pro rozdělení textu čárkou, mezerou, středníkem atd

Chcete-li rozdělit textové řetězce do více řádků zalomením odkazu, postupujte takto:

  • 1). Vybrat Zvyk z Vyberte nebo zadejte oddělovač rozbalovací seznam;
  • 2). z Vložte speciální znaky rozbalte, klikněte Line Feeda postavy #(lf) bude vložen do textového pole pod Zvyk automaticky;
  • 3). Vybrat Každý výskyt oddělovače z úseku Split at;
  • 4). Poté klikněte Pokročilé volby rozbalte sekci a vyberte Řádky pod Rozdělit na;
  • 5). Konečně klikni OK zavřete toto dialogové okno.
určete možnosti v dialogovém okně pro rozdělení textu podle zalomení řádku

3. Nyní byla vybraná data rozdělena do několika řádků, jak je znázorněno na obrázku níže:

vybraná data byla rozdělena do více řádků

Krok 3: Výstup Power Query do excelové tabulky

1. Poté byste měli data vypsat do pracovního listu. prosím klikněte Domů > Zavřít a načíst > Zavřít a načíst / Zavřít a načíst do, (zde kliknu Zavřít a načíst), viz screenshot:

kliknutím na Home > Close & Load načtěte data

 Tipy: Klepněte na tlačítko Zavřít a načíst vypíše data do nového listu; Klikněte Zavřít a načíst do možnost, data budou vydána na jakýkoli jiný list, který potřebujete.

2. Nakonec se data načtou do nového listu, viz snímek obrazovky:

data se načtou do nového listu

 Tipy: Pokud potřebujete často aktualizovat svá data v původní tabulce, nebojte se, stačí kliknout pravým tlačítkem na výsledkovou tabulku a kliknout Obnovit abyste získali nový výsledek dynamicky.


Související články:

  • Rozdělit hodnoty buněk do více sloupců
  • Když v aplikaci Excel chcete rozdělit seznam hodnot buněk do více sloupců pomocí určitých oddělovačů, jako je čárka, mezera, tečka, nový řádek, atd., obvykle vám vestavěná funkce Text do sloupců může pomoci dokončit tento krok úlohy. za krokem. V tomto článku budu mluvit o některých dobrých tricích, jak snadno a rychle rozdělit hodnoty buněk do více sloupců nebo řádků.
  • Rozdělte buňku do více řádků nebo sloupců
  • Předpokládejme, že máte jednu buňku, která obsahuje více obsahů oddělených konkrétním znakem, například středníkem, a poté chcete tuto dlouhou buňku rozdělit na více řádků nebo sloupců založených na středníku, v tomto případě máte nějaké rychlé způsoby vyřešit v aplikaci Excel?
  • Rozdělit textový řetězec podle velikosti písmen
  • V aplikaci Excel obvykle rozdělujeme text podle pevné šířky nebo oddělovače pomocí funkce Text na sloupce, ale zkusili jste někdy rozdělit text na velká a malá? Například máte seznam dat a musíte je rozdělit do dvou sloupců na základě případu: jeden sloupec obsahuje řetězec malých písmen a druhý obsahuje řetězec velkých písmen, jak je znázorněno níže. Funkce Text na sloupce tuto operaci nepodporuje, mohu však v aplikaci Excel zavést triky pro rychlé rozdělení textového řetězce případ od případu.
  • Rozdělte číslo na jednotlivé číslice
  • Předpokládejme, že potřebujete rozdělit nebo rozdělit číslo na jednotlivé číslice, jak je ukázáno na následujícím obrázku obrazovky, co můžete udělat, abyste toho dosáhli? Tento článek vám poskytne dvě metody.