سبد خرید
0

محصولی در سبد خرید نیست.

بازگشت به فروشگاه

۲ نکته مهم در امنیت فایل های اکسل

قفل کردن فایل اکسل
۴.۳/۵ - (۲۹ امتیاز)

قفل کردن فایل اکسل

قفل کردن فایل اکسل (Protect) به دلایل مختلف برای ما همیشه مهم بوده. قفل کردن فایل و محافظت کردن (Protection) از اون، علت های مختلفی می تونه داشته باشه. با محافظت از فایل یا همون قفل کردن فایل می تونیم به نتایج زیر برسیم:

  1. عدم نمایش شیت های فایل برای کسی که پسورد رو نداره
  2. کاهش دسترسی فرد برای ویرایش فایل
  3. کاهش دسترسی فرد در جهت کپی اطلاعات (با این روش قفل کردن فرد حتی امکان کپی کردن داده های خام رو نیز نخواهد داشت)
  4. کاهش دسترسی فرد جهت مشاهده فرمول ها

و …

علاوه بر موارد بالا، کاربرد خیلی مهمی که در قفل کردن فایل اکسل وجود دارد، جلوگیری از تغییر غیر عمد فایل یا به اصطلاح خراب شدن فایل هست. خیلی وقتها من خودم برای اینکه دچار این اشتباه نشم، فایلی که خودم فقط با اون سر و کار دارم رو هم قفل میکنم.

خب حالا بپردازیم به انواع قفل گذاری بر روی فایل اکسل. محافظت از فایل اکسل در ۲ سطح صورت میگیره:

سطح اول: قفل کردن کل فایل

برای این کار از مسیر زیر که در تصویر شماره ۱ هم نشان داده شده، رمزی برای فایل در نظر میگیریم.

File/ Save As/ Tools/ General Options

قفل کردن فایل اکسل - شکل 1

شکل ۱- قفل کردن فایل اکسل – پسورد گذاشتن روی کل فایل

بعد از زدن General Options پنجره شکل ۲ باز میشه:

قفل کردن فایل اکسل - تعیین رمز

شکل ۲- قفل کردن فایل اکسل – پنجره تعیین پسورد برای فایل

در این پنجره دو نوع پسورد میتونیم تعیین کنیم. اولی برای باز کردن فایل، دومی برای تغییر فایل. یعنی کسی که Password to open رو نداشته باشه، اصلا محتویات داخل شیت رو مشاهده نخواهد کرد. کسی که Password to Modify رو نداشته باشه، امکان تغییر روی اصل فایلرو نخواهد داشت. یعنی فایل رو تغییر میده، اما به محض اقدام برای ذخیره کردن، پنجره Save as باز میشه. به این ترتیب اصل فایل بدون تغییر میمونه. چون فرد، Password to Modify رو نداشته.

سطح دوم: قفل کردن سل های موجود در شیت های مختلف

هر سل از یک شیت میتونه تنظیم بشه که قفل باشه یا نه. یعنی اینکه در یک شیت، میتونیم یک سری سل رو قفل کنیم و بقیه رو قفل نکنیم. برای این کار کافیه مراحل زیر رو انجام بدیم:

  1. هر سلی که میخوایم قفل بشه، باید در Format cell اون سلول و در تب Protect، تیک Lock زده شده باشه.
  2. از تب Review/ Protect Sheet پنجره مطابق شکل ۳ باز می شود که در آن پسور مورد نظر را تایپ میکنیم. با زدن Ok، و تکرار پسورد، سل هایی که تنظیم کرده ایم و تیک Lock رو دارند، قفل می شن.

قفل کردن فایل اکسل - تعیین محدودیت

شکل ۳- قفل کردن فایل اکسل- پنجره تعیین پسورد برای قفل کردن شیت ها

به این نکته دقت داشته باشید که بصورت پیش فرض، تیک Lock همه سل ها زده شده است. یعنی اگر فقط مرحله دوم رو انجام بدیم، کل سل های یک شیت قفل می شن.

قفل کردن قسمتی از یک شیت

با توجه به توضیحات ارائه شده در بالا، برای اینکه یک محدوده خاص در اکسل رو قفل کنیم کافیه مراحل زیر رو انجام بدیم:

۱- انتخاب کل سلول های شیت و برداشتن تیک Lock از Format Cell

۲- انتخاب محدوده مورد نظر که باید قفل بشه و زدن تیک Lock از Format Cell.

3- Review/ Potect Sheet.

نکته:
اگه بخوایم فرمول نوشته شده در سل دیده نشه، باید علاوه بر Lock، تیک Hide رو هم در Format cell اون سلول بزنیم تا بعد از قفل کردن، با کلیک بر روی سل حاوی فرمول، فقط نتیجه قابل مشاهده باشد و خود فرمول نمایش داده نشه.

 

در شکل ۳ مشاهده می کنید که علاوه بر تعین پسورد، سطح دسترسی فرد به فایل رو در حین قفل بودن قابل تعیین هست. بصورت پیش فرض تیک دو گزینه اول زده شده که یعنی فرد میتونه سل هایی که قفل هستن و قفل نیستن رو انتخاب کنه مثلا اگه نخوایم کسی داده ها رو کپی کنه، دسترسی انتخاب سلول رو بر میداریم که سلول انتخاب نشه و در نتیجه قابل کپی هم نباشه.

پس اگه میخوایم فایل در حالت محافظت شده، قابلیت فیلتر شدن رو داشته باشه، تیک گزینه Use AutoFilter رو از همین پنجره می زنیم.

نکته:
همه این قفل گذاری ها در نهایت قابل هک شدن هستند، اما در صورتی که فایل، هر دو سطح قفل گذاری رو داشته باشه و هر شیت پسورد جداگانه داشته اشه، به مراتب هک کردن آن فایل مشکل تر خواهد بود.
134

من سامان چراغی هستم. دانش آموخته مقطع فوق لیسانس دانشگاه تربیت مدرس در رشته مهندسی صنایع. از سال 1388 اکسل و برنامه نویسی VBA رو به صورت حرفه ای شروع کردم.

دیدگاه کاربران
  • مجید متین ۱۹ دی ۱۳۹۹ / ۲:۲۴ ب٫ظ

    سلام اساتید محترم.
    وقتی شیت مورد نظرم را در اکسل protectمی کنم در سلولها که کلیک می کنم کلیدهای جهت نما سمت چپ و راست جابجا شده اند با زدن جهت نمای سمت راست سلول یکی به چپ جابجا می شود. راه حلی داره؟

  • محمدرضا ۱۸ دی ۱۳۹۹ / ۶:۱۳ ب٫ظ

    سلام.میخواستم بدونم که چطوری میشه که وقتی توی یک سلول عدد مشخصی وارد کنیم بقیه ی سلول های قفل شده باز شوند ؟
    لطفا راهنمایی کنید

    • آواتار
      حسنا خاکزاد ۱۹ دی ۱۳۹۹ / ۷:۰۴ ب٫ظ

      درود
      کد نویسی باید انجام بدید

  • شهرام ۱۸ آذر ۱۳۹۹ / ۱۰:۵۸ ق٫ظ

    سلام
    من برای چندتا شیت کد عدم پرینت گذاشتم
    آیا کدی هست بشه pdf ذخیره بشه تو حالت عدم پرینت
    ممنون میشم راهنمایی کنید
    سپاس

    • سامان چراغی ۲۲ دی ۱۳۹۹ / ۹:۴۸ ق٫ظ

      سلام
      از کد زیر میتونید استفاده کنید:

      Private Sub Workbook_BeforePrint(Cancel As Boolean)
      If Application.ActivePrinter <> "Printer Name" Then
          Cancel = True
      End If
      End Sub
      
  • شهرام ۱۸ آذر ۱۳۹۹ / ۱۰:۱۳ ق٫ظ

    سلام استاد وقتتون بخیر
    من یک فایل اکسل دارم حاوی ۶۰ شیت هستش میخوام از این ۶۰ شیت حدود ۲۰ شیت یکجا قفل قفل بشن و یکجا باز کنم قفل رو
    ماکرو نویسی کردم درست کار میکنه ولی موقع که unprotect میزنم پسوورد نمیپرسه فقط قفل رو باز میکنه
    آیا کدی هست که بشه این کار و کرد که فقط ۲۰ تا شیت رو قفل کنه و باز کنه
    ممنون میشم راهنمایی کنید

    • آواتار
      حسنا خاکزاد ۱۸ آذر ۱۳۹۹ / ۱۲:۳۹ ب٫ظ

      درود
      داخل کدتون پسورد شیت رو بزنید
      نزدید برای همین بدون پسورد قفل میکنه

  • فرشید ۱۹ آبان ۱۳۹۹ / ۱۲:۵۶ ب٫ظ

    با سلام و تشکر از سایت خوبتون
    یه سوال داشتم چطور میشه یک شیت رو طوری تنظیم کرد که قابل پرینت نباشه؟ ممنون

    • سامان چراغی ۲۱ آبان ۱۳۹۹ / ۹:۴۷ ق٫ظ

      سلام، میتونید کد زیر رو در قسمت کدهای Workbook قرار بدید و جلوی پرینت شیت های انتخاب شده رو بگیره:

      Private Sub Workbook_BeforePrint(Cancel As Boolean)
      Dim WsName As String
      WsName = "Sheet1"
      For Each xWs In Application.ActiveWorkbook.Windows(1).SelectedSheets
          If xWs.Name = WsName Then
              Cancel = True
          End If
      Next
      End Sub
      
  • کریمی ۱۴ مهر ۱۳۹۹ / ۱۲:۵۸ ب٫ظ

    سلام
    در حالت table وقتی ستونی را برای محافظت از فرمول ها قفل میکنم دیگه خودش گسترش پیدا نمی کند
    راه حل؟

    • آواتار
      حسنا خاکزاد ۲۸ مهر ۱۳۹۹ / ۱۱:۳۳ ق٫ظ

      درود
      کدنویسی باید کنید
      در حالت عادی ممکن نیست

  • الهام ۹ تیر ۱۳۹۹ / ۳:۱۱ ب٫ظ

    سلام
    یکسری سلول ها هستند در فایل اکسل رنگی هستند که بنده نمیتونم آنهارا تغییر بدهم

    • آواتار
      حسنا خاکزاد ۹ تیر ۱۳۹۹ / ۵:۱۴ ب٫ظ

      درود
      یا قفله
      یا اینکه conditional formatting داره

  • ابوالفضل ۹ اردیبهشت ۱۳۹۹ / ۸:۱۱ ب٫ظ

    سلام .من یه موتور سرچ با کد vba دارم که نباید نام سر سنتونا تغیر کنه وقتی شیت رو پروداکت میکنم دیگه کار نمیکنه .چیکار مستونم بکنم که این مشکل حل بشه

    • آواتار
      حسنا خاکزاد ۹ اردیبهشت ۱۳۹۹ / ۹:۲۶ ب٫ظ

      درود
      در کد وی بی که نوشتید، اولش unprotect کنید، کد اجرا بشه بعد protect کنید

  • mrf20 ۱۸ فروردین ۱۳۹۹ / ۸:۱۷ ب٫ظ

    با سلام چگونه میشه این فرمول رو خلاصه توی یک یا دو تا contifs نوشت ممنون چون ادامه این فرمول میره تا n300:o300
    =IF(O2=”موارد مخالف صفر
    Shift_A”;COUNTIFS(N$6:O$6;N6;N8:O8;”>0″)+COUNTIFS(N$6:O$6;N6;N13:O13;”>0″)+COUNTIFS(N$6:O$6;N6;N18:O18;”>0″))
    فقط در نظر داشته باشید که بین مثلا سلولهای n13 تا n18 انواع اطلاعات دیگه وجود داره و نمیتونم تو فرمول بنویسم مثلا n8:n300 پیغام خطا میده و این بخاط اطلاعات مابین سلولهاست به شکل فرمول بالاکه مینویسم جواب میده ولی تعداد سلولها زیاده و countifs های زیادی باید برای شیفتهای مختلف بنویسم و فرمول زیاد میشه و به بن بست میخوره ممنون امیدوارم واضح باشه لطفا سریعتر راهنمایی کنید ممنون میشم. متشکر

    • آواتار
      حسنا خاکزاد ۱۸ فروردین ۱۳۹۹ / ۸:۵۰ ب٫ظ

      بهتره سوالتون و با نمونه فایل در گروه تلگرامی قرار بدید
      به نظر میرسه کاملا اشتباه استفاده میکنید تابع رو
      از روی چیزی هم که نوشتید خیلی چیزی قابل تشخیص نیست.
      داخل گروه که بتونید ساختار فایل رو بذارید، سریعتر جواب میگیرید

      لینک در فوتر سایت هست

  • محسن دهقانی ۱۸ فروردین ۱۳۹۹ / ۹:۲۶ ق٫ظ

    سلام
    وقتی شیت مورد نظرم را در اکسل protectمی کنم در سلولها که کلیک می کنم کلیهای جهت نما سمت چپ و راست جابجا شده اند با زدن جهت نمای سمت راست سلول یکی به چپ جابجا می شود علت چیست

    • مجید متین ۱۹ دی ۱۳۹۹ / ۶:۲۴ ب٫ظ

      منم همین مشکل رو دارم هیچ جوره هم حل نشد. کسی راه حل اینو میدونه؟؟

ارسال دیدگاه

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

توسط
تومان