20 | 09 | 2017

Sort Listbox by Column

You can use the code below to sort a listbox by column. The code below is based on a listbox called Listbox1 that holds 2 columns. You can expand if you like. Just follow the same code build up as stated below. 

Private Sub Sorting(ByVal column As Double)
On Error Resume Next
If Me.ListBox1.ListCount = 0 Then Exit Sub
    Dim i As Long
    Dim j As Long
    Dim sTemp As String
    Dim sTemp2 As String
    'Dim sTemp3 As String
    'Dim sTemp4 As String
    'Dim sTemp........ As String
    Dim LbList As Variant
    'Store the list in an array for sorting
    LbList = Me.ListBox1.List
    'Bubble sort the array on the first value
    For i = LBound(LbList, 1) To UBound(LbList, 1) - 1
        For j = i + 1 To UBound(LbList, 1)
            If LbList(i, column) > LbList(j, column) Then
                'Swap the first value
                sTemp = LbList(i, 0)
                LbList(i, 0) = LbList(j, 0)
                LbList(j, 0) = sTemp
                'Swap the second value
                sTemp2 = LbList(i, 1)
                LbList(i, 1) = LbList(j, 1)
                LbList(j, 1) = sTemp2
                'Swap the second value
                'sTemp3 = LbList(i, 2)
                'LbList(i, 2) = LbList(j, 2)
                'LbList(j, 2) = sTemp3
                'Swap the second value
                'sTemp4 = LbList(i, 3)
                'LbList(i, 3) = LbList(j, 3)
                'LbList(j, 3) = sTemp4
                '.........
                '.....
                '...
            End If
        Next j
    Next i
    'Remove the contents of the listbox
    Me.ListBox1.Clear
    'Repopulate with the sorted list
    Me.ListBox1.List = LbList
End Sub
Login

Sign up now and upload your code to the website.

Help us to continue.....
Statistics
Articles View Hits
2353574
Latest Articles