Private Sub UserForm_Initialize()
Dim lrow As Long
Dim rng As Range
lrow = Range("a" & Rows.Count).End(xlUp).Row
Set rng = Range("A1:b" & lrow)
rng.Sort key1:=Range("B1:B" & lrow), _
order1:=xlAscending, Header:=xlNo
ListBoxA.List = rng.Value
End Sub
and to put back in order on worksheet
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
Dim lrow As Long
Dim rng As Range
lrow = Range("a" & Rows.Count).End(xlUp).Row
Set rng = Range("A1:b" & lrow)
rng.Sort key1:=Range("a1:a" & lrow), _
order1:=xlAscending, Header:=xlNo
End Sub
Bookmarks