كيفية تعيين كلمات مرور لحماية أوراق العمل الفردية لمستخدمين مختلفين في Excel؟
في Excel، يمكنك تعيين كلمات مرور مختلفة لأوراق عمل مختلفة، مما يعني أن مستخدمًا واحدًا يمكنه إجراء تغييرات على ورقة عمل باستخدام كلمة مرور واحدة، بينما يمكن لآخر استخدام كلمة مرور مختلفة لإجراء تغييرات على ورقة عمل أخرى. ولكن في بعض الأحيان، قد ترغب فقط في أن يتمكن كل مستخدم من عرض ورقة عمله والوصول إليها فقط. هل يمكن حل هذه المشكلة في Excel؟
لحماية كل ورقة عمل على حدة وتحديد الوصول إلى الأوراق بواسطة المستخدمين، يرجى تطبيق كود VBA أدناه:
1. افتح مصنفًا جديدًا، وأنشئ ورقة جديدة باسم "Main"، انظر إلى لقطة الشاشة:
2. ثم اضغط على مفتاحي "Alt" + "F11" لفتح نافذة "Microsoft Visual Basic for Applications"، انقر نقرًا مزدوجًا على "ThisWorkbook" من الجزء الأيسر "Project-VBAProject" لفتح وحدة كود فارغة، ثم قم بنسخ ولصق الكود التالي لـ VBA في نافذة الكود، انظر إلى لقطة الشاشة:
كود VBA: تعيين كلمات مرور لحماية الأوراق الفردية من قبل المستخدمين
Option Explicit
Dim gUserName As String
Dim gUserPass As String
Private Sub Workbook_Open()
'Updateby ExtendOffice
Dim xWShs As Sheets
Dim xWSh As Worksheet
Dim xUserName As String
Dim xPass As String
Dim xBolH As Boolean
GTINPUT:
xUserName = InputBox("Enter the user name")
If TypeName(xUserName) = "String" Then
If xUserName = "" Then
Exit Sub
End If
End If
xUserName = LCase(xUserName)
xPass = InputBox("User name:" & xUserName & Chr(13) & Chr(10) & "Enter the password:")
If TypeName(xPass) = "String" Then
If xPass = "" Then
MsgBox "The password is incorrect, please enter the user name and password again."
GoTo GTINPUT
End If
Else
MsgBox "The password is incorrect, please enter the user name and password again."
GoTo GTINPUT
End If
Set xWShs = Worksheets
xBolH = False
For Each xWSh In Worksheets
If xWSh.Name = xUserName Then
xBolH = True
Exit For
End If
Next
If xBolH Then
Set xWSh = xWShs(xUserName)
On Error GoTo GTINPUT2
xWSh.Unprotect (xPass)
xWSh.Visible = True
xWSh.Activate
Else
Set xWSh = xWShs.Add
xWSh.Name = xUserName
xWSh.Activate
End If
gUserName = xUserName
gUserPass = xPass
Exit Sub
GTINPUT2:
MsgBox "The password is incorrect, please enter the user name and password again."
GoTo GTINPUT
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim xWSh As Worksheet
On Error Resume Next
Set xWSh = Worksheets(gUserName)
xWSh.Protect Password:=gUserPass, DrawingObjects:=False, Contents:=True, Scenarios:= _
False, AllowFormattingCells:=True, AllowFormattingColumns:=True, _
AllowFormattingRows:=True, AllowInsertingColumns:=True, AllowInsertingRows _
:=True, AllowInsertingHyperlinks:=True, AllowDeletingColumns:=True, _
AllowDeletingRows:=True, AllowSorting:=True, AllowFiltering:=True, _
AllowUsingPivotTables:=True
For Each xWSh In Worksheets
If xWSh.Name <> "Main" Then
xWSh.Visible = xlSheetVeryHidden
End If
Next xWSh
ActiveWorkbook.Save
End Sub
3. بعد ذلك، ضع المؤشر في نهاية البرنامج النصي "Private Sub Workbook_Open()" واضغط على مفتاح "F5" لتشغيل هذا الكود. الآن، في مربع الحوار المنبثق، أدخل اسم المستخدم الذي تريد إنشاء ورقة عمل لهذا المستخدم، انظر إلى لقطة الشاشة:
4. وبعد ذلك، انقر فوق زر "موافق"، وفي مربع الحوار التالي، أدخل كلمة مرور لحماية هذه الورقة، انظر إلى لقطة الشاشة:
5. استمر بالنقر فوق زر "موافق"، وسيتم إنشاء ورقة جديدة باسم المستخدم فورًا، ويمكنك إنشاء البيانات لذلك المستخدم حسب الحاجة. انظر إلى لقطة الشاشة:
6. كرر الخطوة 3 إلى الخطوة 5 لإنشاء الأوراق الأخرى التي تريد استخدامها واحدة تلو الأخرى.
7. بعد إنشاء الأوراق، احفظ المصنف الحالي عن طريق النقر على "ملف" > "حفظ كـ". في مربع الحوار "حفظ كـ"، حدد اسم ملف واختر تنسيق "Excel Macro-Enabled Workbook (*.xlsm)" من قائمة "تحديد تنسيق الحفظ"، انظر إلى لقطة الشاشة:
8. ثم انقر فوق زر "حفظ" لحفظ هذا الملف.
9. وبعد ذلك، أغلق المصنف وأعد فتحه، ثم انقر فوق "Enable Content" أعلى شريط الصيغة لتفعيل الكود.
10. الآن، سيظهر مربع منبثق لتذكيرك بإدخال اسم المستخدم وكلمة المرور لفتح الورقة الخاصة بهذا المستخدم.
11. وأخيرًا، عند إرسال هذا المصنف إلى مستخدمين آخرين، يجب عليك إرسال اسم المستخدم وكلمة المرور للمستخدم. لن يتمكنوا من فتح وتحرير أوراقهم الخاصة فقط، ولن يكون لديهم إذن لرؤية أوراق العمل الأخرى.
أفضل أدوات الإنتاجية لمكتب العمل
عزز مهاراتك في Excel باستخدام Kutools لـ Excel، واختبر كفاءة غير مسبوقة. Kutools لـ Excel يوفر أكثر من300 ميزة متقدمة لزيادة الإنتاجية وتوفير وقت الحفظ. انقر هنا للحصول على الميزة الأكثر أهمية بالنسبة لك...
Office Tab يجلب واجهة التبويب إلى Office ويجعل عملك أسهل بكثير
- تفعيل تحرير وقراءة عبر التبويبات في Word، Excel، PowerPoint، Publisher، Access، Visio وProject.
- افتح وأنشئ عدة مستندات في تبويبات جديدة في نفس النافذة، بدلاً من نوافذ مستقلة.
- يزيد إنتاجيتك بنسبة50%، ويقلل مئات النقرات اليومية من الفأرة!
جميع إضافات Kutools. مثبت واحد
حزمة Kutools for Office تجمع بين إضافات Excel وWord وOutlook وPowerPoint إضافة إلى Office Tab Pro، وهي مثالية للفرق التي تعمل عبر تطبيقات Office.





- حزمة الكل في واحد — إضافات Excel وWord وOutlook وPowerPoint + Office Tab Pro
- مثبّت واحد، ترخيص واحد — إعداد في دقائق (جاهز لـ MSI)
- الأداء الأفضل معًا — إنتاجية مُبسطة عبر تطبيقات Office
- تجربة كاملة لمدة30 يومًا — بدون تسجيل، بدون بطاقة ائتمان
- قيمة رائعة — وفر مقارنة بشراء الإضافات بشكل منفرد