Понекад морате да пошаљете своју Екцел радну свеску у свет са заштићеним одређеним радним листовима. Ако откријете да стално штитите и уклањате заштиту листова пре него што дистрибуирате своје радне свеске, макро овде може да вам помогне.
Како функционише макро
Код се покреће догађајем ПреЦлосе радне свеске. Када покушате да затворите радну свеску, овај догађај се покреће и покреће код унутар. Макро аутоматски штити наведени лист са датом лозинком, а затим чува радну свеску:
Приватна под радна свеска_БефореЦлосе(Откажи као Боолеан)
„Корак 1: Заштитите лист лозинком
Схеетс("Схеет1").Протецт Пассворд:="РЕД"
„Корак 2: Сачувајте радну свеску
АцтивеВоркбоок.Саве
Енд Суб
У кораку 1 експлицитно наводите који лист треба заштитити — у овом случају Схеет1. Такође дајете аргумент лозинке, Пассворд:=”РЕД”, који дефинише лозинку потребну за уклањање заштите.
Овај аргумент лозинке је опциони. Ако га изоставите, лист ће и даље бити заштићен, али вам неће бити потребна лозинка да бисте га поништили.
Екцел лозинке разликују велика и мала слова, тако да ћете желети да обратите пажњу на тачну лозинку и велика слова које користите.
Корак 2 говори Екцел-у да сачува радну свеску. Ако не сачувате радну свеску, заштита листа коју сте управо применили неће бити на снази следећи пут када се радна свеска отвори.
Како користити макро
Да бисте применили овај макро, потребно је да га копирате и налепите у прозор кода догађаја Воркбоок_БефореЦлосе. Постављање макроа овде омогућава да се покрене сваки пут када покушате да затворите радну свеску:
Активирајте Висуал Басиц Едитор притиском на Алт+Ф11.
У прозору пројекта пронађите назив свог пројекта/радне свеске и кликните на знак плус поред њега да бисте видели све листове.
Кликните на ову радну свеску.
У падајућој листи Догађај изаберите догађај Пре затварања.
Откуцајте или налепите код у новокреирани модул, мењајући назив листа (ако је потребно) и лозинку.
Унесите свој код у догађај Воркбоок БефореЦлосе.
Имајте на уму да додатне листове можете заштитити додавањем наредби за сабирање пре наредбе Ацтивеворкбоок.Саве.