How to Sort Cell Range

by Chaknith Bin

Sorting data in alphabetical or value order is essential for data analysis in Microsoft Excel. With IronXL, sorting Excel columns, rows, and ranges becomes straightforward in C# and VB.NET.


C# NuGet Library for Excel

Install with NuGet

Install-Package IronXL.Excel
or
C# Excel DLL

Download DLL

Download DLL

Manually install into your project

Sort Columns Independently Example

Use the SortAscending or SortDescending method on the selected range or column to apply sorting in the desired order.

When applying sorting to a range with multiple columns, the SortAscending or SortDescending method will independently iterate and apply the sorting to each column.

These methods push any empty cells to either the top or bottom of the range. To remove these empty cells, you can use the Trim method after sorting. This will eliminate the empty cells, ensuring a clean and organized dataset.

:path=/static-assets/excel/content-code-examples/how-to/sort-cells-range.cs
using IronXL;

WorkBook workBook = WorkBook.Load("sample.xlsx");
WorkSheet workSheet = workBook.DefaultWorkSheet;

// Select a column(A)
var column = workSheet.GetColumn(0);

// Sort column(A) in ascending order (A to Z)
column.SortAscending();

// Sort column(A) in descending order (Z to A)
column.SortDescending();

workBook.SaveAs("sortExcelRange.xlsx");
Imports IronXL

Private workBook As WorkBook = WorkBook.Load("sample.xlsx")
Private workSheet As WorkSheet = workBook.DefaultWorkSheet

' Select a column(A)
Private column = workSheet.GetColumn(0)

' Sort column(A) in ascending order (A to Z)
column.SortAscending()

' Sort column(A) in descending order (Z to A)
column.SortDescending()

workBook.SaveAs("sortExcelRange.xlsx")
VB   C#
Sort Ascending and Descending

Sort By Column Example

The SortByColumn method allows you to sort a range based on a specified column. This method requires two parameters: the first parameter is the column you want to sort by, and the second parameter is the range to which you want to apply the sorting.

:path=/static-assets/excel/content-code-examples/how-to/sort-cells-sort-by-column.cs
using IronXL;

WorkBook workBook = WorkBook.Load("sample.xlsx");
WorkSheet workSheet = workBook.DefaultWorkSheet;

// Select a range
var range = workSheet["A1:D10"];

// Sort the range by column(B) in ascending order
range.SortByColumn("B", SortOrder.Ascending);

workBook.SaveAs("sortRange.xlsx");
Imports IronXL

Private workBook As WorkBook = WorkBook.Load("sample.xlsx")
Private workSheet As WorkSheet = workBook.DefaultWorkSheet

' Select a range
Private range = workSheet("A1:D10")

' Sort the range by column(B) in ascending order
range.SortByColumn("B", SortOrder.Ascending)

workBook.SaveAs("sortRange.xlsx")
VB   C#
Sort by Specific Column

It is not possible to sort by multiple columns yet, for example, sorting by column A and then by column B.

Chaknith Bin

Software Engineer

Chaknith is the Sherlock Holmes of developers. It first occurred to him he might have a future in software engineering, when he was doing code challenges for fun. His focus is on IronXL and IronBarcode, but he takes pride in helping customers with every product. Chaknith leverages his knowledge from talking directly with customers, to help further improve the products themselves. His anecdotal feedback goes beyond Jira tickets and supports product development, documentation and marketing, to improve customer’s overall experience.When he isn’t in the office, he can be found learning about machine learning, coding and hiking.