Sắp xếp thứ tự tên các Sheet trong một File Excel

Trong Excel không  có tính năng để sắp xếp thứ tự các tên của các Sheet vì thế bạn cần phải thực hiện bằng Macro bên dưới

 

Sub Sort_Active_Book()

Dim i As Integer

Dim j As Integer

Dim iAnswer As VbMsgBoxResult

   iAnswer = MsgBox("Sort Sheets in Ascending Order?" & Chr(10)  & "Clicking No will sort in Descending Order",  vbYesNoCancel + vbQuestion + vbDefaultButton1, "Sort Worksheets")

   For i = 1 To Sheets.Count

      For j = 1 To Sheets.Count - 1

         If iAnswer = vbYes Then

            If UCase$(Sheets(j).Name) > UCase$(Sheets(j + 1).Name) Then

               Sheets(j).Move After:=Sheets(j + 1)

            End If

         ElseIf iAnswer = vbNo Then

            If UCase$(Sheets(j).Name) < UCase$(Sheets(j + 1).Name) Then

               Sheets(j).Move After:=Sheets(j + 1)

            End If

         End If

      Next j

   Next i

End Sub

 

Khi chạy Macro này nếu trả lời là Yes thì sẽ sắp xếp theo thứ tự tăng dần , nếu No là theo thứ tự giảm dần

 

\"\"