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

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

قام بنشر

السلام عليكم

الساده الافاضل

بعد الاطلاع علة موضوه

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

ارجو الافاده

ActiveSheet.Unprotect

و

ActiveSheet.protect

فى ذلك الكود

حيث ان shet clode له حمايه بكلمه سر  123456

Sub tarheel()
Application.ScreenUpdating = False
  With Sheets("ÚÇã")
     LR = .[i65000].End(xlUp).Row
     For I = 5 To LR
        If Cells(I, "W") <> "Êã ÇáÊÑÍíá" And Cells(I, "G") <= 10 Then
         .Cells(I, "W") = "Êã ÇáÊÑÍíá"
         .Range(.Cells(I, "I"), .Cells(I, "R")).Copy
     With Sheets("Close")
         nr = .[b65000].End(xlUp).Row + 1
            .Cells(nr, "B").PasteSpecial Paste:=xlPasteValues
            Application.CutCopyMode = False
            Sort_Close
     End With
     End If
     Next
  End With
     Sort_General
Application.ScreenUpdating = True
End Sub

 

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

  • Like 1
قام بنشر

علي حسب ما فهمت .... حيث ان طلبك غير واضح حيث ان الكود المرفق

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

مع ملاحظة انه ارفاق ملف يسهل الطلب اكثر

يمكنك وضع الغاء الحماية في البداية ثم وضع الحماية في النهاية علي سبيل المثال

Sub tarheel()
Sheets("shet clode").Unprotect "123456"
 Application.ScreenUpdating = False
   With Sheets("ÚÇã")
      LR = .[I65000].End(xlUp).Row
      For I = 5 To LR
         If Cells(I, "W") <> "Êã ÇáÊÑÍíá" And Cells(I, "G") <= 10 Then
          .Cells(I, "W") = "Êã ÇáÊÑÍíá"
          .Range(.Cells(I, "I"), .Cells(I, "R")).Copy
      With Sheets("Close")
          nr = .[B65000].End(xlUp).Row + 1
             .Cells(nr, "B").PasteSpecial Paste:=xlPasteValues
             Application.CutCopyMode = False
             Sort_Close
      End With
      End If
      Next
   End With
      Sort_General
 Application.ScreenUpdating = True
Sheets("shet clode").protect "123456"
 End Sub
قام بنشر (معدل)

الاخ العزيز حماده

مرفق الملف

تم عمل هذا الملف بيد اخى العزيز بن عليه حاجى

المطلوب عمل حمايه لشيت close دون اى يؤثر ذلك على عمليه الترحيل

هل من سبيل

 

تم تعديل بواسطه ۩◊۩ أبو حنين ۩◊۩
  • أفضل إجابة
قام بنشر

السلام عليكم

الاخ الكريم / ۩◊۩ أبو حنين ۩◊۩

بارك الله فيك

ان شاء الله سيكون التعديل علي كود الترحيل كالتالي  دون ان يأثر علي عملية الترحيل ويبقي شي CLOSE محمي

Sub tarheel()
Application.ScreenUpdating = False
'=========================================
Sheets("Close").Unprotect "123456"
'=========================================

  With Sheets("ÚÇã")
     LR = .[I65000].End(xlUp).Row
     For I = 5 To LR
        If Cells(I, "W") <> "Êã ÇáÊÑÍíá" And Cells(I, "G") <= 30 Then
         .Cells(I, "W") = "Êã ÇáÊÑÍíá"
         .Range(.Cells(I, "I"), .Cells(I, "R")).Copy
     With Sheets("Close")
         nr = .[B65000].End(xlUp).Row + 1
            .Cells(nr, "B").PasteSpecial Paste:=xlPasteValues
            Application.CutCopyMode = False
            Sort_Close
     End With
     End If
     Next
  End With
     Sort_General
Application.ScreenUpdating = True
'=========================================
Sheets("Close").Protect "123456"
'=========================================

End Sub

وذلك باضافة السطر التالي ... للازالة حماية الورقة برقم سري هو  123456  وذلك ليتم حينها تنفيذ الكود المطلوب

Sheets("Close").Unprotect "123456"

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

Sheets("Close").Protect "123456"

تقبل خالص تحياتي

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

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

الاخ العزيز حمادة

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

وجزا الله جميع من فى الموقع

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

واستسمحك فة هذا السؤال 

ما الفرق بين هذا الكود والكود الذى سابقه

وما قيمه او فائدة تلك الخطوط =============== فى الكود

 جزاك الله خير

شاكر لك تعاونك

تم تعديل بواسطه ۩◊۩ أبو حنين ۩◊۩
قام بنشر

السلام عليكم

الاخ الكريم / ۩◊۩ أبو حنين ۩◊۩

بارك الله فيك

** بالنسبة للفرق بين الكود ين ... لا يوجد فرق الا السطرين المضافين

  حيث انه عند حمايتك لورقة  CLOSE  وتنفيذك للكود عند وضع الحماية افنك تطلب من الكود نقل بيانات الي خلايا في شيت محمي

  وبالتالي فان الاكسيل لن يقبل هذا الامر مع شيت محمي

  ولذلك تم اضافة السطرين الموضحين في المشاركة السابقة

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

  الثاني ... لاعادة الحماية للشيت بعد تنفيذ كود الترحيل

اي ان الحماية لا يتم ازالتها عن الشيت CLOSE  الا في خلال لحظات تنفيذ الكود فقط

 

** اما عن الخطوط التي تقصدها

'=========================================

فهي خطوط وضعتها لتوضيح السطرين المضافين لك فقط ... وليس لهم اي وظيفة نهائيا

حيث عند قيامك بوضع علامة ( ' ) الموجود علي حرف الطاء ولكن بالانجليزيه في محرر الاكواد في بداية سطر

فان محرر الاكواد vba يفهم ان هذا السطر ليس له وجود اي يكون سطرا ملغي نهائيا ولا يراه عند تنفيذ الكود

 

ارجو ان اكون قد اوصلت المعلومة لك كما تريدها تماما

تقبل خالص تحياتي

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

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