Фоиданокӣ барои барномасози VBA

Агар шумо калимаи “макрос”-ро бо як нафаси даҳшатнок ва дар ҳиҷои дуюм таъкид кунед ва ибораи “Visual Basic for Applications” бароятон ҳамчун имло садо диҳад, пас ин мақола барои шумо нест. Дар ҳар сурат, ҳоло 🙂

Агар шумо ҳадди аққал таҷрибаи барномасозии макросҳо дар VBA дар Excel дошта бошед ва шумо нақша надоред, ки бас кунед, пас интихоби замимаҳо ва барномаҳои муфид дар зер бояд (ҳадди ақал қисман) барои шумо муфид бошад.

MZ-Tools - "корди швейтсарӣ" барои барномасоз

Пас аз насб дар муҳаррири VBE дар меню асбобҳои зерменю пайдо мешавад MZ-Tools ва панели нав барои дастрасии зуд ба ҳамон вазифаҳо:

Фоиданокӣ барои барномасози VBA

Ӯ медонад, ки чӣ тавр бисёр кор кунад. Аз ҳама арзишманд, ба назари ман:

  • Ба таври худкор "моҳии холӣ" -ро илова кунед, то тартибҳо, функсияҳо, коркардкунандагони рӯйдодҳо ва хатогиҳо бо номгузории дурусти тағирёбандаҳо мувофиқи системаи Маҷористон.
  • Назоратҳоро дар шаклҳои корбар дар якҷоягӣ бо рамзи онҳо нусхабардорӣ кунед.
  • Барои расмиёти хатчӯбҳо (Дӯстдоштаҳо) созед ва ба онҳо дар як лоиҳаи калон зуд ҳаракат кунед.
  • Хатҳои дарози кодро ба якчанд тақсим кунед ва дубора ҷамъ кунед (хатҳоро тақсим кунед ва якҷоя кунед).
  • Интишори омори муфассал оид ба лоиҳа (шумораи сатрҳои код, тартиб, элементҳо дар формаҳо ва ғ.)
  • Лоиҳаро барои тағирёбандаҳо ва расмиёти истифоданашуда санҷед (Сарчашмаи барраси)
  • Барои ҳолатҳои маъмулӣ пойгоҳи шахсии қолибҳои кодро (Шаблонҳои код) эҷод кунед ва онҳоро зуд ба макросҳои нав баъдтар ворид кунед.
  • Барои пайваст шудан ба манбаъҳои додаҳои беруна тавассути ADO ба таври худкор як сатри дароз ва даҳшатовар эҷод кунед.
  • Тугмаҳои гармро ба ягон функсия аз изофа замима кунед.

Барои як барномасоз дар ҳама сатҳҳо як чизи ҳатмист. Агар шумо версияи охирини Office дошта бошед, пас ҳатман версияи охирини MZ-Tools 3.00.1218-ро аз 1 март зеркашӣ кунед, зеро. он хатогиро ҳангоми кор бо Excel 2013 ислоҳ кард.  

Пайванди зеркашӣ MZ-Tools

Smart Indenter - абзори худкор дар код

Он як амалиёти оддӣ, вале хеле заруриро хуб иҷро мекунад - он ба таври худкор ҷадвалҳоро дар коди VBA ворид мекунад, ҳалқаҳои лона гузошташуда, санҷиши ҳолат ва ғайраро равшан нишон медиҳад.

Фоиданокӣ барои барномасози VBA

Таъин кардани ин амал ба ягон миёнабури мувофиқи клавиатура дар қисмат хеле қулай аст Имконоти воридшавӣ ва онро бо як ламс кунед.

Мутаассифона, муаллифи барнома онро дар соли 2005 тарк кард (чаро Карл!?) ва версияи охирини сайт барои Excel 97-2003 аст. Бо вуҷуди ин, барнома бо версияҳои навтар хеле хуб кор мекунад. Ягона огоҳӣ: агар шумо Excel 2013 дошта бошед, пас пеш аз насб кардани Smart Indenter, шумо бояд аввал версияи охирини MZ-Tools -ро насб кунед, зеро. он дорои китобхонаи динамикии барои кори Indenter зарур аст.

Пайванди зеркашӣ Smart Indenter

Воситаҳои VBE – унсурҳои микротанзим дар шаклҳо

Мутобиқсозии ҷузъҳои идоракунӣ (тугмаҳо, майдонҳои вуруд, тамғакоғазҳо ва ғ.) дар шакли мураккаб метавонад дардовар бошад. Ҳатмии стандартӣ ба шабакаи муҳаррир тавассути меню Асбобҳо — Параметрҳо — Умумӣ — Назоратҳоро ба шабака мутобиқ кунед баъзан он чандон ёрӣ намедиҳад ва ҳатто ба монеа шудан оғоз мекунад, хусусан агар ба шумо лозим ояд, масалан, тугмаро каме ҳаракат кунед. Иловаи VBE Tools дар ин масъала кӯмак мекунад, ки пас аз насб панели оддиеро намоиш медиҳад, ки дар он шумо метавонед андоза ва мавқеъро дар форма барои элементи интихобшуда дуруст танзим кунед:

Фоиданокӣ барои барномасози VBA

Тағир додани мавқеъро инчунин бо тирчаҳои Alt+ ва тағир додани андоза бо тирчаҳои Shift+Alt ва тирчаҳои Ctrl+Alt анҷом додан мумкин аст.

Ғайр аз он, бо пахш кардани тугмаи рости элемент, шумо метавонед онро фавран бо рамз иваз кунед.

Пайванди зеркашӣ Воситаҳои VBE

VBA Diff - Ҷустуҷӯи фарқиятҳо дар код

Ин восита эҳтимолан барои барномасозони касбии VBA ҳангоми эҷоди лоиҳаҳои калон ва мураккаб ё рушди муштарак муфидтар хоҳад буд. Вазифаи асосии он муқоиса кардани ду лоиҳа ва ба таври визуалӣ нишон додани фарқияти код байни онҳо мебошад:

Фоиданокӣ барои барномасози VBA

Давраи 30-рӯзаи ройгон вуҷуд дорад ва он гоҳ илова аз шумо талаб мекунад, ки барои он 39 фунт (тақрибан 3.5 ҳазор рубл бо қурби ҷорӣ) пардохт кунед.

Росташро гӯям, он дар ҳаёти ман ҳамагӣ 3-4 маротиба дар лоиҳаҳои хеле калон муфид буд, аммо баъдан он маро чанд рӯз ва ҳуҷайраҳои асабро наҷот дод 🙂 Хуб, ҳамеша алтернативаи ройгон вуҷуд дорад: содирот рамзи файли матнӣ (модули ростро клик кунед - содирот) ва онҳоро баъдтар дар Microsoft Word бо истифода аз фармон муқоиса кунед Барраси - Муқоисаи ҳуҷҷатҳо, аммо бо ёрии VBA Diff он фармоиши бузургтар аст.

Пайванди зеркашӣ Фарқияти VBA

Moqups ва Wireframe Sketcher - прототипсозии интерфейс

Ҳангоми сохтани интерфейсҳои мураккаб барои муоширати корбарон, тарҳрезии пешакии намуди тахминии қуттиҳои муколама, яъне иҷро кардан хеле қулай аст. прототипсия. Дарвоқеъ, ин назар ба такрори шаклҳои тайёр ва коди онҳо дертар осонтар аст. Дар хотир дорам, ки боре дар яке аз лоиҳаҳо муштарӣ хоҳиш карда буд, ки «меню» созад, ки маънояш «таблица» мебошад. Ним рузи кор ба холи 🙁

Шумораи зиёди барномаҳои пулакӣ ва ройгони сатҳҳои гуногуни мураккабӣ ва қудрат барои ин вазифаҳо мавҷуданд. Ман тақрибан даҳҳо чунин барномаҳо ва хидматҳоро санҷидаам ва вақтҳои охир ман бештар истифода мебарам Мокупс:

Фоиданокӣ барои барномасози VBA

Ин муҳаррири онлайн аст, ки:

  • Насби барномаҳои алоҳидаро талаб намекунад. Шумо ҳамеша метавонед ба дафтари муштарӣ биёед ва интерфейси сохташударо мустақиман дар сайт кушоед-намоиш диҳед.
  • Ҳама унсурҳои асосии қуттиҳои муколамаро (тамғаҳо, тугмаҳо, рӯйхатҳо ва ғ.) дар версияҳои Windows ва Mac дар бар мегирад.
  • Ба шумо имкон медиҳад, ки интерфейси сохташударо дар форматҳои PNG ё PDF содир кунед ё ба муштарӣ барои дидани онлайн истиноди ирсол кунед.
  • Дар асл ройгон. Дар шумораи унсурҳои графикӣ маҳдудиятҳо мавҷуданд, аммо ман ҳеҷ гоҳ аз онҳо берун баромада натавонистам. Агар шумо ҷой надошта бошед ё хоҳед, ки якбора якчанд лоиҳаҳои калонро нигоҳ доред, шумо ҳамеша метавонед ба версияи премиум бо нархи $99 дар як сол навсозӣ кунед.

Умуман, барои вазифаҳои таҳиякунанда дар VBA - ман фикр мекунам, ки беш аз кофӣ аст.

Агар касе ба таври куллӣ ба варианти офлайн ниёз дошта бошад (масалан, бе дастрасӣ ба интернет дар соҳили баҳр кор кунад), пас ман тавсия медиҳам Wireframe Sketcher:

Фоиданокӣ барои барномасози VBA

Пас аз як давраи намоишии ройгон барои 2 ҳафта, ӯ аз шумо хоҳиш мекунад, ки бо ҳамон 99 доллар харед.

пайванд ба Мокупс

Пайванди зеркашӣ Wireframe Sketcher

Invisible Basic - обфускатори код

Мутаассифона, бо парол дар Microsoft Excel бехатар қулф кардани рамзи сарчашмаи макросҳо ғайриимкон аст. Аммо, як синфи пурраи барномаҳо вуҷуд дорад обфускаторҳо (Аз забони англисӣ. парешон кардан — парешон кардан, парешон кардан), ки намуди рамзи VBA-ро тавре тағир медиҳад, ки хондан ва фаҳмидани он ниҳоят душвор хоҳад буд, аз ҷумла:

  • номҳои тағирёбандаҳо, тартибҳо ва функсияҳо бо маҷмӯи аломатҳои дарози бемаънӣ ё баръакс бо аломатҳои алифбои кӯтоҳи нофаҳмо иваз карда мешаванд
  • бандҳои ҷадвали визуалӣ хориҷ карда мешаванд
  • хориҷ карда мешаванд ё баръакс, танаффусҳои сатр ба таври тасодуфӣ ҷойгир карда мешаванд ва ғайра.

Рости гап, ман тарафдори истифодаи ин усулҳо нестам. Аз ҷумла, бо PLEX, ман қарор додам, ки беҳтар аст, ки ба харидорон версияи пурраи рамзи ибтидоии кушода, фаҳмо ва шарҳ додашударо пешниҳод кунам - ин ба назари ман дурусттар аст. Бо вуљуди ин, њамкасбони барномасози ман борњо ходисањо доштанд, ки чунин барнома хеле фоиданок мебуд (барномасоз кор кард, вале мизољ пул надодааст ва ѓайра) Пас, агар лозим бошад, бидонед, ки онро аз куљо дастрас намоед. "Мо мардуми осоишта ҳастем, аммо қатораи зиреҳпӯши мо ..." ва ҳамаи ин.

Download Basic Invisible

Code Cleaner - тозакунии код

Дар ҷараёни кор дар лоиҳа (махсусан агар он калон ва дароз бошад) дар модулҳо ва шаклҳои рамзӣ «партовҳо» ҷамъ мешаванд - пораҳои иттилооти хидматрасонии муҳаррири VBE, ки метавонанд боиси хатогиҳои ғайричашмдошт ва номатлуб шаванд. Утилита Тозакунандаи код ин лойро ба таври оддӣ, вале боэътимод тоза мекунад: кодро аз модулҳо ба файлҳои матнӣ содир мекунад ва сипас онро ба таври тоза ворид мекунад. Ман тавсия медиҳам, ки ҳангоми кор дар лоиҳаҳои калон давра ба давра чунин «тозакунӣ» гузаронед.

Пайванди зеркашӣ Тозакунандаи код

Муҳаррири Ribbon XML

Агар шумо хоҳед, ки ҷадвали шахсии худро бо тугмаҳои зебои лентаи Excel эҷод кунед, то макросҳои худро иҷро кунед, пас шумо бе муҳаррири файли XML интерфейс кор карда наметавонед. Бешубҳа, имрӯз қулайтарин ва тавонотарин барномаи ватанӣ дар ин замина аст. Муҳаррири Ribbon XMLМаксим Новиков офаридааст.

Фоиданокӣ барои барномасози VBA

Нармафзори комилан аҷибе, ки:

  • ба шумо имкон медиҳад, ки ба осонӣ ҷадвалҳо, тугмаҳо, рӯйхатҳои афтанда ва дигар унсурҳои интерфейси нави Office-и худро ба лента илова кунед
  • забонро пурра дастгирӣ мекунад
  • бо нишон додани маслиҳатҳои контекстӣ дар таҳрир кӯмак мекунад
  • бо дарсхо ба осонй азхуд кардан мумкин аст
  • пурра озод аст

Пайванди зеркашӣ Муҳаррири Ribbon XML

PS

Дар тӯли солҳои зиёд, Microsoft таҳиягарони VBA-ро беэътиноӣ мекард, зеро онро аз афташ забони барномасозии пасттар мешуморад. Овозаҳо давра ба давра паҳн мешаванд, ки версияи навбатии Office дигар Visual Basic надорад ё онро JavaScript иваз мекунад. Версияҳои нави Visual Studio мунтазам бо чизҳои нав мебароянд ва муҳаррири VBE дар соли 1997 часпида буд, то ҳол натавонист кодро бо абзорҳои стандартӣ ворид кунад.

Дар асл, ҳазорон одамон ба шарофати барномасозони VBA барои автоматикунонии реҷаҳои коркарди маълумоти ҳаррӯзаи офис макросҳо эҷод мекунанд, соатҳо ва рӯзҳоро сарфа мекунанд. Ҳар касе, ки дидааст, ки чӣ гуна макрос дар 10 сатри код дар ним дақиқа ба 200 муштарӣ файл мефиристад ва се соати кори беақлро иваз мекунад, маро мефаҳмад 🙂

Ва бештар. 

Ҳамаи барномаҳои дар боло зикршуда танҳо интихоби шахсии ман ва тавсияи шахсии ман дар асоси таҷрибаи шахсӣ мебошанд. Ҳеҷ кадоме аз муаллифон аз ман таблиғ напурсиданд ва барои он пул надоданд (ва ман аз рӯи принсип онро қабул намекунам). Агар шумо чизе барои илова кардан ба рӯйхати дар боло зикршуда дошта бошед - ба шарҳҳо хуш омадед, инсонияти шукргузор қарздор нахоҳад монд.

 

Дин ва мазҳаб