Em có hàm này của thầy ndu96081631 về việc sắp xếp chuỗi chữ số theo thứ tự tăng hoặc giảm dần
Giờ em muốn một hàm tương tự như hàm trên nhưng sắp xếp theo chữ cái (Tên cột trong excel), ví dụ:
Chuỗi: A;G;C;BF;AA thì thành: A;C;G;AA;BF
Em xin cảm ơn!
Mã:
Function StrSort(ByVal Text As String, ByVal Delimiter As String, Optional ByVal Order As Boolean = False) As String
Dim aTmp, item, strDes As String
Dim n As Long
On Error Resume Next
aTmp = Split(Text, Delimiter)
ReDim Arr(1 To 1)
For Each item In aTmp
n = CLng(Trim(item))
If n > DoiChuThanhSo(UBound(Arr)) Then ReDim Preserve Arr(1 To n)
Arr(n) = Arr(n) & " " & IIf(Order, StrReverse(n), n)
Next
strDes = WorksheetFunction.Trim(Join(Arr, " "))
If Order Then strDes = StrReverse(strDes)
StrSort = Replace(strDes, " ", Delimiter)
End Function
Chuỗi: A;G;C;BF;AA thì thành: A;C;G;AA;BF
Em xin cảm ơn!