4 Роҳҳои ҳифзи VBA (Visual Basic for Applications).

Рамзи VBA, ки шумо менависед, дил ва ҷони ҷадвали электронии шумост. Ҳифзи рамзи VBA чизест, ки бояд анҷом дода шавад, то боварӣ ҳосил кунем, ки коди шумо дуздида нашавад ё бидуни огоҳӣ истифода нашавад. Ин паём якчанд роҳҳои гуногуни муҳофизати рамзи VBA-ро дар бар мегирад, то танҳо ШУМО ба осонӣ ба он дастрасӣ пайдо кунед.
Чаро шумо бояд дар бораи ҳифзи рамзи VBA ғамхорӣ кунед?
VBA забони макросист, ки метавонад барои эҷоди вазифаҳо ё амалҳои худкор дар Excel, Word, PowerPoint истифода шавад. Якчанд сабабҳо вуҷуд доранд, ки шумо бояд рамзи VBA-и худро муҳофизат кунед:
- Барои муҳофизат кардани рамзи VBA-и шумо аз тасодуфан тағир дода мешавад. Рамзи VBA як воситаи пурқувват барои корбарони Excel аст, аммо он инчунин метавонад барои онҳое, ки онро истифода намебаранд, манбаи ноумедӣ гардад. Агар шумо VBA-ро бо парол муҳофизат накунед, он гоҳ дигарон, ки китоби кории шуморо истифода мебаранд, метавонанд ба код дастрасӣ пайдо кунанд ва бидуни он ки онҳо дар асл чӣ кор карда истодаанд, тағирот ворид кунанд. Шумо намехоҳед рамзи VBA-и худро ислоҳ кунед, зеро он метавонад дардовар бошад - барои фаҳмидани он ки чаро соатҳо лозим аст ва сипас вақти бештарро талаб мекунад!
- Барои ҳифзи моликияти зеҳнии худ. Рамзи VBA метавонад барои баъзе ширкатҳо хеле арзишманд бошад. Агар ягон каси дигар ба ҷадвали электронии шумо дастрасӣ пайдо кунад ва функсияеро, ки шумо истифода мебаред, нусхабардорӣ кунад, онҳо эҳтимолан онро ҳамчун кори шахсии худ супоранд ва ба бисёр ширкатҳо фурӯшанд. Рамзи сарчашмаи арзишманди худро бо чораҳои амниятӣ муҳофизат кунед. Дуздӣ ё нусхабардориро барои касе осон накунед.
- Барои муҳофизат кардани худ аз одамоне, ки кори шуморо истифода мебаранд. Агар шумо як қисми арзишманди рамзи VBA дошта бошед, ки кори шуморо осонтар ё самараноктар мекунад, пас шумо метавонед онро танҳо барои истифодаи шахсӣ муҳофизат кунед.
Қайд кардан муҳим аст, ки якчанд роҳҳои гуногуни муҳофизати рамзи VBA-и шумо мавҷуданд, аммо на ҳамаашон рамзи шуморо ҳамон тавр муҳофизат мекунанд. Ин ба шумо вобаста аст ва он чизе ки шумо фикр мекунед, барои эҳтиёҷоти шумо беҳтар аст.
# 1 Рамзи рамзи VBA-ро дар дохили Excel бо истифода аз Tool VBAProject муҳофизат кунед
Ин қисм мефаҳмонад, ки чӣ гуна шумо метавонед танзимоти муҳофизати лоиҳаи VBA-ро истифода баред, то рамзи VBA-и худро аз чашмони бегона ва дастҳои вайронкунӣ дар ягон сатҳ муҳофизат кунед.
- Сатҳи амният: Заиф; монанди асбобхо мавчуданд VBA Рамз тозакунанда ки барои кушодани парол дар дақиқаҳо истифода мешавад;
- Мушкилот: осон;
- Арзиш: ройгон;
Қадами 1. Аз менюи "Developer" дар Excel "Visual Basic" -ро интихоб кунед.
Қадами 2. Барои бастани лоиҳаи VBA-и худ, дар сатр "Асбобҳо" -ро клик кунед ва сипас "Хусусиятҳои VBAProject" -ро интихоб кунед.
Пас аз пахш кардани ин банди меню, шумо бояд қуттии муколамаи зеринро бинед:
Ҷадвали "Умумӣ" бо нобаёнӣ интихоб карда мешавад, аммо дар ҷадвали "Ҳифз" клик кунед.
Қадами 3. "Лоиҳаро барои тамошо қуфл кунед" -ро санҷед ва пас пароли худро ду маротиба дар ҳардуи ин қуттиҳо ворид кунед ва "OK" -ро пахш кунед.
Қадами 4. Онро захира кунед ва файли Excel-ро боз кушоед. Шумо метавонед бифаҳмед, ки оё муҳофизати пароли VBA тавассути клики дукаратаи лоиҳаи VBA-и худ дуруст фаъол карда шудааст. Вақте ки шумо лоиҳаи VBA-и худро бо парол муҳофизат мекунед, он касеро аз тағир додани тасодуфӣ пешгирӣ мекунад.
# 2 Барои ҳифзи коди макроси худ VBA Obfuscation-ро истифода баред
Мушкилоти VBA ин санъати он аст, ки рамзи VBA-и худро хонданашаванда, вале ба ҳар ҳол корношоям мекунад. Он макросҳои мавҷудаи шуморо бо сатҳҳои сершумори печида тағйир медиҳад, ки фаҳмидани мантиқи асосиро мушкил мекунад. Обфускаторҳои пешрафтаи VBA як қатор усулҳои пешрафтаи номувофиқро истифода мебаранд, ки пайгирии баръакс ва барқароркуниро хеле душвортар мекунанд.
- Сатҳи амният: Миёна; Касе то ҳол метавонад вақт ҷудо кунад ва захираҳои кофӣ барои барқарор кардани код сарф кунад;
- Мушкилот: миёна; Вобаста ба сатҳ;
- Арзиш: VBA Obfuscator ройгон /Мукофот;
Шумо метавонед нофаҳмиҳои VBA-ро дар якҷоягӣ бо техникаи # 1 истифода баред, ки он аввал норавшан ва сипас модулро бо парол муҳофизат мекунад. Лутфан дар хотир доред, ки нофаҳмиҳо бебозгашт аст, аз ин рӯ пеш аз идома додан нусхаи эҳтиётии файли манбаъро созед. Инчунин дар хотир доред, ки коди печида наметавонад бидуни камбудиҳо иҷро шавад. Лутфан пеш аз он ки онро озод кунед, онро бодиққат санҷед. Як қисми лоиҳаро барои нофаҳмо истифода баред. Пас аз бомуваффақияти санҷиши модули аввал, ба дуюм гузаред.
#3 Табдил додани рамзи VBA ба китобхонаи динамикӣ (DLL)
Компиляторҳо ба монанди Visual C++ ва Visual Basic барномаҳое истеҳсол мекунанд, ки шикастани онҳо душвор аст. Ин ба он вобаста аст, ки код ба файлҳои иҷрошаванда ё файлҳои китобхонаи пайванди динамикӣ тартиб дода шудааст. Ҳамин тавр, мо инчунин метавонем рамзи VBA-ро ба файли китобхонаи пайванди динамикӣ тартиб диҳем ва сипас онро дар Excel истифода барем.
- Сатҳи амният: баланд;
- Мушкилот: миёна;
- Арзиш: ройгон;
Ин усули муҳофизат хеле тавсия дода мешавад, аммо он 100% кафолат дода намешавад. Барои омӯхтани тарзи тартиб додан, ба дастурҳо дар VbaCompiler.com нигаред: 10 қадам барои тартиб додани рамзи VBA ба Windows DLL-и аслӣ .
# 4 Табдил додани VBA ба C ё C++
Тарҷумаи макросҳои худро ба C ё C ++ нисбат ба VBA муҳандиси баръакс душвортар аст. Агар шумо хоҳед, ки рамзи худро муҳофизат кунед, ин беҳтарин роҳ аст.
- Сатҳи амният: Баландтарин; Бе ҳуқуқ ба даст овардани код қариб ғайриимкон аст; Аммо боз ҳам, он 100% кафолат дода намешавад;
- Мушкилот: Мушкилот ва вақтталаб; Азбаски VBA ва C/C++ чунин забонҳои гуногунанд, ин мушкилтар аст, зеро шумо бояд кӯшиши зиёд сарф кунед.
Хулоса
Истифодаи макросҳо як роҳи олии такмил додани рушди функсияҳои пешрафта мебошад. Мутаассифона, ин рамзи шуморо зери хатари дуздидан ё нусхабардории дигарон мегузорад. Дар мақола усулҳое муҳокима карда мешаванд, ки шумо метавонед барои пешгирӣ кардани корбарони дигар аз дуздӣ ё вайрон кардани рамзи VBA-и худ истифода баред. Лутфан қайд кунед, ки муҳофизати рамзи VBA амнияти тирногузар нестанд, аммо он аз ҳамлаҳои тасодуфӣ муҳофизат мекунад.