اذهب الي المحتوي
أوفيسنا

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

قام بنشر

السلام عليكم

فرضاً أن أسم الورقة التي فيها زر الكود اي الاسم الاساسي وليس المستعار (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

شكرا لكم

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

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