VBA Sort Data Ascending Order Excel Example Macro Code

Home/VBA/VBA Sort Data Ascending Order Excel Example Macro Code

VBA code to sort data in Ascending Order example will help us to sort data in excel worksheets in Ascending order. We can use Sort method of Excel Range to sort the data and specify the Sort Order as Ascending. In this example we will see how to sort data in Ascending Order using VBA. VBA code for sorting data in Ascending Order macro should work for all the version of Microsoft Excel 2003, Excel 2007, Excel 2010, and Excel 2013.



50+ Project Management Templates Pack
Excel PowerPoint Word

Advanced Project Plan & Portfolio Template
Excel Template

Business Presentations Templates Pack
PowerPoint Slides

20+ Excel Project Management Pack
Excel Templates

20+ PowerPoint Project Management Pack
PowerPoint Templates

10+ MS Word Project Management Pack
Word Templates

VBA code to sort data in Ascending Order

Here is the Example VBA syntax and Example VBA Macro code to sort the Excel Data in Ascending Order. This will help you to know how to sort data in Excel worksheets using VBA in Ascending Order.

VBA Sort Data in Ascending Order: Syntax

Following is the VBA Syntax and sample VBA code to Sort the Data in Ascending Order using VBA. We are using the Sort method of the Excel Workbook Range object and sort order as Ascending.

Range.Sort Key1:=Range("A1"), Order1:=xlAscending

Here you you can set your range into an object or you can directly use Range object like Range(“A1:D100”). And Key1 will be your Sorting Column which you wants to sort by. And we can specify the sort order using Order1.

Here is VBA code to sort the data in Excel by setting the range to an object:

Dim strDataRange As Range
Dim keyRange As Range
Set strDataRange = Range("Your Data Range")
Set keyRange = Range("Your Sort by Column")
strDataRange.Sort Key1:=keyRange, Order1:=xlAscending

Sort Data in Ascending using VBA : Examples

The following VBA code is to sort the data in Ascending in Excel Worksheet. This code will sort the data in Range A1 to D10 based on the First Column i.e.; A1. And in Ascending order.

Sub sb_VBA_Sort_Data_Ascending()
Range("A1:D10").Sort _
Key1:=Range("A1"), Order1:=xlAscending
End Sub

Instructions to run the VBA code to sort data in Excel Workbook in Ascending Order

Please follow the below instructions to execute the VBA code to sort the excel file.
Step 1: Open any existing Excel workbook
Step 2: Enter some data in A1 to D10
Step 3: Press Alt+F11 – This will open the VBA Editor
Step 4: Insert a code module from then insert menu
Step 5: Copy the above code to sort the data in excel and paste in the code module which have inserted in the above step
Step 5: Now press F5 to execute the code

Now you can observe that the Data in Excel sheet is sorted in Ascending order based on the Column A.

Explained VBA Code to Sort the Excel Data in Ascending order :

‘Starting the program and sub Procedure to write VBA code to sort data in ascending order
Sub sbSortData_Ascending _VBA_C()
‘Here Range(“A1:D10”) is target range to sort
‘And Range(“A1”) is the sort key to Sort by
Range(“A1:D10”).Sort _
Key1:=Range(“A1”) _
‘End ing the sub procedure to sort the data in ascending order
End Sub

VBA to Sort the data in ascending by assigning to an Object: Examples

It is best practice to assign our target range and key Cell to temporary range objects and then sort the data in ascending order. Here is the simple example to sort the data in Excel using Objects in VBA.

Sub sbSortDataInExcel()
'Delcaring the strDataRange as range store the target range to sort
Dim strDataRange As Range
'Delcaring the keyRange as range store the Sort key range to sort by
Dim keyRange As Range
'Assigning the target sort Range to strDataRange
Set strDataRange = Range("A1:D10")
'Assigning the sort key Range to keyRange
Set keyRange = Range("A1")
'Sorting the data using range objects and Sort method
strDataRange.Sort Key1:=keyRange, Order1:=xlAscending
End Sub 
By |April 22nd, 2014|VBA|2 Comments

About the Author:

PNRao is a passionate business analyst and having close to 10 years of experience in Data Mining, Data Analysis and Application Development. This blog is his passion to learn new skills and share his knowledge to make you expertise in Data Analysis (Excel, VBA, SQL, SAS, Statistical Methods, Market Research Methodologies and Data Analysis Techniques).


  1. manideep May 29, 2017 at 12:11 AM - Reply

    how we can sort data in different sheets of workbook using above function?

  2. swarna June 8, 2017 at 7:44 PM - Reply

    I want to generate a code in visual basics for
    A duty roster.
    By checking all these below conditions
    I have 46 employees
    Only 1 person will do the duty for 1 day.
    Remaining will do the duty in next month.
    Based on their availability we will give the duty. What is the code for that????

Leave A Comment

Related pages

pmo interview questions and answers pdfhow to combine multiple excel sheets into one sheetexcel vba scriptsvba copy rangevba tutorial accessdynamic charts in excel 2007excel advanced filter criteria range examplescopy paste in vbavba startunhide a sheet in excelprotect cells in excel 2007planning schedule template excelhow to autofit in excelthissheet vbaexcel vba list boxprotect structure and windows exceluseful vba codes for excelmacro to insert rowsformula of vlookupadvantages of ms excelvba data entryhow do you merge columns in excelexcel rngexcel formulas valuecolumn offset vbavba syntax guideaverage function in excel 2013introduction to vbaexcel len functionexcel hide columntask tracking spreadsheet templatehow to merge excel cellsrecord macro powerpoint 2007developer tab to ribbonhow to hide and unhide columns in excelsoftware development estimation templatevba clear stringhow to call a function in vbaexcel vba workbook saveassql queries interview questions and answers pdfnested vlookup functionvb.net interview questions and answers pdfhow to highlight duplicates in excel 2003how to unprotect excel sheet forgot passwordhow to protect excel sheet from deletingexcel macro cell referenceexcel vlookup tutorialexcel vba onloadexcel sort macrocheckboxes in excel 2010excel project timeline templatesvba excel insert rowvba format codecopy and paste cells in excelpassword protect excel vbaexcel vba integerexcel vba delete selected rowsvba scripting.filesystemobjectexcel vba torrentexcel macro delete blank rowsadding developer tab in excel 2007data definition commands in sqlrs getrowsdir vbavlookup false trueexcel to sql querynew worksheet vbahide column excelrefresh pivot table macroif iserror in excelexcel macro programspell check shortcut in excelexcel change columns to rowsf7 in excelworking with excel macroshow to find duplicates in an excel columntick on excel spreadsheetexcel workbook save