إجمالي مرات مشاهدة الصفحة

السبت، 16 أبريل 2016

حماية ورقة عمل محددة بكلمة سر عند تنشيطها Protect Specific Sheet With Password

السلام عليكم ورحمة الله وبركاته

أقدم لكم كود يوضع في حدث ورقة العمل المراد حمايتها بكلمة سر ، ويتم تفعيل الكود عند تنشيط أو تحديد ورقة العمل.
بفرض أن لدينا ثلاثة أوراق عمل Sheet1 و Sheet2 و Sheet3 ، والمطلوب عمل حماية لورقة العمل الثالثة فقط ..
قم بنسخ الكود التالي وضعه في موديول ورقة العمل الثالثة المراد حمايتها ، عن طريق كليك يمين على اسم ورقة العمل ثم اختر الأمر View Code ثم قم بلصق الكود التالي :
Private Sub Worksheet_Activate()
    Dim strPass As String
    
    'Change Password To Yours
    strPass = "123"
    
    Cells(Rows.Count, Columns.Count).Activate
    If Application.InputBox("Please Enter Password", "Password", "") <> strPass Then
        Sheets("Sheet3").Activate
        MsgBox "Password Is Not Correct", vbExclamation, "Access Denied"
        Sheets("Sheet1").Select
    Else
        MsgBox "Password Is Correct. Enjoy!", 64, "Access Allowed"
        Range("A1").Activate
    End If
End Sub

عند تنشيط ورقة العمل الثالثة والتي يحتوي الموديول الخاص بها على الكود ، تظهر صندوق إدخال لكلمة السر بهذا الشكل :

عند كتابة كلمة السر بشكل غير صحيح أي أن كلمة السر خطأ تظهر هذه الرسالة : 

وعند كتابة كلمة السر بشكل صحيح (كلمة السر في المرفق 123) تظهر رسالة بهذا الشكل ويتم السماح بالتعامل مع ورقة العمل :

إعداد / ياسر خليل أبو البراء

هناك 3 تعليقات: