Užitočnosť pre programátora VBA

Ak slovo „makrá“ vyslovujete s hrôzou a prízvukom na druhej slabike a fráza „Visual Basic for Applications“ vám znie ako zaklínadlo, tento článok nie je pre vás. V každom prípade zatiaľ 🙂

Ak máte aspoň nejaké skúsenosti s programovaním makier vo VBA v Exceli a neplánujete prestať, potom by sa vám mal (aspoň čiastočne) hodiť výber užitočných doplnkov a programov nižšie.

MZ-Tools – „švajčiarsky nôž“ pre programátora

Po inštalácii vo VBE editore v menu náradie zobrazí sa podponuka MZ-Tools a nový panel nástrojov pre rýchly prístup k rovnakým funkciám:

Užitočnosť pre programátora VBA

Vie urobiť veľa. Z najcennejších podľa mňa:

  • Automaticky pridajte „prázdne ryby“, aby ste vytvorili procedúry, funkcie, obsluhy udalostí a chýb so správnym pomenovaním premenných podľa maďarského systému.
  • Skopírujte ovládacie prvky do používateľských formulárov spolu s ich kódom.
  • Urobte si záložky (Obľúbené) pre postupy a rýchlo sa k nim presúvajte vo veľkom projekte.
  • Rozdeľte dlhé riadky kódu na niekoľko a zostavte ich späť (rozdeľte a spojte riadky).
  • Vydajte podrobné štatistiky o projekte (počet riadkov kódu, procedúry, prvky vo formulároch atď.)
  • Skontrolujte, či projekt neobsahuje nepoužívané premenné a procedúry (zdroj recenzie)
  • Vytvorte si vlastnú základňu kódových šablón (Code Templates) pre typické prípady a neskôr ich rýchlo vložte do nových makier.
  • Automaticky vytvorte dlhý a strašidelný reťazec na pripojenie k externým zdrojom údajov cez ADO.
  • Pripojte klávesové skratky k akejkoľvek funkcii z doplnku.

Jednoznačná nevyhnutnosť pre programátora akejkoľvek úrovne. Ak máte najnovšiu verziu balíka Office, určite si stiahnite najnovšiu verziu MZ-Tools 3.00.1218 z 1. marca, pretože. opravila chybu pri práci s Excelom 2013.  

odkaz na stiahnutie MZ-Tools

Smart Indenter – automatické odsadenie v kóde

Dobre robí jednu jednoduchú, ale veľmi potrebnú operáciu – automaticky odsadí tabulátory v kóde VBA, jasne zvýrazňuje vnorené slučky, kontroluje stav atď.

Užitočnosť pre programátora VBA

Je veľmi výhodné priradiť túto akciu akejkoľvek pohodlnej klávesovej skratke v sekcii Možnosti odsadenia a urobte to jedným dotykom.

Žiaľ, autor programu to v roku 2005 opustil (prečo, Carl!?) a najnovšia verzia na stránke je pre Excel 97-2003. Program však funguje celkom dobre aj s novšími verziami. Jediné upozornenie: ak máte Excel 2013, potom pred inštaláciou Smart Indenter musíte najskôr nainštalovať najnovšiu verziu MZ-Tools, pretože. obsahuje dynamickú knižnicu potrebnú pre prácu Indentera.

odkaz na stiahnutie Smart Indenter

VBE Tools – mikrotuningové prvky vo formulároch

Zarovnanie ovládacích prvkov (tlačidlá, vstupné polia, textové označenia atď.) na zložitom formulári môže byť orieškom. Štandardná väzba na mriežku editora cez menu Nástroje — Možnosti — Všeobecné — Zarovnať ovládacie prvky na mriežku niekedy to veľmi nepomôže a dokonca začne prekážať, najmä ak potrebujete posunúť napríklad tlačidlo len o kúsok. V tejto veci vám pomôže doplnok VBE Tools, ktorý po inštalácii zobrazí jednoduchý panel, kde si môžete doladiť veľkosť a polohu na formulári pre vybraný prvok:

Užitočnosť pre programátora VBA

Posun polohy je možné vykonať aj pomocou Alt+šípky a zmenu veľkosti pomocou Shift+Alt+šípky a Ctrl+Alt+šípky.

Tiež kliknutím pravým tlačidlom myši na prvok ho môžete okamžite premenovať spolu s kódom.

odkaz na stiahnutie Nástroje VBE

VBA Diff – Hľadanie rozdielov v kóde

Tento nástroj bude pravdepodobne užitočnejší pre profesionálnych programátorov VBA pri vytváraní veľkých a zložitých projektov alebo kolaboratívnom vývoji. Jeho hlavnou funkciou je porovnať dva projekty a vizuálne zobraziť rozdiel v kóde medzi nimi:

Užitočnosť pre programátora VBA

Existuje 30-dňové bezplatné obdobie a potom vás doplnok požiada, aby ste zaň zaplatili 39 libier (približne 3.5 tisíc rubľov pri aktuálnom výmennom kurze).

Úprimne povedané, v živote mi to prišlo vhod len 3-4 krát na superveľkých projektoch, ale potom mi to ušetrilo niekoľko dní a veľa nervových buniek 🙂 No, vždy je tu, samozrejme, bezplatná alternatíva: exportovať kód do textového súboru (kliknite pravým tlačidlom myši modulo – export) a porovnajte ich neskôr v programe Microsoft Word pomocou príkazu Recenzia – Porovnanie dokumentov, ale s pomocou VBA Diff je to rádovo pohodlnejšie.

odkaz na stiahnutie Rozdiel VBA

Moqups a Wireframe Sketcher – prototypovanie rozhrania

Pri vytváraní komplexných rozhraní pre interakciu používateľa je veľmi vhodné vopred navrhnúť približný vzhľad dialógových okien, tj spustiť prototyping. V skutočnosti sa to ukáže oveľa jednoduchšie, ako neskôr prerobiť hotové formuláre a ich kód. Pamätám si, že raz v jednom z projektov zákazník požiadal o vytvorenie „menu“, čo znamená „záložky“. Pol dňa práce dolu vodou 🙁

Na tieto úlohy existuje obrovské množstvo platených a bezplatných programov rôznych úrovní zložitosti a výkonu. Vyskúšal som asi tucet takýchto programov a služieb a v poslednej dobe ich najčastejšie používam Moqupy:

Užitočnosť pre programátora VBA

Toto je online editor, ktorý:

  • Nevyžaduje inštaláciu samostatných programov. Vždy môžete prísť do kancelárie klienta a priamo na stránke otvoriť-ukázať-opraviť vytvorené rozhranie.
  • Obsahuje všetky hlavné prvky dialógových okien (štítky, tlačidlá, zoznamy atď.) vo verziách pre Windows a Mac.
  • Umožňuje exportovať vytvorené rozhranie vo formáte PNG alebo PDF alebo poslať klientovi odkaz na prezeranie online.
  • Vlastne zadarmo. Existujú limity na počet grafických prvkov, no nikdy sa mi ich nepodarilo prekročiť. Ak vám dôjde miesto alebo chcete uložiť niekoľko veľkých projektov naraz, vždy môžete upgradovať na prémiovú verziu za 99 dolárov ročne.

Vo všeobecnosti si myslím, že pre úlohy vývojára vo VBA je viac ako dosť.

Ak niekto zásadne potrebuje možnosť offline (napríklad pracovať bez prístupu na internet na pobreží), odporúčam Wireframe Sketcher:

Užitočnosť pre programátora VBA

Po bezplatnom demonštračnom období po dobu 2 týždňov vás požiada o nákup za rovnakých 99 dolárov.

Odkaz na Moqupy

odkaz na stiahnutie Wireframe Sketcher

Invisible Basic – obfuskátor kódu

Bohužiaľ nie je možné bezpečne uzamknúť zdrojový kód vašich makier pomocou hesla v programe Microsoft Excel. Existuje však celá trieda programov tzv obfuskátori (Z angličtiny. zahmlievať – zmiasť, zmiasť), ktoré menia vzhľad kódu VBA takým spôsobom, že bude mimoriadne ťažké ho prečítať a pochopiť, a to:

  • názvy premenných, procedúr a funkcií sú nahradené dlhými nezmyselnými znakovými sadami alebo naopak krátkymi abecednými nezrozumiteľnými označeniami
  • vizuálne tabuľkové zarážky sú odstránené
  • sú odstránené alebo naopak, zlomy riadkov sú umiestnené náhodne atď.

Úprimne povedané, nie som zástancom používania týchto metód. Najmä pri PLEX som sa rozhodol, že bude lepšie dať kupujúcim plnej verzie otvorený, zrozumiteľný a komentovaný zdrojový kód – to sa mi zdá správnejšie. Napriek tomu sa mojim kolegom programátorom opakovane vyskytli prípady, kedy by sa takýto program veľmi hodil (programátor odviedol prácu, ale klient nezaplatil a pod.) Takže ak ho potrebujete, vedzte, kde ho zohnať. „Sme mierumilovní ľudia, ale náš obrnený vlak...“ a to všetko.

Stiahnuť ▼ Neviditeľný základ

Code Cleaner – čistenie kódu

V procese práce na projekte (najmä ak je veľký a dlhý) sa v moduloch kódu a formulároch začína hromadiť „odpad“ – útržky servisných informácií editora VBE, ktoré môžu viesť k neočakávaným a nechceným chybám. Utility Čistič kódu vyčistí túto špinu jednoduchým, ale spoľahlivým spôsobom: exportuje kód z modulov do textových súborov a potom ho čisto importuje späť. Dôrazne odporúčam, aby ste pri práci na veľkých projektoch pravidelne vykonávali takéto „čistenie“.

odkaz na stiahnutie Čistič kódu

Ribbon XML Editor

Ak si chcete vytvoriť svoju vlastnú kartu s krásnymi tlačidlami na páse s nástrojmi Excel na spustenie makier, potom sa nezaobídete bez editora súborov XML v rozhraní. Rozhodne najpohodlnejší a najvýkonnejší je dnes v tomto smere domáci program. Ribbon XML Editorvytvoril Maxim Novikov.

Užitočnosť pre programátora VBA

Úplne úžasný softvér, ktorý:

  • vám umožní jednoducho pridávať vlastné karty, tlačidlá, rozbaľovacie zoznamy a ďalšie prvky nového rozhrania balíka Office na pás s nástrojmi
  • plne podporuje jazyk
  • pomáha pri úpravách zobrazovaním kontextových rád
  • možno ľahko zvládnuť lekciami
  • úplne zadarmo

odkaz na stiahnutie Ribbon XML Editor

PS

Microsoft po mnoho rokov nehanebne ignoruje vývojárov VBA, pričom ho zjavne považuje za podradný programovací jazyk. Pravidelne sa šušká, že ďalšia verzia balíka Office už nebude mať Visual Basic alebo bude nahradená JavaScriptom. Nové verzie Visual Studia pravidelne vychádzajú s novými vychytávkami a editor VBE sa zasekol v roku 1997 a stále nedokázal odsadiť kód pomocou štandardných nástrojov.

V skutočnosti tisíce ľudí šetria hodiny a dni vďaka programátorom VBA, ktorí vytvárajú makrá na automatizáciu každodenných postupov spracovania dát v kancelárii. Kto videl, ako makro v 10 riadkoch kódu odošle súbory 200 klientom za pol minúty, čím nahradí tri hodiny hlúpej práce, pochopí ma 🙂

A viac. 

Všetky vyššie uvedené programy sú čisto mojou osobnou voľbou a osobným odporúčaním na základe osobných skúseností. Nikto z autorov odo mňa reklamu nežiadal a nezaplatil (a ja by som ju z princípu nebral). Ak máte čo dodať k vyššie uvedenému zoznamu – vitajte v komentároch, vďačné ľudstvo nezostane v dlhoch.

 

Nechaj odpoveď