Sort object (Excel)
Represents a sort of a range of data.
The following procedure builds and sorts data in a range on the active worksheet.
Sub SortData()
'Building data to sort on the active sheet.
Range("A1").Value = "Name"
Range("A2").Value = "Bill"
Range("A3").Value = "Rod"
Range("A4").Value = "John"
Range("A5").Value = "Paddy"
Range("A6").Value = "Kelly"
Range("A7").Value = "William"
Range("A8").Value = "Janet"
Range("A9").Value = "Florence"
Range("A10").Value = "Albert"
Range("A11").Value = "Mary"
MsgBox "The list is out of order. Hit Ok to continue...", vbInformation
'Selecting a cell within the range.
Range("A2").Select
'Applying sort.
With ActiveWorkbook.Worksheets(ActiveSheet.Name).Sort
.SortFields.Clear
.SortFields.Add Key:=Range("A2:A11"), _
SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
.SetRange Range("A1:A11")
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
MsgBox "Sort complete.", vbInformation
End Sub
Have questions or feedback about Office VBA or this documentation? Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.