How to sort rows to put the blank cells on top in Excel?

If you have a list of data which is populated with some blank cells, now, you need to sort all the empty cells on top of the data. When you apply the Sort feature in Excel, both the Sort Smallest to Largest and Sort Largest to Smallest functions will sort the blank cells at the bottom of the records. In this case, the following tutorial will talk about how to sort rows and put the blank cells on top in Excel.

Sort rows to put the blank cells on top by sorting colored cells
Sort rows to put the blank cells on top with a helper column
Sort rows to put the blank cells on top with VBA code
Easily sort rows to put the blank cells on top with Kutools for Excel


Sort rows to put the blank cells on top by sorting colored cells

In Excel, you can sort data by background color, so here, you can fill the blank cells with a specific color, and then sort them by color. Please do with the following steps:

1. Select your list of data, and press Ctrl + G to open the Go To dialog, then click Special button, see screenshot:

doc-sort-blanks-first1

2. In the popped Go To Special dialog box, check Blanks option, and then click OK.

doc-sort-blanks-first1

3. And all the empty cells have been selected, now you can fill them with a color by clicking Home > Fill Color and selecting a color you want as following screenshot shown:

doc-sort-blanks-first1

4. Then you can sort the list by filling color, please select your values and click Data > Sort, in the popped Sort dialog, select the column that you want to sort, and choose Cell Color from the Sort On drop down list, then click the color of the blank cells, finally, choose On Top option. See screenshot:

doc-sort-blanks-first1

5. After finishing the settings, click OK, all the colored blank cells have been sorted first, then you can remove the color after sorting. See screenshots:

doc-sort-blanks-first5 -2 doc-sort-blanks-first6

Sort rows to put the blank cells on top with a helper column

To sort the blank cells at the top of your data list, you can use a formula to identify the blanks, and then apply the Sort function.

1. In a blank cell which next to the data, cell B1, for instance, type this formula =A1="",see screenshot:

doc-sort-blanks-first1

2. Then drag the fill handle over to the cells that you want to contain this formula, and all the blank cells displayed as TRUE, and others as False, see screenshot:

doc-sort-blanks-first1

3. Then click Data > Sort Largest to Smallest, and a Sort Warning dialog will pop up, then check Expand the selection, see screenshots:

doc-sort-blanks-first9
-1
doc-sort-blanks-first10

4. And then click OK, all the blank cells have been sorted on the top of the values.

doc-sort-blanks-first1

5. At last, you can delete the values in helper column B as your need.


Sort rows to put the blank cells on top with VBA code

Apply the following VBA code, you can quickly sort the blank cells on top of the data.

1. Hold down the ALT + F11 keys, and it opens the Microsoft Visual Basic for Applications window.

2. Click Insert > Module, and paste the following code in the Module Window.

VBA code: Sort the blank cells on top of the data

Sub SortBlankOnTop()
'Update 20140318
On Error Resume Next
Dim WorkRng As Range
Dim xMin As Double
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
xMin = Application.WorksheetFunction.Small(WorkRng, 1) - 1
WorkRng.SpecialCells(xlCellTypeBlanks) = xMin
WorkRng.Sort , Key1:=Cells(WorkRng.Row, WorkRng.Column), Order1:=xlAscending, Header:=xlNo, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, DataOption1:=xlSortNormal
WorkRng.Replace What:=xMin, Replacement:="", LookAt:=xlWhole
End Sub

3. Then press F5 key to run this code, in the popped dialog, select the data range that you want to sort, see screenshot:

doc-sort-blanks-first1

4. And then click OK, the empty cells have been sorted on top.


Easily sort rows to put the blank cells on top with Kutools for Excel

The Advanced Sort utility of Kutools for Excel can help you easily sort rows and put the blank cells on top in Excel. Please do as follows.

Before applying Kutools for Excel, please download and install it firstly.

1. Select the range you want to sort and put the blank cells on top, and then click Kutools Plus > Sort > Advanced Sort

2. In the Advanced Sort dialog box, select your sorting condition, and then check the Blank cells in front box, and finally click the OK button. See screenshot:

doc blank cell first

Then the selected range is sorted and all blank cells are put on top immediately as the below screenshot shown. 

  If you want to have a free trial ( 30-day) of this utility, please click to download it, and then go to apply the operation according above steps.


Easily sort rows to put the blank cells on top with Kutools for Excel


Related articles:


The Best Office Productivity Tools

Kutools for Excel Solves Most of Your Problems, and Increases Your Productivity by 80%

  • Reuse: Quickly insert complex formulas, charts and anything that you have used before; Encrypt Cells with password; Create Mailing List and send emails...
  • Super Formula Bar (easily edit multiple lines of text and formula); Reading Layout (easily read and edit large numbers of cells); Paste to Filtered Range...
  • Merge Cells/Rows/Columns without losing Data; Split Cells Content; Combine Duplicate Rows/Columns... Prevent Duplicate Cells; Compare Ranges...
  • Select Duplicate or Unique Rows; Select Blank Rows (all cells are empty); Super Find and Fuzzy Find in Many Workbooks; Random Select...
  • Exact Copy Multiple Cells without changing formula reference; Auto Create References to Multiple Sheets; Insert Bullets, Check Boxes and more...
  • Extract Text, Add Text, Remove by Position, Remove Space; Create and Print Paging Subtotals; Convert Between Cells Content and Comments...
  • Super Filter (save and apply filter schemes to other sheets); Advanced Sort by month/week/day, frequency and more; Special Filter by bold, italic...
  • Combine Workbooks and WorkSheets; Merge Tables based on key columns; Split Data into Multiple Sheets; Batch Convert xls, xlsx and PDF...
  • More than 300 powerful features. Supports Office/Excel 2007-2019 and 365. Supports all languages. Easy deploying in your enterprise or organization. Full features 30-day free trial. 60-day money back guarantee.
kte tab 201905

Office Tab Brings Tabbed interface to Office, and Make Your Work Much Easier

  • Enable tabbed editing and reading in Word, Excel, PowerPoint, Publisher, Access, Visio and Project.
  • Open and create multiple documents in new tabs of the same window, rather than in new windows.
  • Increases your productivity by 50%, and reduces hundreds of mouse clicks for you every day!
officetab bottom
Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Namdev · 6 months ago
    For big sheet putting a value "0" is not easy, i think as per above, Sort Rows To Put The Blank Cells On Top With A Helper Column like ((a blank cell which next to the data, cell B1, for instance, type this formula =A1="")) is very easy & fast trick
  • To post as a guest, your comment is unpublished.
    Shebu · 2 years ago
    A trick that was easy for me was to put a value of "0" in all blank cells and then conditionally format those cells with a "0" to have white font. Then I could easily sort by value and the "0" cells would appear on the top but visually they appear blank because the font matches the background. This may not work if you're using the cells for metrics purposes, this was merely for sorting.
    • To post as a guest, your comment is unpublished.
      crystal · 2 years ago
      Good Day,
      Thanks for sharing.
  • To post as a guest, your comment is unpublished.
    Pravin · 3 years ago
    Great Post.............It help me lots of..........

    Thank you so much.