Kasulikkus VBA programmeerijale

Kui hääldate sõna "makrod" õudusega ja rõhuga teisel silbil ning fraas "Visual Basic for Applications" kõlab teie jaoks loitsuna, pole see artikkel teie jaoks. Igal juhul praegu 🙂

Kui teil on Excelis VBA-s makrode programmeerimisel vähemalt mõningane kogemus ja te ei kavatse seda lõpetada, peaks allpool toodud kasulike lisandmoodulite ja programmide valik teile (vähemalt osaliselt) kasulik olema.

MZ-Tools – “Šveitsi nuga” programmeerijale

Pärast installimist VBE redaktoris menüüs töövahendid ilmub alammenüü MZ-tööriistad ja uus tööriistariba samadele funktsioonidele kiireks juurdepääsuks:

Kasulikkus VBA programmeerijale

Ta teab, kuidas teha palju. Minu arvates kõige väärtuslikumatest:

  • Lisage automaatselt "tühi kala", et luua protseduure, funktsioone, sündmuste ja veakäsitlejaid koos muutujate õige nimetamisega vastavalt Ungari süsteemile.
  • Kopeerige kasutajavormide juhtelemendid koos nende koodiga.
  • Tehke protseduuride jaoks järjehoidjad (lemmikud) ja liikuge kiiresti nende juurde suures projektis.
  • Jagage pikad koodiread mitmeks ja koondage tagasi (ridade tükeldamine ja kombineerimine).
  • Väljastada projekti kohta üksikasjalik statistika (koodiridade arv, protseduurid, vormide elemendid jne)
  • Kontrollige projekti kasutamata muutujate ja protseduuride osas (ülevaate allikas)
  • Looge tüüpiliste juhtumite jaoks oma koodimallide (koodimallide) baas ja sisestage need hiljem kiiresti uutesse makrodesse.
  • Looge ADO kaudu väliste andmeallikatega ühenduse loomiseks automaatselt pikk ja hirmutav string.
  • Kinnitage kiirklahvid mis tahes lisandmooduli funktsioonile.

Ühemõtteline must have mis tahes tasemel programmeerija jaoks. Kui teil on Office'i uusim versioon, laadige kindlasti alla MZ-Tools 3.00.1218 uusim versioon 1. märtsist, sest. see parandas Excel 2013-ga töötamisel vea.  

Lae link MZ-tööriistad

Smart Indenter – automaatne taandumine koodis

See teeb hästi ühe lihtsa, kuid väga vajaliku toimingu – taandab automaatselt VBA-koodi sakke, tuues selgelt esile pesastatud silmused, seisundikontrollid jne.

Kasulikkus VBA programmeerijale

See toiming on väga mugav määrata jaotises mis tahes mugavale kiirklahvile Treppimise valikud ja tehke seda ühe puudutusega.

Kahjuks loobus programmi autor sellest 2005. aastal (miks, Carl!?) ja saidil on uusim versioon Excel 97-2003 jaoks. Programm töötab aga uuemate versioonidega üsna hästi. Ainus hoiatus: kui teil on Excel 2013, peate enne Smart Indenteri installimist esmalt installima MZ-Toolsi uusima versiooni, kuna. see sisaldab Indenteri tööks vajalikku dünaamilist raamatukogu.

Lae link Smart Indenter

VBE Tools – mikrohäälestuselemendid vormides

Juhtelementide (nupud, sisestusväljad, tekstisildid jne) joondamine keerukal kujul võib olla valus. Standardne sidumine redaktori ruudustikuga menüü kaudu Tööriistad — Valikud — Üldine — Joonda juhtnupud ruudustikuga vahel ei aita eriti ja hakkab isegi segama, eriti kui on vaja nt nuppu lihtsalt veidi liigutada. Selles küsimuses aitab VBE tööriistade lisandmoodul, mis pärast installimist kuvab lihtsa paneeli, kus saate valitud elemendi suurust ja asukohta vormil täpsustada:

Kasulikkus VBA programmeerijale

Positsiooni nihutamist saab teha ka Alt+noolte ja suurust muuta klahvidega Shift+Alt+nooled ja Ctrl+Alt+nooled.

Samuti saate elemendil paremklõpsates selle kohe koos koodiga ümber nimetada.

Lae link VBE tööriistad

VBA erinevus – koodide erinevuste leidmine

Tõenäoliselt on see tööriist kasulikum professionaalsetele VBA programmeerijatele suurte ja keerukate projektide või koostöö arendamise loomisel. Selle põhifunktsioon on võrrelda kahte projekti ja visuaalselt kuvada nendevahelise koodi erinevust:

Kasulikkus VBA programmeerijale

Seal on 30-päevane tasuta periood ja siis küsib lisandmoodul selle eest 39 naela (praeguse kursi järgi umbes 3.5 tuhat rubla).

Ausalt öeldes tuli see minu elus kasuks ainult 3-4 korda ülisuurte projektide puhul, kuid siis säästis see mind mitu päeva ja palju närvirakke 🙂 Alati on muidugi tasuta alternatiiv: eksportige kood tekstifaili (paremklõps modulo – Eksport) ja võrrelda neid hiljem Microsoft Wordis, kasutades käsku Läbivaatamine – võrrelge dokumente, kuid VBA Diffi abiga on see suurusjärgu võrra mugavam.

Lae link VBA erinevus

Moqups ja Wireframe Sketcher – liidese prototüüpimine

Kasutaja interaktsiooniks keerukate liideste loomisel on väga mugav eelnevalt kujundada dialoogiakende ligikaudne välimus, st käivitada prototüüpimine. Tegelikult osutub see palju lihtsamaks kui valmisvormide ja nende koodi hiljem ümbertegemine. Mäletan, et kord ühes projektis palus klient teha “menüü”, mis tähendab “vahekaarte”. Pool päeva tööd tühjaks 🙁

Nende ülesannete jaoks on tohutul hulgal erineva keerukuse ja võimsusega tasulisi ja tasuta programme. Olen proovinud kümmekond sellist programmi ja teenust ning viimasel ajal kasutan seda kõige sagedamini moqups:

Kasulikkus VBA programmeerijale

See on veebiredaktor, mis:

  • Ei nõua eraldi programmide installimist. Alati saab tulla kliendi kontorisse ja loodud liidest otse saidil avada-näidata-parandada.
  • Sisaldab kõiki dialoogibokside põhielemente (sildid, nupud, loendid jne) Windowsi ja Maci versioonides.
  • Võimaldab eksportida loodud liidese PNG- või PDF-vormingus või saata kliendile lingi veebis vaatamiseks.
  • Tegelikult tasuta. Graafiliste elementide arvul on piirangud, kuid mul pole kunagi õnnestunud neid ületada. Kui ruum saab otsa või soovite salvestada mitu suurt projekti korraga, saate alati minna üle esmaklassilisele versioonile 99 dollari eest aastas.

Üldiselt VBA-s arendaja ülesannete jaoks - ma arvan, et rohkem kui piisavalt.

Kui kellelgi on põhimõtteliselt vaja offline võimalust (töötada näiteks ilma internetita mererannas), siis soovitan Traatraami visandaja:

Kasulikkus VBA programmeerijale

Pärast 2-nädalast tasuta demoperioodi palub ta teil osta sama 99 dollari eest.

link moqups

Lae link Traatraami visandaja

Invisible Basic – koodihägustaja

Kahjuks ei ole Microsoft Excelis võimalik parooliga oma makrode lähtekoodi turvaliselt lukustada. Siiski on terve klass programme nn obfuskaatorid (Inglise keelest. segama – segadusse ajama, segadusse ajama), mis muudavad VBA-koodi välimust nii, et seda on äärmiselt raske lugeda ja mõista, nimelt:

  • muutujate, protseduuride ja funktsioonide nimed asendatakse pikkade mõttetute märgikomplektidega või vastupidi, lühikeste tähestikuliste arusaamatute tähistega
  • visuaalsed tabeli taanded eemaldatakse
  • eemaldatakse või vastupidi paigutatakse juhuslikult reavahetused jne.

Ausalt öeldes ei ole ma nende meetodite kasutamise fänn. Eelkõige PLEXi puhul otsustasin, et täisversiooni ostjatele oleks parem anda avatud, arusaadav ja kommenteeritud lähtekood – see tundub mulle õigem. Sellegipoolest on mu kaasprogrammeerijatel olnud korduvalt juhtumeid, kui sellisest programmist oleks palju kasu (programmeerija tegi töö ära, aga klient ei maksnud jne) Nii et kui vaja, siis tea kust saada. "Me oleme rahumeelsed inimesed, aga meie soomusrong..." ja kõik muu.

Lae Invisible Basic

Code Cleaner – koodipuhastus

Projekti kallal töötamise käigus (eriti kui see on suur ja pikk) hakkab koodimoodulitesse ja vormidesse kogunema “prügi” – VBE redaktoriteenuse teabe jupid, mis võivad põhjustada ootamatuid ja soovimatuid tõrkeid. Kasulikkus Koodipuhastaja puhastab selle sodi lihtsal, kuid usaldusväärsel viisil: ekspordib koodi moodulitest tekstifailidesse ja impordib selle siis puhtalt tagasi. Soovitan tungivalt suurte projektidega töötades sellist "puhastust" perioodiliselt läbi viia.

Lae link Koodipuhastaja

Lindi XML-redaktor

Kui soovite luua oma makrode käitamiseks oma vahekaardi Exceli lindi kaunite nuppudega, siis ei saa te ilma liidese XML-failiredaktorita hakkama. Kindlasti on tänapäeval kõige mugavam ja võimsam selles osas kodumaine programm. Lindi XML-redaktorlõi Maxim Novikov.

Kasulikkus VBA programmeerijale

Täiesti suurepärane tarkvara, mis:

  • võimaldab teil hõlpsasti lindile lisada oma vahekaarte, nuppe, ripploendeid ja muid Office'i uue liidese elemente
  • fully supports language
  • abistab redigeerimist, kuvades kontekstuaalseid vihjeid
  • õppetundide abil saab hõlpsasti omandada
  • täiesti tasuta

Lae link Lindi XML-redaktor

PS

Microsoft on aastaid VBA arendajaid räigelt ignoreerinud, pidades seda ilmselt kehvemaks programmeerimiskeeleks. Aeg-ajalt levivad kuulujutud, et Office'i järgmisel versioonil pole enam Visual Basicit või see asendatakse JavaScriptiga. Visual Studio uued versioonid tulevad regulaarselt välja uute maiuspaladega ja VBE redaktor jäi 1997. aastal ummikusse, kuna ei saanud ikka veel tavaliste tööriistadega koodi taande lisada.

Tegelikkuses säästavad tuhanded inimesed tunde ja päevi tänu VBA programmeerijatele, kes loovad makrosid igapäevaste kontoriandmete töötlemise rutiinide automatiseerimiseks. Kes on näinud, kuidas makro 10 koodireal saadab poole minutiga failid 200 kliendile, asendades sellega kolm tundi rumalat tööd, see mõistab mind 🙂

Ja veel. 

Kõik ülaltoodud programmid on puhtalt minu isiklik valik ja isiklik soovitus, mis põhineb isiklikul kogemusel. Ükski autoritest ei küsinud minult reklaami ega maksnud selle eest (ja ma ei võtaks seda põhimõtteliselt). Kui teil on ülaltoodud nimekirjale midagi lisada – tere tulemast kommentaaridesse, tänulik inimkond ei jää võlgu.

 

Jäta vastus