Nut voor VBA-programmeur

Als je het woord "macro's" uitspreekt met een zucht van afschuw en een accent op de tweede lettergreep, en de zin "Visual Basic for Applications" klinkt als een spreuk voor jou, dan is dit artikel niets voor jou. Voor nu in ieder geval

Als je op zijn minst enige ervaring hebt met het programmeren van macro's in VBA in Excel, en je bent niet van plan te stoppen, dan zou de selectie van handige invoegtoepassingen en programma's hieronder (ten minste gedeeltelijk) nuttig voor je moeten zijn.

MZ-Tools – “Zwitsers mes” voor een programmeur

Na installatie in de VBE-editor in het menu tools submenu verschijnt MZ-Tools en een nieuwe werkbalk voor snelle toegang tot dezelfde functies:

Nut voor VBA-programmeur

Hij weet veel te doen. Van de meest waardevolle, naar mijn mening:

  • Voeg automatisch "lege vissen" toe om procedures, functies, gebeurtenis- en foutafhandelaars te creëren met de juiste naamgeving van variabelen volgens het Hongaarse systeem.
  • Kopieer besturingselementen op gebruikersformulieren samen met hun code.
  • Maak bladwijzers (Favorieten) voor procedures en ga er snel naar toe in een groot project.
  • Splits lange regels code in meerdere en monteer ze weer (regels splitsen en combineren).
  • Gedetailleerde statistieken over het project uitgeven (aantal regels code, procedures, elementen op formulieren, enz.)
  • Controleer het project op ongebruikte variabelen en procedures (Review Source)
  • Maak uw eigen basis van codesjablonen (codesjablonen) voor typische gevallen en voeg ze later snel in nieuwe macro's in.
  • Maak automatisch een lange en enge string om via ADO verbinding te maken met externe gegevensbronnen.
  • Koppel sneltoetsen aan elke functie van de add-on.

Een ondubbelzinnige must-have voor een programmeur van elk niveau. Als je de laatste versie van Office hebt, zorg er dan voor dat je de laatste versie van MZ-Tools 3.00.1218 van 1 maart downloadt. het loste een bug op bij het werken met Excel 2013.  

Download link MZ-Tools

Smart Indenter – automatisch inspringen in de code

Het doet een eenvoudige maar zeer noodzakelijke bewerking goed - het laat automatisch tabbladen in VBA-code inspringen, waarbij geneste lussen, conditiecontroles, enz. duidelijk worden gemarkeerd.

Nut voor VBA-programmeur

Het is erg handig om deze actie toe te wijzen aan een handige sneltoets in de sectie Opties voor inspringen en doe het met één aanraking.

Helaas heeft de auteur van het programma het in 2005 verlaten (waarom, Carl!?) en de nieuwste versie op de site is voor Excel 97-2003. Het programma werkt echter vrij goed met nieuwere versies. Het enige voorbehoud: als je Excel 2013 hebt, moet je voordat je Smart Indenter installeert eerst de nieuwste versie van MZ-Tools installeren, omdat. het bevat de dynamische bibliotheek die nodig is voor het werk van Indenter.

Download link Slimme indringer

VBE Tools - micro-tuning-elementen in formulieren

Het uitlijnen van bedieningselementen (knoppen, invoervelden, tekstlabels, enz.) op een complex formulier kan lastig zijn. Standaard binding aan het editorraster via het menu Extra — Opties — Algemeen — Regelaars uitlijnen op raster soms helpt het niet veel en begint het zelfs in de weg te zitten, vooral als je bijvoorbeeld de knop een klein beetje moet verplaatsen. De add-on VBE Tools helpt hierbij, die na installatie een eenvoudig paneel weergeeft waar u de grootte en positie op het formulier voor het geselecteerde element kunt verfijnen:

Nut voor VBA-programmeur

Positie verschuiven kan ook met Alt+pijlen, en vergroten/verkleinen met Shift+Alt+pijlen en Ctrl+Alt+pijlen.

Door met de rechtermuisknop op een element te klikken, kunt u het ook meteen samen met de code hernoemen.

Download link VBE-tools

VBA Diff - Verschillen in code vinden

Deze tool zal waarschijnlijk nuttiger zijn voor professionele VBA-programmeurs bij het maken van grote en complexe projecten of gezamenlijke ontwikkeling. De belangrijkste functie is om twee projecten te vergelijken en het verschil in code ertussen visueel weer te geven:

Nut voor VBA-programmeur

Er is een gratis periode van 30 dagen en dan zal de add-on u vragen om er 39 pond voor te betalen (ongeveer 3.5 duizend roebel tegen de huidige wisselkoers).

Eerlijk gezegd kwam het in mijn leven maar 3-4 keer van pas bij supergrote projecten, maar toen heeft het me een aantal dagen en veel zenuwcellen bespaard 🙂 Nou, er is natuurlijk altijd een gratis alternatief: exporteer de code naar een tekstbestand (klik met de rechtermuisknop op modulo – Exporteren) en vergelijk ze later in Microsoft Word met het commando Review – Documenten vergelijken, maar met behulp van VBA Diff is het een orde van grootte handiger.

Download link VBA-verschil

Moqups en Wireframe Sketcher - interface-prototyping

Bij het maken van complexe interfaces voor gebruikersinteractie, is het erg handig om van tevoren het uiterlijk van dialoogvensters bij benadering te ontwerpen, dwz uitvoeren prototyping. In feite blijkt het veel gemakkelijker te zijn dan kant-en-klare formulieren en hun code later opnieuw te doen. Ik herinner me een keer in een van de projecten dat de klant vroeg om een ​​"menu" te maken, wat "tabbladen" betekent. Halve dag werken door de gootsteen

Er zijn een groot aantal betaalde en gratis programma's van verschillende niveaus van complexiteit en kracht voor deze taken. Ik heb ongeveer een dozijn van dergelijke programma's en diensten geprobeerd, en de laatste tijd gebruik ik het meest moqups:

Nut voor VBA-programmeur

Dit is een online editor die:

  • Vereist geen installatie van afzonderlijke programma's. U kunt altijd naar het kantoor van de klant komen en de gemaakte interface direct op de site openen-show-corrigeren.
  • Bevat alle hoofdelementen van dialoogvensters (labels, knoppen, lijsten, enz.) in versies voor Windows en Mac.
  • Hiermee kunt u de gemaakte interface in PNG- of PDF-indeling exporteren of een link naar de klant sturen om deze online te bekijken.
  • Eigenlijk gratis. Er zijn grenzen aan het aantal grafische elementen, maar ik ben er nooit in geslaagd om verder te gaan. Als je geen ruimte meer hebt of meerdere grote projecten tegelijk wilt opslaan, kun je altijd upgraden naar de premium-versie voor $ 99 per jaar.

Over het algemeen voor de taken van een ontwikkelaar in VBA - meer dan genoeg, denk ik.

Als iemand fundamenteel een offline-optie nodig heeft (om bijvoorbeeld zonder internettoegang aan de kust te werken), raad ik aan Wireframe-schetser:

Nut voor VBA-programmeur

Na een gratis demoperiode van 2 weken, zal hij je vragen om voor dezelfde $ 99 te kopen.

Link naar moqups

Download link Wireframe-schetser

Invisible Basic - code-obfuscator

Helaas is het niet mogelijk om de broncode van uw macro's veilig te vergrendelen met een wachtwoord in Microsoft Excel. Er is echter een hele reeks programma's genaamd versluiers (Uit het Engels. verduisteren - verwarren, verwarren), die het uiterlijk van de VBA-code zodanig veranderen dat het uiterst moeilijk zal zijn om deze te lezen en te begrijpen, namelijk:

  • namen van variabelen, procedures en functies worden vervangen door lange nietszeggende tekensets of juist door korte alfabetische onbegrijpelijke aanduidingen
  • visuele tabulatie-inspringingen zijn verwijderd
  • worden verwijderd of, omgekeerd, regeleinden worden willekeurig geplaatst, enz.

Eerlijk gezegd ben ik geen fan van het gebruik van deze methoden. Met name met PLEX besloot ik dat het beter zou zijn om kopers van de volledige versie een open, begrijpelijke en becommentarieerde broncode te geven - dit lijkt mij correcter. Desalniettemin hebben mijn collega-programmeurs herhaaldelijk gevallen gehad waarin zo'n programma erg nuttig zou zijn (de programmeur deed het werk, maar de klant betaalde niet, enz.) Dus als je het nodig hebt, weet dan waar je het kunt krijgen. "We zijn vreedzame mensen, maar onze gepantserde trein ..." en zo.

Downloaden Onzichtbare Basis

Code Cleaner – code opschonen

Tijdens het werken aan een project (vooral als het groot en lang is), begint "vuilnis" zich op te hopen in codemodules en formulieren - stukjes VBE-editorservice-informatie die kunnen leiden tot onverwachte en ongewenste storingen. Nutsvoorziening Code schoner ruimt deze rommel op een eenvoudige maar betrouwbare manier op: exporteert de code van modules naar tekstbestanden en importeert deze vervolgens netjes terug. Ik raad ten zeerste aan om bij het werken aan grote projecten periodiek zo'n "schoonmaak" uit te voeren.

Download link Code schoner

Lint XML-editor

Als u uw eigen tabblad wilt maken met prachtige knoppen op het Excel-lint om uw macro's uit te voeren, dan kunt u niet zonder een interface-XML-bestandseditor. Absoluut, het meest handige en krachtige vandaag is het binnenlandse programma in dit opzicht. Lint XML-editorgemaakt door Maxim Novikov.

Nut voor VBA-programmeur

Absoluut geweldige software die:

  • kunt u eenvoudig uw eigen tabbladen, knoppen, vervolgkeuzelijsten en andere elementen van de nieuwe Office-interface aan het lint toevoegen
  • fully supports language
  • helpt bij het bewerken door contextuele hints weer te geven
  • kan gemakkelijk worden beheerst door lessen
  • helemaal gratis

Download link Lint XML-editor

PS

Al vele jaren negeert Microsoft VBA-ontwikkelaars schaamteloos, omdat het blijkbaar een inferieure programmeertaal is. Er gaan regelmatig geruchten dat de volgende versie van Office niet langer Visual Basic zal hebben of zal worden vervangen door JavaScript. Er komen regelmatig nieuwe versies van Visual Studio uit met nieuwe goodies, en de VBE-editor zat vast in 1997 en kon de code nog steeds niet laten inspringen met standaardtools.

In werkelijkheid besparen duizenden mensen uren en dagen dankzij VBA-programmeurs die macro's maken om de dagelijkse routines voor gegevensverwerking op kantoor te automatiseren. Iedereen die heeft gezien hoe een macro in 10 regels code in een halve minuut bestanden naar 200 clients stuurt, ter vervanging van drie uur stom werk, zal me begrijpen 🙂

En meer. 

Alle bovenstaande programma's zijn puur mijn persoonlijke keuze en persoonlijke aanbeveling op basis van persoonlijke ervaring. Geen van de auteurs vroeg me om reclame en betaalde er niet voor (en ik zou het uit principe niet aannemen). Als je iets toe te voegen hebt aan de bovenstaande lijst - welkom bij de opmerkingen, de dankbare mensheid zal niet in de schulden blijven.

 

Laat een reactie achter