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

مايكرو لاخفاء وحماية المعادلات من التعديل


mizotata

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

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

اولا : اود ان اطرح موضوع يهم معظم المحاسبين

انا صممت شيت واريد علية الاتي

1- اخفاء المعادلات

2- حماية المعادلة من التعديل بحث لا يتم تغييرها

3- ولو امكن لو فية مجال طريقة تحديد خلايا لادخال بيانات فيها فقط طبعا للمستخدمين الاخريين يعني الخلية الاولي والثانية للادخال فقط والثالثة والرابعة لعرض النتائج وهذا ما اريدة في اخفاء المعادلة وحمايتها من التغيير

والملف المرفق بة توضيحا لما انا صممتة بعد البحث في هذا المنتدي الغالي ولكني اريد اخفاء المعادلات وعند فتح الملف لابد من ان افعل المايكروا هل من حل لذلك ولو امكن لا اريد ان يقوم احد اخر بحفظ الملف باسم اخر فلو امكن التوضيح وجزاكم الله خيراً

test_Budget_2009.zip

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

الأخ الغالي ميزوتاتا

بعد التحية العطرة

يمكن فعل ماأردته بدون أكواد وذلك كالآتي:

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

ثم الخطوة الثانية حدد الخلايا المراد حمايتها ومن تنسيق خلايا أضف علامات الصح إلى جانب الخيارين

ثم حماية ورقة وضع كلمة سر لحماية الخلايا ضد التعديل أو الرؤية

عاشق الإكسيل

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

الأستاذ الفاضل نزار

استخدمت هذا الكود فى برنامجى عن المخازن ولكن قام بتعطيل ماكرو ترحيل حتى انى اضفت موضوع جديد لأيجاد حل وكان سؤالى كالأتى :

السادة الكرام مراقبين ومشرفى منتدانا الغالى]

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

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

فهل يتكرم السادة الكرام بايجاد حل لهذه المشكله

وكود اخفاء المعادلة:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

If Target.HasFormula Then

MsgBox"الخلية محمية"

ActiveSheet2.Protect

Else

ActiveSheet2.Unprotect

End If

End Sub

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

ولسيادتكم جزيل الشكر

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

السلام عليكم

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

MyPassword = "123"
For Each MySheet In ActiveWorkbook.Sheets
MySheet.Protect _
Password:=MyPassword, _
DrawingObjects:=True, _
Contents:=True, _
Scenarios:=True, _
UserInterfaceOnly:=True
Next MySheet

مع الشكر

ابو خالد

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

  • 3 weeks later...
الاخ الفاضل الاستاذ: نزار سليمان

هل يمكن عن طريق الكود حماية خلايا معينة فى الورقة

احددها له فى الكود وتكون هى فقط المحمية من التعديل

وشكرا

السلام عليكم

عذرا على التاخر في الرد

نعم اخي صفوت يمكنك ذلك باتباع الخطوات ادناه

1- تظليل الورقة بالكامل

2- كليك يمين

3- تنسيق خلايا

4- حماية يوجد مربعين الغي علامة الصح

5- حدد الخلايا المراد حمايتها بالضغط على Ctrl وباللفارة لتحديد الخلايا

6- تنسيق الخلايا

7- حماية وضع علامة صح على المربعين للحماية واخفاء المعادلة

ارجو ان يكون الشرح واضح

مع الشكر

ابو خالد

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

اخ يوسف اثناء فتح ملف اكسيل اضغط Alt+F11

ثم اذهب الي insert ثم الي Module انسخ الكود من المشاركات والصقه

الكود ده أنا جيبته من خبير المنتدى الأستاذ خبور خير

وعملت زى ماحضرتك قولتلى لكن برضه مالقتش الكود إتنفذ

ممكن بالتفصيل يا استاذى الغالى ؟؟

Private Sub Workbook_SheetActivate(ByVal Sh As Object)

On Error Resume Next

Dim XX As String, S As String

Dim K As Integer, N As Integer

If Sh.CodeName <> "ورقة1" Then

Sh_Name = Sh.Name

Else

ورقة1.Columns.Hidden = True

For K = 1 To 3

XX = InputBox(Prompt:="فضلا ادخل كلمة المرور", Title:="المحاولة رقم:" & K)

If XX = "" Then

Sheets(Sh_Name).Select

Exit Sub

ElseIf XX <> "kh" Then

N = 3 - K

If N = 0 Then S = "" Else S = "متبقي عدد " & N & " محاولة"

MsgBox "كلمة المرور ليست صحيحة" & Chr(13) & Chr(13) & S, vbCritical + vbMsgBoxRtlReading + vbMsgBoxRight, "عفواً"

Else

Exit For

End If

Next K

If K = 4 Then

Sheets(Sh_Name).Select

Exit Sub

Else

ورقة1.Columns.Hidden = False

End If

End If

On Error GoTo 0

End Su

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

اخ يوسف اثناء فتح ملف اكسيل اضغط Alt+F11

ثم اذهب الي insert ثم الي Module انسخ الكود من المشاركات والصقه

الكود ده أنا جيبته من خبير المنتدى الأستاذ خبور خير

وعملت زى ماحضرتك قولتلى لكن برضه مالقتش الكود إتنفذ

ممكن بالتفصيل يا استاذى الغالى ؟؟

Private Sub Workbook_SheetActivate(ByVal Sh As Object)

On Error Resume Next

Dim XX As String, S As String

Dim K As Integer, N As Integer

If Sh.CodeName <> "ورقة1" Then

Sh_Name = Sh.Name

Else

ورقة1.Columns.Hidden = True

For K = 1 To 3

XX = InputBox(Prompt:="فضلا ادخل كلمة المرور", Title:="المحاولة رقم:" & K)

If XX = "" Then

Sheets(Sh_Name).Select

Exit Sub

ElseIf XX <> "kh" Then

N = 3 - K

If N = 0 Then S = "" Else S = "متبقي عدد " & N & " محاولة"

MsgBox "كلمة المرور ليست صحيحة" & Chr(13) & Chr(13) & S, vbCritical + vbMsgBoxRtlReading + vbMsgBoxRight, "عفواً"

Else

Exit For

End If

Next K

If K = 4 Then

Sheets(Sh_Name).Select

Exit Sub

Else

ورقة1.Columns.Hidden = False

End If

End If

On Error GoTo 0

End Su

أخى العزيز / يوسف باشا عطا

أحياناً الكود لايعمل إلا بعد الحفظ وغلق الأكسيل ثم فتحه مرة أخرى

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

السلام عليكم

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

ويوجد طريقة اخرى بعيدا عن النسخ واللصق وهى باختصار

1) افتح الملف الملف الموجود به الكود المراد نسخه

2) افتح الملف المراد نسخ الكود اليه ( لاحظ ان الملفين مفتوحين )

3) ALT+F11

4) من اقصى اليسار فى صفحة المديولات اسحب الكود المراد الى الملف الثانى

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

السلام عليكم

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

ويوجد طريقة اخرى بعيدا عن النسخ واللصق وهى باختصار

1) افتح الملف الملف الموجود به الكود المراد نسخه

2) افتح الملف المراد نسخ الكود اليه ( لاحظ ان الملفين مفتوحين )

3) ALT+F11

4) من اقصى اليسار فى صفحة المديولات اسحب الكود المراد الى الملف الثانى

طريقة سهلة شكراً لك

بس لو سحبت الكود من الملف المصدر للملف الهدف هل ينسخه إليه أم ينقله إليه ؟؟

كمان لو فى أكتر من كود فى الورقة هل تصلح هذه الطريقة ؟؟

آخر سؤال ما الفرق بين وضع الكود فى موديول أو فى الشيت أو فى الوورك شيت ؟؟ الف شكر

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

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

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



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

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

Important Information