Sắp xếp thứ tự chữ cái trong 1 ô (1 người xem)

  • Thread starter Thread starter silva333
  • Ngày gửi Ngày gửi
Liên hệ QC

Người dùng đang xem chủ đề này

silva333

Thành viên mới
Tham gia
5/12/12
Bài viết
3
Được thích
0
Nhờ các anh/chị giúp em cách sắp xếp thứ tự chữ cái trong 1 ô:

Ví dụ trông ô A1 có chữ như sau: 5M7+7M2+1M4
Em cần xếp thứ tự thành : 7M2+1M4+5M7

Không biết có cách nào xếp lại thứ tự như trên không, nhờ các anh chị chỉ giúp em.
Thanks mọi người nhiều /-*+/
 
Nhờ các anh/chị giúp em cách sắp xếp thứ tự chữ cái trong 1 ô:

Ví dụ trông ô A1 có chữ như sau: 5M7+7M2+1M4
Em cần xếp thứ tự thành : 7M2+1M4+5M7

Không biết có cách nào xếp lại thứ tự như trên không, nhờ các anh chị chỉ giúp em.
Thanks mọi người nhiều /-*+/
Có 2 cách:
1. Thủ công: dùng chức năng TextToColumns tách ra, rồi dùng hàm nối lại
2. Tự động: dùng VBA

Muốn dùng VBA thì gởi file lên có dữ liệu thật thì sẽ có hướng dẫn chi tiết hơn
 
Chào anh quanghai1969,

Em gởi anh file của em, nhờ anh hướng dẫn giúp, cảm ơn anh nhiều /-*+/
 

File đính kèm

Chào anh quanghai1969,

Em gởi anh file của em, nhờ anh hướng dẫn giúp, cảm ơn anh nhiều /-*+/
Bài này chắc là phải dùng VBA rồi, thủ công không nổi đâu
Bạn không giải thích rõ ràng nên mình cũng chỉ đoán và viết code theo cảm giác. Hên thì trúng
Copy code vào 1 module
Rồi dùng công thức theo cú pháp =SapXep(A3)
PHP:
Function SapXep(cell As Range) As String
Dim Tmp, I, J, Changed As Boolean, Temp
Tmp = Split(cell, "+")
If UBound(Tmp) > 0 Then
    For I = 0 To UBound(Tmp) - 1
        Changed = False
        For J = 0 To UBound(Tmp) - 1
            If Right(Tmp(J), 1) > Right(Tmp(J + 1), 1) Then
                Temp = Tmp(J)
                Tmp(J) = Tmp(J + 1)
                Tmp(J + 1) = Temp
            End If
            Changed = True
        Next
        If Changed = False Then Exit For
    Next
End If
SapXep = Join(Tmp, "+")
End Function
 
Bài này chắc là phải dùng VBA rồi, thủ công không nổi đâu
Bạn không giải thích rõ ràng nên mình cũng chỉ đoán và viết code theo cảm giác. Hên thì trúng
Copy code vào 1 module
Rồi dùng công thức theo cú pháp =SapXep(A3)
PHP:
Function SapXep(cell As Range) As String
Dim Tmp, I, J, Changed As Boolean, Temp
Tmp = Split(cell, "+")
If UBound(Tmp) > 0 Then
    For I = 0 To UBound(Tmp) - 1
        Changed = False
        For J = 0 To UBound(Tmp) - 1
            If Right(Tmp(J), 1) > Right(Tmp(J + 1), 1) Then
                Temp = Tmp(J)
                Tmp(J) = Tmp(J + 1)
                Tmp(J + 1) = Temp
            End If
            Changed = True
        Next
        If Changed = False Then Exit For
    Next
End If
SapXep = Join(Tmp, "+")
End Function
Thanks anh nhiều nha, hồi giờ em cũng không biết dùng VBA thế nào, vào mạng xem cách chèn vào module rồi gõ như anh hướng dẫn thì được rồi --=0--=0 Đa tạ anh lần nữa.
 
Web KT

Bài viết mới nhất

Back
Top Bottom