اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

الردود الموصى بها

قام بنشر

سلام الله على اخوتي و سادتي الاساتذة 

ارجو منكم مساعدتي بتحديد صلاحيات في ملف اكسل مكون من ثلاث صلاحيات 

1 - للقراءة فقط

2- كل الصلاحيات متاحة

3- تعيين admin

من خلال ملف اكسل Excel VBA مفتوح لاتمكن من الاستفادة من الملف ..جعل الله هذه المساعدة في ميزان حسناتكم و جوزيتم الجنة ان شاء الله

قام بنشر
منذ ساعه, خالد المخزومي said:

سلام الله على اخوتي و سادتي الاساتذة 

ارجو منكم مساعدتي بتحديد صلاحيات في ملف اكسل مكون من ثلاث صلاحيات 

1 - للقراءة فقط

2- كل الصلاحيات متاحة

3- تعيين admin

من خلال ملف اكسل Excel VBA مفتوح لاتمكن من الاستفادة من الملف ..جعل الله هذه المساعدة في ميزان حسناتكم و جوزيتم الجنة ان شاء الله

Sub SetPermissions()
    Dim filePath As String
    Dim permissionType As Integer
    
    ' تحديد مسار الملف
    filePath = "C:\مسار\الملف.xlsx"
    
    ' اختيار نوع الصلاحية: 1 - للقراءة فقط، 2 - كل الصلاحيات متاحة، 3 - تعيين admin
    permissionType = 2
    
    ' فتح الملف بناء على الصلاحية المحددة
    Select Case permissionType
        Case 1
            ' فتح الملف للقراءة فقط
            Workbooks.Open filePath, ReadOnly:=True
        Case 2
            ' فتح الملف بكل الصلاحيات
            Workbooks.Open filePath
        Case 3
            ' فتح الملف كمسؤول (admin)
            Workbooks.Open filePath
            SetAttr filePath, vbReadOnly
    End Select
End Sub

يرجى استبدال "C:\مسار\الملف.xlsx" بالمسار الفعلي لملف Excel الذي ترغب في تعيين الصلاحيات له.

 

هذا الكود يفتح الملف بناءً على نوع الصلاحية المحددة وفقًا للخيارات التي قمت بتحديدها (للقراءة فقط، كل الصلاحيات متاحة، تعيين admin).

احترامي وتقديري 

  • Like 1
قام بنشر (معدل)

abouelhassan

هذ الجزء من الكود غير مفهوم لي ارجوا توضيحة وشكرا مقدما

هذا الكود يفتح الملف بناءً على نوع الصلاحية المحددة وفقًا للخيارات التي قمت بتحديدها (للقراءة فقط، كل الصلاحيات متاحة، تعيين admin).

تم تعديل بواسطه بلانك
قام بنشر
4 ساعات مضت, abouelhassan said:
Sub SetPermissions()
    Dim filePath As String
    Dim permissionType As Integer
    
    ' تحديد مسار الملف
    filePath = "C:\مسار\الملف.xlsx"
    
    ' اختيار نوع الصلاحية: 1 - للقراءة فقط، 2 - كل الصلاحيات متاحة، 3 - تعيين admin
    permissionType = 2
    
    ' فتح الملف بناء على الصلاحية المحددة
    Select Case permissionType
        Case 1
            ' فتح الملف للقراءة فقط
            Workbooks.Open filePath, ReadOnly:=True
        Case 2
            ' فتح الملف بكل الصلاحيات
            Workbooks.Open filePath
        Case 3
            ' فتح الملف كمسؤول (admin)
            Workbooks.Open filePath
            SetAttr filePath, vbReadOnly
    End Select
End Sub

يرجى استبدال "C:\مسار\الملف.xlsx" بالمسار الفعلي لملف Excel الذي ترغب في تعيين الصلاحيات له.

 

هذا الكود يفتح الملف بناءً على نوع الصلاحية المحددة وفقًا للخيارات التي قمت بتحديدها (للقراءة فقط، كل الصلاحيات متاحة، تعيين admin).

احترامي وتقديري 

هل تتكرمون بمثال حول هذا الموضوع

 

قام بنشر

السلام عليكم ..اشكركم على محاولتكم مساعدتي ..لكن توجد امور غير مفهومة 

كيف سيعلم الاكسس انني اربد تفعيل صلاحية للقراءة فقط اذا لم احدد انا اسم المستخدم وكلمة المرور ليعرف الاكسل ان هذا الشخص اعطيت له صلاحية القراءة فقط ..وهكذا بالنسبة لباقي الصلاحيات ..ان امكنكم كتابة مثال بالاكسل اكون من الشاكرين

قام بنشر
11 دقائق مضت, خالد المخزومي said:

السلام عليكم ..اشكركم على محاولتكم مساعدتي ..لكن توجد امور غير مفهومة 

كيف سيعلم الاكسس انني اربد تفعيل صلاحية للقراءة فقط اذا لم احدد انا اسم المستخدم وكلمة المرور ليعرف الاكسل ان هذا الشخص اعطيت له صلاحية القراءة فقط ..وهكذا بالنسبة لباقي الصلاحيات ..ان امكنكم كتابة مثال بالاكسل اكون من الشاكرين

 يمكنك نسخ الكود المذكور في إجابتي السابقة ولصقه في وحدة VBA في ملف Excel الخاص بك. بعد ذلك، يمكنك تعديل المسار المحدد إلى مسار ملف Excel الذي ترغب في تطبيق الصلاحيات عليه

بالطبع، يُحقق الكود الصلاحيات المحددة عن طريق استخدام وظيفة `Workbooks.Open` في VBA، التي تسمح بفتح ملف Excel بصلاحيات معينة. 

1. في البداية، يتم تعريف مسار الملف باستخدام متغير `filePath`.
2. ثم يتم تحديد نوع الصلاحية المطلوبة باستخدام متغير `permissionType`.
3. يتم استخدام بنية التحكم `Select Case` لتحديد الصلاحية المطلوبة وفتح الملف بناءً على ذلك.
4. إذا كانت الصلاحية محددة كـ "للقراءة فقط" (permissionType = 1)، يتم فتح الملف مع الخاصية `ReadOnly:=True`، مما يعني أنه لا يمكن تعديل الملف.
5. إذا كانت الصلاحية محددة كـ "كل الصلاحيات متاحة" (permissionType = 2)، يتم فتح الملف دون أي قيود.
6. إذا كانت الصلاحية محددة كـ "تعيين admin" (permissionType = 3)، يتم فتح الملف ثم تعيين خاصية القراءة فقط للملف باستخدام `SetAttr`، مما يجعله لا يمكن تعديله إلا بإلغاء هذه الخاصية.

هذا الكود يتيح لك التحكم في صلاحيات فتح الملف بشكل دقيق وفقًا للمتطلبات التي تحددها.

  • Like 1
قام بنشر
 يمكن تبسيط الكود قليلاً لتحقيق التسهيل. فيما يلي نسخة مبسطة من الكود:


Sub OpenExcelFileWithPermissions()
    Dim filePath As String
    Dim permissionType As Integer
    
    ' تحديد مسار الملف
    filePath = "C:\مسار\الملف.xlsx"
    
    ' اختيار نوع الصلاحية: 1 - للقراءة فقط، 2 - كل الصلاحيات متاحة، 3 - تعيين admin
    permissionType = 2
    
    ' فتح الملف بناء على الصلاحية المحددة
    Select Case permissionType
        Case 1
            Workbooks.Open filePath, ReadOnly:=True
        Case 3
            Workbooks.Open filePath
            SetAttr filePath, vbReadOnly
        Case Else
            Workbooks.Open filePath
    End Select
End Sub
```

هذا الكود يقوم بفتح الملف بناءً على الصلاحية المحددة دون الحاجة إلى إعادة فتح الملف مرتين للحالات 2 و 3. يجب على المستخدمين تعديل المسار المحدد في المتغير `filePath` ليناسب مسار الملف الخاص بهم.

إذا كان الكود لا يعمل، فمن المحتمل أن هناك مشكلة تحتاج إلى التحقق منها. هنا بعض النقاط التي يجب التحقق منها:

1. **المسار الصحيح للملف**: تأكد من أن المسار الذي تم تحديده في المتغير `filePath` يشير بالفعل إلى الملف Excel الذي تريد تطبيق الصلاحيات عليه. يجب أن يكون المسار مكتوب بشكل صحيح مع تحديد امتداد الملف (مثل .xlsx).

2. **رسائل الخطأ**: هل تظهر أي رسائل خطأ عند تشغيل الكود؟ إذا كان الأمر كذلك، فما هي هذه الرسائل؟ قد توفر رسائل الخطأ معلومات مفيدة حول سبب عدم عمل الكود.

3. **صلاحيات الملفات**: تحقق من أنك تمتلك الصلاحيات الكافية لفتح وتعديل الملف. قد تواجه مشكلة إذا كان الملف محميًا بكلمة مرور أو إذا كان لديك صلاحيات محدودة على المجلد الذي يحتوي على الملف.

4. **إصدار VBA**: تأكد من أن الإصدار الخاص بـ VBA مفعل ويعمل بشكل صحيح على جهاز الكمبيوتر الخاص بك.

5. **تعطيل الأمان**: قد تحتاج إلى التحقق مما إذا كانت إعدادات الأمان في Excel تمنع تشغيل الكود. قد تحتاج إلى تمكين الماكروهات والـ VBA في Excel.

وانا موجود اخى بالخدمة 

  • Like 1

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information