Could one of you geniuses have a look at this sort function, maybe tell me why it's so slow and where I could speed things up? Cheers awfully...

Sub Sorter()
Dim Swap As Boolean, Swapped As Boolean, ErrCode As Boolean
Dim Loop1 As Integer, Loop2 As Integer
Dim Temp As String
'
Do 'Keep running through all items till no more swaps are made
Swapped = False
For Loop1 = 1 To ItemCount 'The Total number of items
Swap = False
For Loop2 = 1 To Trim(Len(Items(Loop1 - 1))) 'The num of chars in first item
On Error GoTo ErrorHandler 'In case second item is shorter than first
If Asc(UCase(Mid(Items(Loop1 - 1), Loop2, 1))) > _
Asc(UCase(Mid(Items(Loop1), Loop2, 1))) Then
If ErrCode = True Then Exit For
Swap = True
Exit For
ElseIf Asc(UCase(Mid(Items(Loop1 - 1), Loop2, 1))) < _
Asc(UCase(Mid(Items(Loop1), Loop2, 1))) Then
Exit For
End If
Next Loop2
If Swap = True Then 'Do the swap
Temp = Items(Loop1 - 1)
Items(Loop1 - 1) = Items(Loop1)
Items(Loop1) = Temp
Swapped = True
End If
Next Loop1
Loop While Swapped = True
'
Exit Sub
ErrorHandler:
ErrCode = True
Resume Next
End Sub