Jasmin قام بنشر سبتمبر 20, 2021 مشاركة قام بنشر سبتمبر 20, 2021 سلام اخوتي كيف يمكن حماية cells من التعديل اليدوي مع امكانية التعديل الاوتوماتيكالي 1 رابط هذا التعليق شارك More sharing options...
أفضل إجابة أ / محمد صالح قام بنشر سبتمبر 20, 2021 أفضل إجابة مشاركة قام بنشر سبتمبر 20, 2021 * يمكن بعمل حماية للخلايا بكلمة مرور هكذا لا يمكن التعديل اليدوي إلا بكتابة كلمة المرور * وبالنسبة لتعديل الخلايا المحمية بالكود فيجب وضع سطر فك الحماية في بداية الإجراء ActiveSheet.UnProtect password:="mas" ويجب وضع سطر الحماية قبل نهاية الإجراء ActiveSheet.Protect password:="mas" حيث mas هي كلمة المرور المطلوبة بالتوفيق 3 رابط هذا التعليق شارك More sharing options...
Jasmin قام بنشر سبتمبر 21, 2021 الكاتب مشاركة قام بنشر سبتمبر 21, 2021 شكرا لكم أنا عندي الكود أعلاه على الورقة 2 -اسمها transaction - والورقة 1 Stock2021-2022 أسندتها للمعرف fo وهي المحمية والتي أريد فتحها بالكود كما كتبتم فكيف أفعل؟ Option Explicit Dim fo As Worksheet Dim ln&, x!, s& Private Sub Worksheet_Change(ByVal Target As Range) If Target.Cells.CountLarge > 1 Then Exit Sub If Target.Row > 2 And Target.Column = 7 Then Application.EnableEvents = False Set fo = Sheets("Stock2021-2022") If Range("B" & Target.Row) <> "" And Range("F" & Target.Row) <> "" Then ln = WorksheetFunction.Match(Target.Offset(0, -5), fo.Range("C:C"), 0) x = fo.Cells(ln, 5) 'Stok initial sur la feuille OldStock2021-2022 Cells(Target.Row, 3) = fo.Range("D" & ln) 'Description Cells(Target.Row, 4) = fo.Range("G" & ln) 'Prix Cells(Target.Row, 5) = x 'Stock initial s = IIf(Target.Offset(0, -1) = "Sell", -1, 1) 'sens du mouvement = 1 pour retour,-1 pour vente Cells(Target.Row, 9) = Target.Value * s + x 'Stock final fo.Range("E" & ln) = Target.Value * s + x 'Nouveau stock mis à jour Range("A" & Target.Row) = Date 'ou = Now si on veut l'horodate Else MsgBox "Saisies incomplètes.", 16 Exit Sub End If End If Application.EnableEvents = True End Sub Sub Evenement() Application.EnableEvents = True End Sub رابط هذا التعليق شارك More sharing options...
أ / محمد صالح قام بنشر سبتمبر 21, 2021 مشاركة قام بنشر سبتمبر 21, 2021 لتطبيق فكرة الحل على ملفك بعد هذا السطر If Range("B" & Target.Row) <> "" And Range("F" & Target.Row) <> "" Then نضع سطر فك الحماية fo.UnProtect password:="mas" وقبل سطر else نضع سطر الحماية fo.Protect password:="mas" حيث mas هي كلمة المرور بالتوفيق 1 رابط هذا التعليق شارك More sharing options...
Jasmin قام بنشر سبتمبر 21, 2021 الكاتب مشاركة قام بنشر سبتمبر 21, 2021 شكرا لكم سأحاول غدا وأرسل لكم.. 1 رابط هذا التعليق شارك More sharing options...
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.