Function Problems

How to Rearrange a Single Excel Column into Rows and Columns

Jason MillerJason Miller Nov 11, 2026 868 views

Question details

The user needs to convert a single vertical column containing a mixed list of labels and values into a structured two-column tabular layout.

How to Rearrange a Single Excel Column into Rows and Columns
Product
Excel
Device & OS
not provided
Scenario
Reorganizing poorly formatted vertical data or text dumps into a clean, readable format with separate headers like Name and Count for easier analysis.
Observed behavior
Data is stacked in a single column with labels and values combined (e.g., separated by a colon) and blank rows mixed in, rather than being organized into a proper two-column table.
Before you start

Before transforming your data, ensure you are using a version of Excel that supports dynamic array functions (like Microsoft 365 or Excel for the web). If you are using an older version, you will need to rely on the Power Query method instead.

Solution 1Recommended

Use Dynamic Array Formulas (WRAPROWS, TEXTAFTER, TOCOL)

The fastest method for Microsoft 365 users to restructure vertical data into a grid format dynamically.

This method combines several dynamic array functions to clean and reshape the data in a single step. TOCOL is used to remove blank rows, TEXTAFTER extracts the necessary values, and WRAPROWS forces the data into a two-column layout.

1
Select an empty destination cell

Click on the top-left cell where you want the new two-column table to begin in your worksheet.

2
Enter the TOCOL and TEXTAFTER formula

Type =TEXTAFTER(TOCOL(B:B,1),": ") to remove blank rows and extract only the values appearing after the colon delimiter. Change 'B:B' to match your actual source data column.

3
Wrap data into rows

Modify your formula to include the WRAPROWS function: =WRAPROWS(TEXTAFTER(TOCOL(B:B,1),": "),2). The '2' specifies that the data should be split into two columns.

4
Convert text to numbers (Optional)

If your numerical counts are formatted as text and cannot be calculated, use the LET and IFERROR functions to convert them: =LET(arr,WRAPROWS(TEXTAFTER(TOCOL(B:B,1),": "),2),IFERROR(--arr,arr)).

Use Dynamic Array Formulas (WRAPROWS, TEXTAFTER, TOCOL)
Dynamic Updates: This formula creates a dynamic array that will automatically update if you change or add data to the original vertical column.
Advanced Spreadsheet Tool

Rearrange Data Effortlessly in WPS Spreadsheet

WPS Spreadsheet provides powerful data manipulation tools, robust formulas, and an intuitive interface to easily reorganize your messy data columns into clean, structured tables without hassle.

  1. 1. Open your dataset in WPS Spreadsheet: Launch WPS Office, open the Spreadsheet module, and load the document containing your single-column data.
  2. 2. Use Text to Columns: Select your data column, navigate to the 'Data' tab, and use the 'Text to Columns' feature to split the labels and values by choosing a custom colon delimiter.
  3. 3. Reorganize the data layout: Once separated, you can use standard array formulas or apply the Paste Special > Transpose feature to perfectly align the split data into your desired rows and columns format.
Fully compatible with Microsoft Excel (.xlsx) formats and standard array functionsSupports advanced data processing tools like Text to Columns and TransposeFree and lightweight alternative to heavy office suitesCross-platform synchronization across Windows, Mac, and mobile devices
microsoft office alternative - wps office

Frequently Asked Questions

Why does my WRAPROWS formula return a #NAME? error?

The #NAME? error typically occurs if you are using an older version of Excel (prior to Microsoft 365 or Excel 2021) that does not support the WRAPROWS, TOCOL, or TEXTAFTER functions. For older versions, consider using the Power Query method.

How can I split data into more than two columns?

In the WRAPROWS formula =WRAPROWS(array, wrap_count), simply change the wrap_count argument from 2 to the number of columns you want. For example, changing it to 3 will arrange your vertical data into a three-column grid.

Can I convert single columns to rows without using formulas?

Yes. You can copy your vertical data, right-click a destination cell, select 'Paste Special', and check the 'Transpose' box. However, this method only rotates the entire column horizontally into a single row and doesn't group the data into a multi-column table layout.