This macro will perform a bubble sort in excel. You use it simply by selecting one column to sort and then running the macro.
This is basically just like a regular sort but just done using the bubble sort method of comparing two contiguous cells and then switching cell position between those two cells so that those two are arranged in a local ascending or descending order. This is then repeated until the entire sequence is sorted in the correct order. This type of sort takes more time than a quick sort or than many other types of sorts; however, it still works and is widely taught.
Note: If you want to sort in descending order, replace the "<" with a ">" sign in the line that reads "If Val(sortingArray(j, 1)) < Val(sortingArray(i, 1)) Then."
Sub bubble_sort()
Dim sortingArray As Variant, i As Long, j As Long, temp As Variant
sortingArray = Selection.Value
For i = 1 To (UBound(sortingArray, 1) - 1)
For j = i To UBound(sortingArray, 1)
If Val(sortingArray(j, 1)) < Val(sortingArray(i, 1)) Then
temp = sortingArray(i, 1)
sortingArray(i, 1) = sortingArray(j, 1)
sortingArray(j, 1) = temp
End If
Next j
Next i
Selection.Value = sortingArray
End Sub