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

كيف يمكن تمكين أزرار الاكواد مع حماية صفحة العمل


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

السلام عليكم

فرضاً أن أسم الورقة التي فيها زر الكود اي الاسم الاساسي وليس المستعار (sheet1) وأن باسورد الحماية (123)

هذا السطر في أول الكود وعمله الغاء الحماية عند تنفيذ الكود


sheet1.Unprotect ("123")

اذا تريد استخدام اسم الورقة المستعار إستخدم الاسلوب التالي فرضاً ان اسم الورقة (بيانات)

sheets("بيانات").Unprotect ("123")

وهذا السطر في نهاية الكود قبل End Sub عملة إسترجاع كلمة المرور للحماية بعد تنفيذ الكود

sheet1.Protect PASSWORD:="123"

أو بإسم الشيت المستعار

sheets("بيانات").Protect PASSWORD:="123"

أرجو أن تكون أتضحت الفكرة

والسلام عليكم

رابط هذا التعليق
شارك

الاخ الكريم في بداية الماكرو ضع هذا الكود


Dim WB			  As Workbook

Dim WS			  As Worksheet

On Error Resume Next

    Set WB = ActiveWorkbook

    For Each WS In WB.Worksheets

    WS.Unprotect

    Next

و في نهاية الماكرو ضع الكود

For Each WS In WB.Worksheets

    WS.Protect

    Next

او لاحظ المرفق

رابط هذا التعليق
شارك

أستاذ يحياوى جزاك الله خيرا

لكن تظهر لى رسالة تطلب منى باس ورد الحماية كلما قمت بعمل حفظ PDF

فهل ممكن إدخال باسورد الحماية داخل الكود فى الفيجوال لتخطى هذه الرسالة

ولو يتكرم علينا الأخ alidroos والأخ اا عبدالله المجرب اا جزاهما الله خيرا

بتطبيق المطلوب على الكود المرفق

رابط هذا التعليق
شارك

كود الأخ يحياوى جعل الملف يعمل حاجات غريبة قبل الحفظ بصيغة الـ pdf

الرجاء تكرم الإخوه بتعديل الكودين السابقين للحماية

ولو يتكرموا ويدرجوا داخلالكود مسار معين لحفظ الملف لانى مش عارف ليه بيحفظه فى الدكيومنتس

رابط هذا التعليق
شارك

أخى الكريم يحياوى

جزاك الله خيرا

كودك مميز ولكن ينقصنى أمرين

حفظ ملف الـPDF باسم محتوى خلية معينة داخل الملف

وإضافة مسار ملف الاكسيل ليحفظ فيه ملف الـ PDF

وأتمنى أن لا يتعارض هذا الكود مع باقى أكواد الملف

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

رابط هذا التعليق
شارك

أخي الكريم أبو عاصم

وبعد إذن الأساتذة

تم تعديل الكود لقراءة اسم الملف من الخلية a1

وإذا كنت تقصد بـ : إضافة مسار ملف الاكسيل ليحفظ فيه ملف الـ PDF

أن يحفظ الكود في نفس مسار ملف الإكسل بدون استعراض للمجلدات لاختيار واحد منها

يمكنك استبدال كود Macro1 بما يلي:


Sub Macro1()

	Dim WB As Workbook

	Dim WS As Worksheet

	On Error Resume Next

	Set WB = ActiveWorkbook

	For Each WS In WB.Worksheets

	WS.Unprotect

	Next

	   ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _

		ThisWorkbook.Path & "\" & ActiveSheet.Range("a1").Value & ".pdf", Quality:=xlQualityStandard, _

		IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _

		True

	For Each WS In WB.Worksheets

	WS.Protect

	Next

End Sub

لاحظ أن كلمة ThisWorkbook.Path & "\" هي المسئولة عن مسار الملف الحالي

وكلمة ActiveSheet.Range("a1").Value & ".pdf" هي المسئولة عن قراءة اسم الملف من الخلية a1

رابط هذا التعليق
شارك

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

الشكر مقدم لجميع الأخوة المشاركين الاستاذ عبد الله المجرب و الاستاذ يحياوى

و الاستاذ محمد صلاح والأستاذ alidroos

المشاركة الأخير للاستاذ محمد صلاح فيها مشكلتين

الاولى غن الكود يقوم بعمل حماية لجميع صفحات الملف فهل يمكن قصرها على شيت معين

الثانى تظهر رسالة عند الحفظ بـ pdf تطلب رقم حماية الشيت فهل من الممكن تجاهل ذلك وعدم طلب الرقم

أما الحفظ فى المجلد المحدد فهو يعمل بصيغة جيدة

فهل من الممكن تعديل الكود الأول الذى أعده الأستاذ أبو عبد الله

الذى أرفقته سابقا ليعمل على حفظ ملف pdf فى المجلد الذى يحوى ملف الأكسيل

عن طريق إدراج ذلك فى الكود لان الملف بيحفظ فى الـ documentes

شكرا لكم

والسلام عليكم

رابط هذا التعليق
شارك

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



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

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

Important Information