هنگامی که از یک کاربرگ محافظت می کنید، اکسل به شما اجازه می دهد تا مشخص کنید کاربر چه کاری می تواند در آن کاربرگ محافظت شده انجام دهد. با استفاده از چک باکس ها در کادر محاوره ای Protect Sheet، می توانید طیف گسترده ای از اقدامات مجاز را انتخاب کنید. (شکل 1 را ببینید.)

شکل 1. کادر محاوره ای Protect Sheet.
یکی از اقدامات مجاز در کادر محاوره ای Protect Sheet درج و حذف سطرها و ستون ها در یک کاربرگ محافظت شده است. این یک ویژگی عالی برای برخی از انواع کاربرگ ها است. اما چیز عجیبی در نحوه عملکرد این ویژگی وجود دارد.
فرض کنید شما یک کاربرگ ایجاد کرده اید و از آن محافظت می کنید. با انجام این کار، نشان می دهید که برای افراد اشکالی ندارد که هم ردیف ها را در کاربرگ محافظت شده درج و حذف کنند. وقتی شخصی سعی می کند یک ردیف را در کاربرگ محافظت شده درج کند، به خوبی وارد می شود. اگر کسی سعی کند یک ردیف را حذف کند - حتی ردیفی که به تازگی درج کرده است - این عمل مجاز نیست. نمی توان آن را انجام داد. چه چیزی می دهد؟ شما در گفتگوی Protect Sheet نشان دادید که افراد می توانند ردیف ها را حذف کنند، اما اکسل هنوز به شما اجازه این کار را نمی دهد.
به نظر می رسد دلیل این امر به نحوه اجرای حفاظت از کاربرگ های اکسل مربوط می شود. به یاد داشته باشید که محافظت برای تمام سلول هایی اعمال می شود که به صورت قفل شده در برگه Protection در کادر محاوره ای Format Cells قالب بندی شده اند. اگر هر سلولی در یک ردیف که می خواهید حذف کنید به صورت Locked قالب بندی شده باشد، محافظت از کاربرگ به شما اجازه حذف ردیف را نمی دهد. اگر تمام سلول های ردیف دارای چک باکس قفل شده باشند، ردیف را می توان با موفقیت حذف کرد. (شکل 2 را ببینید.)

شکل 2. تب Protection از کادر محاوره ای Format Cells.
جالب است که کاربر نمی تواند ردیفی را که اضافه کرده است حذف کند زیرا ردیف اضافه شده قالب بندی سلولی ردیف بالای آن را به ارث می برد. بنابراین، اگر سلول های قفل شده ای در ردیف بالای ردیف درج شده وجود داشته باشد، تا زمانی که کاربرگ محافظت شده باشد، ردیف درج شده قابل حذف نیست.
البته این رفتار برای هیچ توسعه دهنده کاربرگ هایی که واقعاً می خواهند افراد توانایی حذف ردیف های یک کاربرگ را داشته باشند، بدون توجه به قفل بودن سلول های ردیف ها، چندان مفید نیست. اگر شما یکی از این افراد هستید، تنها کاری که می توانید انجام دهید این است که یک ماکرو ایجاد کنید که حذف را برای شما انجام دهد. ماکرو باید مراحل زیر را انجام دهد:
- صفحه کار را حذف کنید
- ردیف را حذف کنید
- دوباره از کاربرگ محافظت کنید
انجام این سه مرحله با استفاده از تکنیک هایی که در شماره های دیگر ExcelTips توضیح داده شده است، نسبتاً آسان است. برای مفید کردن ماکرو، احتمالاً می خواهید کدی را اضافه کنید که اطمینان حاصل کند که کاربر سعی نمی کند ردیف هایی را که نمی خواهید حذف کند (عنوان، مجموع و غیره) حذف کند.