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

كود لاخفاء الصيغ والاكواد


skyblue

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

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

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

وشكرا

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

السلام عليكم ...

أعتقد أن مشكلتك لا تحتاج لكود ، فقط جرب الطريقة الموجودة في الرابط التالي:

http://www.officena.net/ib/index.php?showtopic=7162

وإن لم يكن هذا قصدك فنحن جاهزون للتكويييد :d

تحياتي :fff:

تم تعديل بواسطه محمد حجازي
رابط هذا التعليق
شارك

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

استاذي الفاضل

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

لذا اتمنى ان يكون اخفاء الصيغ والاكواد بكود برمجي .

وتقبل تحياتي

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

بسم الله الرحمن الرحيم

جرب الكود التالي

Sheets("1").Protect Password:="6251036", DrawingObjects:=True, Contents:=True, Scenarios:=True
ولفك حماية الورقة جرب الكود التالي
 Sheets("1").Unprotect Password:="6251036"

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

اسم الورقة التي يتم حمايتها بالكود السابق هو "1" عليك تغيره ليطابق اسم الورقة التي ترغب بحمايتها

كلمة المرور المحددة بهذا الكود هي 6251036

جرب وسترى النتيجة

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

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

هل يقوم الكود الخاص بحماية ورقة العمل بإلغاء الإشارة عند خيار تحديد الخلايا المؤمنة

وإذا كان لا فكيف أقوم بذلك عن طريق الكود

ولكم تحياتي،،

منسق

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

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

انا اقصد ان ان اي شخص دخل على الملف وعمل ALT+F11 لاتظهر لديه الاكواد ويتم مطالبته بالرقم السري . ونفس الحال بالنسبة للمعادلات التي تظهر في شريط الصيغة .. ارغب في عدم ظهورها الا عن طريق رقم سري واتمنى التكرم ان يكون ذلك بمثال .

وشكرا

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

بامنكانك فعل ذلك بدون كود

اضغط alt+f11 تظهر شاشة الفيجوال بيسك

على يسارك

تجد vba project ثم بين قوسين اسم الملف المفتوح

اضغط برز الماوس اليمين ستظهر لك نافذة اختار منها vbaproject propereites

بالعربي خصائص مشرو ع فيجوال بيسك

اختارها سيظهر لك مربع حواري فية علامتي تبويب احدها باسم protection

اختارها وادخل كلمة المرورو التي تريد

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

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

الأستاذ m.hindawi

جربت الكود وعندي طلبين

الأول كيف أعمم الكود على جميع الأوراق في مرة واحدة

والثاني أنني عندما أقوم بحماية الورقة بالكود يكون تحديد الخلايا المؤمنة غير فعال كما أريد

ولكن عند حفظ المصنف وفتحه من جديد يكون تحديد الخلايا المؤمنة فعال وهذا ما لا أريد

فهل أجد لديكم الحل وشكراً

تحياتي،،

منسق

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

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

اخي الكريم

فقط وضح المطلوب بالتحديد

وساحاول ان ارفق لك الكود

البرمجة ب VBA يطلق عليها اسم البرمجة المسيرة بالاحداث بمعنى اخر هناك حدث يقوم به المستخدم وينتج عنه ردة فعل من البرنامج

عليك ان تحدد الحدث لمعرفة ماذا تريد من البرنامج بالضبط ان يفعل

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

ام انك تريد حماية جميع الاوراق اذا ضغطت على زر الامر ومانوع الحماية التي تريدها اذا كانت حماية للخلايا المؤمنة ام لا

وكيف تربد ان تزول الحماية

الخ.......... من الامور

تم تعديل بواسطه m.hindawi
رابط هذا التعليق
شارك

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

الأستاذ: m.hindawi

نعم ما أريده هو أن يكون في المصنف زران واحد لحمياة جميع أوراق المصنف والتي تتعدى على المئة ورقة عمل والآخر للإلغاء الحماية وهذان الزران لا يستعملهما غيري

ومهم جداً أن تكون الحماية كاملة أي أن لا يستطيع المستخدم تحديد الخلايا المؤمنة

وللمعلومية فأنا أستخدم أوفيس 2003

ولكم جزيل الشكر

منسق

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

بسم الله الرحمن الرحيم

اولا عليك ان تدرج ورقة جديدة في ملفك وسميها protection

افتح محرر فيجوال بيسك وفي كود الورقة التي انشاتها تحت الحدث activate

ادرج الكود التالي

myno = InputBox("Password required" & Chr(13) & "to show this page you have to enter password  ", "please enter password")
If IsNull(myno) Or myno = "" Then GoTo 20
If myno = "6251036" Then
MsgBox "ok go ahead "
Else
MsgBox "Wrong Password" & Chr(13) & " sorry bad password!", vbOKOnly
20
Sheets("main").Activate
End If
طبعا بافتراض ان اورقة الرئيسية في ملفك اسمها "main" اذا كان لها اسم اخر غيره في الكود ثانيا من القائمة insert اختر new moudle ادرج فيه الكود التالي
Sub pro()
Dim ws As Worksheet
For Each ws In Worksheets
      ws.EnableSelection = xlUnlockedCells
    ws.Protect Password:="6251036", DrawingObjects:=True, Contents:=True, Scenarios:=True
   

Next
End Sub
الان افتح موديل اخر وادرج فيه الكود التالي
Sub unp()



Dim ws As Worksheet
For Each ws In Worksheets
      ws.EnableSelection = xlUnlockedCells
      ws.Unprotect Password:="6251036"

Next

End Sub

الان الملف جاهز

وما عليك الا ان تنشا عدد 2 زر ماكرو في الورقة الجديدة التي انشاتها من القائمة نماذج وتعين الماكرو الاول للزر الاول والماكرو الثاني للزر الثاني

كلمات المروو في كل الاحالات هي 6251036

تستطيع تغيرها كما تشاء

ملاحظة اذا كان لديك اي استفسار ادرجه في موضوع جديد

لان هذا الموضوع طال

تم تعديل بواسطه m.hindawi
رابط هذا التعليق
شارك

  • 1 year later...
زائر
هذا الموضوع مغلق.
  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

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

Important Information