How to Split Cell Contents Base on Carriage Returns (Line Break) in Excel

This post will guide you how to split cells with line break or carriage returns into multiple rows or columns in Excel. How do I split cell contents based on carriage returns into separate rows with Text to Columns in Excel. How to split Excel Cell with carriage returns into multiple rows using VBA Macro in Excel.

The Carriage returns also known as line breaks in Excel, and when you press “Alt+Enter” shortcut in a cell, one carriage returns will be generated. Or you copied the text string from other source, which already have the line breaks.

Split Cell Contents with Carriage Returns into Multiple Rows using Text to Columns Feature


Assuming that you have a list of data in range B1:B4, which contain text strings with carriage returns, and you want to split those cells based on the carriage returns or line breaks into separate rows or columns. How to achieve it. You can use the Text to Columns feature to achieve the result. just do the following steps:

#1 select the range of cells B1:B4 that you want to split.

split multiple lines in a cell into rows1

#2 go to DATA tab, click Text to Columns command under Data Tools group. And the Text to Columns dialog box will open.

split multiple lines in a cell into rows2

#3 choose the Delimited radio button under Original data type section. And click Next button.

split multiple lines in a cell into rows3

#4 only check the Other check box in the Delimiters section, and select the text box of Other, and then press Ctrl + J shortcut in your keyboard. And you can see the expected result in the Data preview section. Click Next button.

split multiple lines in a cell into rows4

#5 select one cell as the destination cell, such as: put the result in Cell C1, and you can type the value $C$1 in destination text box. and then click Finish button.

split multiple lines in a cell into rows5

#6 let’s see the result:

split multiple lines in a cell into rows6

Split Cell Contents with Carriage Returns into Multiple Rows using VBA Macro


You can also use an Excel VBA Macro to achieve the same result of splitting Cells with line breaks into multiple rows. Do the following steps:

#1 open your excel workbook and then click on “Visual Basic” command under DEVELOPER Tab, or just press “ALT+F11” shortcut.

Get the position of the nth using excel vba1

#2 then the “Visual Basic Editor” window will appear.

#3 click “Insert” ->”Module” to create a new module.

convert column number to letter3

#4 paste the below VBA code into the code window. Then clicking “Save” button.

split cells based on carriage returns1

Sub SplitCellsBaseLineBreak()
    Dim str() As String
    Dim myRng As Range 
    Set myRng = Application.Selection
    Set myRng = Application.InputBox("select one range that you want to split", "SplitCellsBaseLineBreak", myRng.Address, Type:=8)

    For Each myCell In myRng
        If Len(myCell) Then
            str = VBA.Split(myCell, vbLf)
            myCell.Resize(1, UBound(str) + 1).Offset(0, 1) = str
        End If
    Next
End Sub

#5 back to the current worksheet, then run the above excel macro. Click Run button.

split cells based on carriage returns2

#6 select one range that you want to split, such as B1:B4, click Ok button.

split cells based on carriage returns3

#7 Let’s see the result.

split cells based on carriage returns4

 

Video: Split Cell Contents with Carriage Returns into Multiple Rows

 

Comments

So empty here ... leave a comment!

Leave a Reply

Your email address will not be published. Required fields are marked *

Sidebar