السلام عليكم ورحمة الله وبركاته
إليكم كود يمكنك من ترتيب أوراق العمل إما ترتيب تصاعدي Ascending أو ترتيب تنازلي Descending.
عند تنفيذ الكود تظهر رسالة بهذا الشكل :
بالنقر على الخيار Yes يتم ترتيب أوراق العمل ترتيب تصاعدي
وبالنقر على الخيار No يتم ترتيب أوراق العمل ترتيب تنازلي
وبالنقر على الخيار Cancel يتم الخروج من الإجراء الفرعي بدون ترتيب لأوراق العمل
إليكم الكود المستخدم ، ويوضع الكود في موديول عادي :
Sub Sort_Worksheets()
    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
إعداد / ياسر خليل أبو البراء 

 
الأروع هو مرورك أخي وحبيبي في الله عماد غازي
ردحذفاخي وحبيبي نفسي اتعلم الاكسل فعلا انت انسان اكثر من رائع الله يباركلك في صحتك امين يارب العالمين
ردحذفالسلام عليكم لدي جدول في بيانات ولدي في احد الاعمدة ارقام احتاج ترتيب الجدول تصاعديا حسب الارقام اللي في احد الاعمدة وشكرا
ردحذف