VBA - Snelkoppelingen voor de Visual Basic Editor

Deze tutorial laat je een aantal echt nuttige snelkoppelingen zien in VBA

Gebruik Alt + F11 om de VBE . te openen

Om naar de Visual Basic Editor te gaan, moet u meestal op de Visual Basic-knop op het Excel-lint klikken. U kunt echter op . drukken Alt + F11 in plaats daarvan!

Sneltoetsen in de VBE

Ctl+r- toont de Projectverkenner.

Ctl+g - toont de Onmiddellijk venster.

F4 - toont de Eigenschappenvenster.

F2 - toont de Objectbrowser.

F5 - loopt de Procedure je bent in.

F8 - hiermee kunt u door de code stappen Pauze modus.

Een macro opnemen

Een van de beste manieren om VBA te leren, is door een macro op te nemen en vervolgens de code te analyseren. Het is ook een zeer snelle manier om code te schrijven, maar de recorder zal ELKE toetsaanslag opnemen, dus het kan zijn dat u uw code moet bewerken om overbodige regels te verwijderen.

Laten we de onderstaande macro bekijken die is opgenomen door de macrorecorder en kijken hoe we deze efficiënter kunnen maken.

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 Sub TestFormaat()'' TestFormaatmacro'' Sneltoets: Ctrl+Shift+T'ActiveCell.FormulaR1C1 = "Appel"Bereik ("D3"). SelecteerActiveCell.FormulaR1C1 = "Peren"Bereik ("E3"). SelecteerActiveCell.FormulaR1C1 = "Perziken"Bereik ("C4"). SelecteerActiveCell.FormuleR1C1 = "12"Bereik ("D4"). SelecteerActiveCell.FormuleR1C1 = "14"Bereik ("E4"). SelecteerActiveCell.FormuleR1C1 = "16"Bereik ("C5"). SelecteerActiveCell.FormuleR1C1 = "20"Bereik ("D5"). SelecteerActiveCell.FormuleR1C1 = "25"Bereik ("E5"). SelecteerActiveCell.FormuleR1C1 = "26"Bereik ("C6:E6"). SelecteerBereik ("E6"). ActiverenSelectie.FormuleR1C1 = "=SOM(R[-2]C:R[-1]C)"Selectie.Borders(xlDiagonalDown).LineStyle = xlGeenSelectie.Borders(xlDiagonalUp).LineStyle = xlGeenSelectie.Borders(xlEdgeLeft).Lijnstijl = xlGeenMet Selectie.Borders(xlEdgeTop).LineStyle = xlContinuous.ColorIndex = 0.TintAndShade = 0.Gewicht = xlDunEindigt metMet Selectie.Borders(xlEdgeBottom).LineStyle = xlDouble.ColorIndex = 0.TintAndShade = 0.Gewicht = xlDikEindigt metSelectie.Borders(xlEdgeRight).LineStyle = xlNoneSelectie.Borders(xlInsideVertical).LineStyle = xlNoneSelectie.Borders(xlInsideHorizontal).LineStyle = xlNoneBereik ("C4:E6"). SelecteerSelectie.NummerFormaat = _"_-[$$-en-US]* #,##0.00_ ;_-[$$-en-US]* -#,##0.00 ;_-[$$-en-US]* "" -""??_ ;_-@_ "Bereik ("C3:E3"). SelecteerSelectie.Lettertype.Bold = TrueBereik ("C3"). SelecteerActiveCell.FormulaR1C1 = "Appels"Einde sub

Kijk nu naar de onderstaande code die hetzelfde resultaat zal bereiken

123456789101112131415161718192021 Sub TestFormaat()' Sneltoets: Ctrl+Shift+TBereik ("C3") = "Appels"Bereik ("D3") = "Peren"Bereik ("E3") = "Perziken"Bereik ("C4") = 12Bereik ("D4") = 14Bereik ("C4") = 16Bereik ("C5") = 20Bereik ("D5") = 25Bereik ("E5") = "26"Bereik ("C6:E6"). SelecteerSelectie.FormuleR1C1 = "=SOM(R[-2]C:R[-1]C)"Selectie.Borders(xlEdgeTop).LineStyle = xlContinuousSelectie.Borders(xlEdgeBottom).LineStyle = xlDoubleBereik ("C4:E6"). SelecteerSelectie.NummerFormaat = _"_-[$$-en-US]* #,##0.00_ ;_-[$$-en-US]* -#,##0.00 ;_-[$$-en-US]* "" -""??_ ;_-@_ "Bereik ("C3:E3"). SelecteerSelectie.Lettertype.Bold = TrueEinde sub

Door veel overbodige code weg te laten en opgenomen code waar mogelijk aan te passen, kunnen we de macro veel effectiever en beter leesbaar maken.

De persoonlijke macro-werkmap gebruiken

Als u wilt dat een macro in al uw Excel-bestanden kan worden gebruikt, kunt u de macro opslaan in de persoonlijke macro-werkmap - deze werkmap is verborgen en is altijd geopend in Excel, waardoor alle macro's die daarin zijn opgeslagen, globale macro's zijn .

Als u geen persoonlijke macrowerkmap in uw VBE-venster ziet, neemt u een macro op en geeft u op dat deze moet worden opgeslagen in de persoonlijke macrowerkmap.

Inspringingscode

Wanneer u uw code laat inspringen, maakt u het meteen gemakkelijker om te lezen en voor iemand anders om te volgen. Als u meerdere regels code wilt laten inspringen, kunt u deze selecteren en op de Tab-toets drukken.

Evenzo, om de code te laten inspringen, drukt u op Shift+Tab en de code wordt weer naar links verplaatst.

Moe van het zoeken naar voorbeelden van VBA-codes? Probeer AutoMacro!

Reactiecode

Het toevoegen van opmerkingen aan uw code is een andere manier om het gemakkelijk te lezen en te navigeren. U voegt een opmerking toe aan de code door een enkel aanhalingsteken aan het begin van de regel te plaatsen, zoals hieronder weergegeven.

Schrijven in kleine letters

VBA gebruikt Proper Case in code. Als u in kleine letters schrijft en het verandert niet in Juiste hoofdletters, kunt u snel zien waar u een fout hebt gemaakt.

Intellisense gebruiken

Intellisense verschijnt wanneer u code schrijft en geeft u een lijst met alle eigenschappen, methoden en gebeurtenissen die beschikbaar zijn voor het object waarmee u werkt. Het verschijnt normaal gesproken automatisch nadat u een punt typt wanneer u uw code typt.

Je kunt het ook forceren om te verschijnen door op te drukken Ctl+j.

Evenzo, wanneer u functies in Excel gebruikt die argumenten aannemen, verschijnen deze normaal gesproken automatisch.

Je kunt ze dwingen om te verschijnen door op te drukken Ctl+i.

Automatisch aanvullen

U kunt de Ctl+spatie toetscombinatie om automatisch aanvullen te gebruiken bij het schrijven van code.

In het bovenstaande voorbeeld zijn alle Eigenschappen, methoden, gebeurtenissen en Variabelen beginnend met str verschijnt in de lijst waaruit u kunt kiezen.

Optie Expliciete en compileercode

Door ervoor te zorgen dat Option Explicit bovenaan al uw modules staat, zorgt u ervoor dat al uw variabelen worden gedeclareerd en voorkomt u dat u spelfouten maakt in de namen van de variabelen. Als u Option Explicit hebt ingeschakeld en u compileert of voert uw code uit, krijgt u een foutmelding als een variabelenaam niet wordt herkend.

Het onmiddellijke venster en foutopsporing

Het onmiddellijke venster (u kunt het inschakelen met Ctl+g) stelt u in staat uw code te debuggen en de waarde van variabelen te vinden terwijl u zich in deze debug-modus bevindt.

12345678 Subtestvariabelen'declareer de variabele'Dim strName als string'vul de variabele in'strName = "Anne Smit"'gebruik F8 om door de code te lopen en stuur de variabele waarde met behulp van debug.print naar het directe vensterDebug.Print strNameEinde sub

U zal helpen de ontwikkeling van de site, het delen van de pagina met je vrienden

wave wave wave wave wave