Vai al contenuto principale

Dividi le stringhe di testo per delimitatore in più righe: 3 trucchi rapidi

Normalmente, puoi utilizzare la funzione Testo in colonna per dividere il contenuto della cella in più colonne in base a un delimitatore specifico, come virgola, punto, punto e virgola, barra, ecc. Ma, a volte, potresti dover dividere il contenuto della cella delimitato in più righe e ripetere i dati da altre colonne come mostrato nell'immagine sottostante. Hai qualche buon modo per gestire questa attività in Excel? Questo tutorial introdurrà alcuni metodi efficaci per completare questo lavoro in Excel.


Video: dividi le stringhe di testo per delimitatore in più righe


Metodo A: dividere il testo delimitato in più righe dal codice VBA

In questa sezione, introdurrò due codici VBA per aiutare a dividere i contenuti delle celle che sono separati da un certo delimitatore.

Suddividi il testo separato da virgola, spazio, punto e virgola, ecc.

Per dividere le stringhe di testo che sono separate da un normale delimitatore, come virgola, spazio, punto e virgola, barra, ecc., il seguente codice può farti un favore. Si prega di seguire i passaggi seguenti:

 Note:: Questo codice non supporto Disfare, è meglio eseguire il backup dei dati prima di applicare questo codice.

Passaggio 1: apri l'editor del modulo VBA e copia il codice

1. Attiva il foglio che desideri utilizzare. E poi, premi Alt + F11 chiavi per aprire il Microsoft Visual Basic, Applications Edition finestra.

2. Nella finestra aperta, fare clic su inserire > Moduli per creare un nuovo modulo vuoto.

3. Quindi, copia e incolla il codice seguente nel modulo vuoto.

Codice VBA: dividi il testo per delimitatore specifico (virgola, punto, spazio, ecc.)

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   

Passaggio 2: eseguire il codice per ottenere il risultato

1. Dopo aver incollato il codice, premere F5 chiave per eseguire questo codice. Quindi, verrà visualizzata una finestra di messaggio per ricordarti di selezionare le celle che contengono il testo delimitato che desideri dividere, vedi screenshot:

2. Quindi fare clic su OK, viene visualizzata un'altra finestra di messaggio per ricordarti di digitare il separatore in base al quale desideri suddividere i dati. Qui, digito una virgola e uno spazio (, ), vedi screenshot:

3. Infine, fare clic su OK pulsante. Ora, vedrai le stringhe di testo selezionate suddivise in righe in base alla virgola e altri dati relativi alle colonne vengono ripetuti come mostrato di seguito:


Suddividi il testo separato da un'interruzione di riga

Se i contenuti della tua cella sono separati da interruzioni di riga, per dividerli in più righe, ecco un altro codice VBA che può aiutarti.

 Note:: Questo codice non supporto Disfare faresti meglio a eseguire il backup dei dati prima di applicare questo codice.

Passaggio 1: apri l'editor del modulo VBA e copia il codice

1. Stampa Alt + F11 chiavi per aprire il Microsoft Visual Basic, Applications Edition finestra.

2. Nella finestra aperta, fare clic su inserire > Moduli per creare un nuovo modulo vuoto.

3. Quindi, copia e incolla il codice seguente nel modulo vuoto.

Codice VBA: dividi il testo per interruzione di riga

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 

Passaggio 2: eseguire il codice per ottenere il risultato

1. Dopo aver incollato il codice, premere F5 chiave per eseguire questo codice. Nella casella spuntata, seleziona le celle che desideri dividere, vedi screenshot:

2. Quindi fare clic su OK pulsante, i dati nelle celle selezionate sono divisi in righe come mostrato nell'immagine sottostante:


Metodo B: 10 secondi per dividere il testo delimitato in più righe da Kutools per Excel

Se hai installato Kutools for Excel, Con la sua Dividi i dati in righe funzione, puoi dividere le stringhe di testo in più righe in base a qualsiasi delimitatore specificato. Si prega di fare con i seguenti passaggi:

Passaggio 1: selezionare la funzione Dividi dati in righe

Clicchi Kutools > Unisci e dividi > Dividi i dati in righe, vedi screenshot:

Passaggio 2: specificare le celle di dati e il delimitatore per la divisione

Nella finestra di dialogo visualizzata, utilizzare le seguenti opzioni:

  • 1). Selezionare l'elenco di celle che si desidera dividere da Intervallo (colonna singola) casella di testo;
  • 2). Quindi, scegli il delimitatore che separa i tuoi dati, qui, sceglierò Altro e digita una virgola e uno spazio (, ) nella casella di testo;
  • 3). Alla fine, clicca OK pulsante.

Ora, le celle selezionate con stringhe di testo delimitate sono state convertite in più righe in base al separatore specifico, vedi screenshot:

 Suggerimenti:: Se si desidera ripristinare i dati originali, è sufficiente premere Ctrl + Z per disfare.

Facile da usare? Interessato a questa funzione, per favore fare clic per scaricare per ottenere una prova gratuita per 30 giorni.


Metodo C: dividere il testo delimitato in più righe per Power Query

Se utilizzi Office 365 o Excel 2016 e versioni successive, Power Query è un potente strumento che può aiutarti a dividere il testo delimitato in più righe o colonne. È utile se si desidera che i dati suddivisi vengano aggiornati quando i dati originali vengono modificati. Si prega di fare con i seguenti passaggi per finirlo:

Passaggio 1: inserisci la tabella dati Power Query

1. Selezionare l'intervallo di dati che si desidera utilizzare, quindi fare clic Dati > Dalla tabella, vedi screenshot:

 Suggerimenti:: in Excel 2019 e Office 365, fare clic su Dati > Dalla tabella/intervallo.

2. Nel saltato fuori Crea tabella finestra di dialogo, fare clic OK pulsante per creare una tabella, vedi screenshot:

3. Ora il Power Query editore viene visualizzata la finestra con i dati, vedi screenshot:

Passaggio 2: eseguire le trasformazioni Power Query

1. Seleziona la colonna che vuoi dividere. E poi, clicca Casa > Colonna divisa > Per delimitatore, vedi screenshot:

2. Nel Dividi colonna per delimitatore la finestra di dialogo:

Per dividere le stringhe di testo per virgola, spazio, punto e virgola, ecc., eseguire le seguenti operazioni:

  • 1). Scegli il delimitatore da cui separare i tuoi dati da Seleziona o inserisci il delimitatore menu `A tendina;
  • 2). Selezionare Ogni occorrenza del delimitatore dal Dividi a sezione;
  • 3). Quindi, fai clic Opzioni avanzate per espandere la sezione e selezionare Righe sotto il Diviso in;
  • 4). Alla fine, clicca OK per chiudere questa finestra di dialogo.

Per dividere le stringhe di testo in più righe mediante un'interruzione di collegamento, eseguire le seguenti operazioni:

  • 1). Scegliere Custom dal Seleziona o inserisci il delimitatore menu `A tendina;
  • 2). Dal Inserisci caratteri speciali discesa, fare clic Avanzamento riga, e i personaggi #(lf) verrà inserito nella casella di testo sotto il Custom automaticamente;
  • 3). Selezionare Ogni occorrenza del delimitatore dalla sezione Split at;
  • 4). Quindi, fai clic Opzioni avanzate per espandere la sezione e selezionare Righe sotto il Diviso in;
  • 5). Alla fine, clicca OK per chiudere questa finestra di dialogo.

3. Ora, i dati selezionati sono stati suddivisi in più righe come mostrato nell'immagine sottostante:

Passaggio 3: emettere il file Power Query ad una tabella Excel

1. E poi, dovresti inserire i dati nel tuo foglio di lavoro. Si prega di fare clic Casa > Chiudi e carica > Chiudi e carica / Chiudi e carica in, (qui, cliccherò Chiudi e carica), vedi screenshot:

 Suggerimenti:: Fare clic su Chiudi e carica produrrà i dati in un nuovo foglio di lavoro; Clic Chiudi e carica in opzione, i dati verranno inviati a qualsiasi altro foglio di cui hai bisogno.

2. Infine, i dati verranno caricati in un nuovo foglio di lavoro, vedi screenshot:

 Suggerimenti:: Se devi aggiornare frequentemente i tuoi dati nella tabella originale, non preoccuparti, devi solo fare clic con il pulsante destro del mouse sulla tabella dei risultati e fare clic ricaricare per ottenere dinamicamente il nuovo risultato.


Articoli Correlati:

  • Dividi i valori delle celle in più colonne
  • In Excel, quando si desidera suddividere un elenco di valori di cella in più colonne in base a determinati delimitatori, come virgola, spazio, punto, nuova riga, ecc., normalmente, la funzionalità di testo in colonne incorporata può aiutarti a completare questo passaggio di lavoro per gradino. In questo articolo, parlerò di alcuni buoni trucchi per dividere i valori della cella in più colonne o righe in modo facile e veloce.
  • Dividi una cella in più righe o colonne
  • Supponendo di avere una singola cella che contiene più contenuti separati da un carattere specifico, ad esempio, punto e virgola, e quindi si desidera dividere questa lunga cella in più righe o colonne in base al punto e virgola, in questo caso, hai dei modi rapidi risolverlo in Excel?
  • Dividi la stringa di testo per caso
  • In Excel, di solito dividiamo il testo in base a larghezza fissa o delimitatore con la funzione Testo in colonne, ma hai mai provato a dividere il testo in maiuscolo e minuscolo? Ad esempio, hai un elenco di dati e devi dividerli in due colonne in base al caso: una colonna contiene una stringa minuscola e l'altra contiene una stringa maiuscola come mostrato nell'immagine sottostante. La funzione Text to Columns non supporta questa operazione, tuttavia, posso introdurre un trucco per dividere rapidamente la stringa di testo per caso in Excel.
  • Dividi il numero in singole cifre
  • Supponendo di dover rompere o dividere il numero in singole cifre come mostrato nell'immagine sottostante, cosa puoi fare per ottenerlo? Questo articolo fornirà due metodi per te.
Comments (0)
No ratings yet. Be the first to rate!
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations