لدي برنامج نصي يسمح لي بقفل الخلايا بناءً على شرط
إذا كانت الخلية D3 = 'X' ، قم بحماية الخلايا c3: d35
لكني أرغب في تكرار نفس الحالة لعدة خلايا أخرى (أي 12 عمودًا - على أساس التقويم)
ما هي أفضل طريقة للقيام بذلك وأنا أعاني؟
ورقة عمل فرعية خاصة_Activate ()
إذا لم يكن ActiveSheet.ProtectContents ثم
المدى ("d3"). مغلق = خطأ
النطاق ("c4: c35"). مغلق = خطأ
إنهاء حالة
نهاية الفرعية
تغيير ورقة العمل الفرعية الخاصة (الهدف حسب القيمة كنطاق)
Dim xRg كنطاق ، xRgA كمدى
على خطأ استئناف التالي
Application.EnableEvents = خطأ
تعيين xRg = Range ("c4: c35")
تعيين xRgA = النطاق ("d3")
إذا تقاطع (الهدف ، xRg). العنوان <> الهدف. العنوان _
أو xRgA = "قيد المراجعة" ثم
Application.EnableEvents = صحيح
خروج الفرعية
ElseIf ActiveSheet.ProtectContents _
وتقاطع (الهدف ، xRg) = الهدف _
و xRgA.Value = "موافق عليه" ثم
xRgA. حدد
إنهاء حالة
Application.EnableEvents = صحيح
نهاية الفرعية