VBA in Excel: wat is Visual Basic voor toepassingen, hoe te gebruiken

Everybody in this country should learn how to program a computer... because it teaches you how to think." -Steve Jobs

Ik wil de wijze woorden van Steve Jobs uitbreiden en zeggen dat iedereen in de wereld moet leren hoe je een computer programmeert. Je hoeft niet per se als programmeur te werken of programma's te schrijven, maar het leert je wel hoe je moet denken.

Wat is Visual Basic for Applications (VBA)?

Visual Basic voor toepassingen (VBA) is een gebeurtenisgestuurde programmeertaal geïmplementeerd door Microsoft Office-applicaties ontwikkelen. VBA helpt bij het ontwikkelen van automatiseringsprocessen, Windows API en door de gebruiker gedefinieerde functies. Hiermee kunt u ook de gebruikersinterfacefuncties van de hosttoepassingen manipuleren.

Voordat we verder ingaan op de details, laten we eens kijken wat computerprogrammering is in lekentaal. Stel dat je een dienstmeisje hebt. Als je wilt dat het dienstmeisje het huis schoonmaakt en de was doet, vertel je haar wat ze moet doen in bijvoorbeeld Engels en zij doet het werk voor je. Als je met een computer werkt, zul je bepaalde taken willen uitvoeren. Net zoals je het dienstmeisje hebt verteld om huishoudelijke klusjes te doen, kun je de computer ook vertellen om de taken voor je te doen.

Het proces waarbij u de computer vertelt wat u wilt dat deze voor u doet, heet computerprogrammering. Net zoals je Engels gebruikte om de meid te vertellen wat hij moest doen, kun je ook Engelse uitspraken gebruiken om de computer te vertellen wat hij moet doen. De Engelsachtige uitspraken vallen in de categorie talen op hoog niveau. VBA is een taal op hoog niveau die u kunt gebruiken om Excel naar uw almachtige wil te buigen.

VBA is eigenlijk een subset van Visual Basic 6.0 waar BASIC voor staat Beinners ADoelgericht Ssymbolisch Instruction Cweg.

Waarom VBA?

Met VBA kunt u Engelstalige instructies gebruiken om instructies te schrijven voor het maken van verschillende toepassingen. VBA is gemakkelijk te leren en heeft een eenvoudig te gebruiken gebruikersinterface waarin u alleen maar de bedieningselementen van de interface hoeft te slepen en neer te zetten. U kunt er ook de functionaliteit van Excel mee verbeteren door het zich te laten gedragen zoals u dat wilt.

Persoonlijke en zakelijke toepassingen van VBA in Excel

Voor persoonlijk gebruik kunt u het gebruiken voor eenvoudige macro's die de meeste van uw routinetaken automatiseren. Lees het artikel over Macro's voor meer informatie over hoe u dit kunt bereiken.

Voor zakelijk gebruik kunt u complete krachtige programma's maken, aangedreven door Excel en VBA. Het voordeel van deze aanpak is dat u de krachtige functies van Excel kunt benutten in uw eigen aangepaste programma's.

Inleiding tot Visual Basic voor toepassingen

Voordat we code kunnen schrijven, moeten we eerst de basis kennen. De volgende basisprincipes helpen je op weg.

  • Veranderlijk – op de middelbare school leerden we over algebra. Vind (x + 2y) waarbij x = 1 en y = 3. In deze uitdrukking zijn x en y variabelen. Ze kunnen elk nummer toegewezen krijgen, d.w.z. 1 en 3, zoals in dit voorbeeld. Ze kunnen ook worden gewijzigd in 4 en 2, respectievelijk. Variabelen zijn kortweg geheugenlocaties. Als u met VBA Excel werkt, moet u ook variabelen declareren, net als in algebra-lessen
  • Regels voor het maken van variabelen
    • Gebruik geen gereserveerde woorden. Als je als student werkt, kun je de titel docent of directeur niet voeren. Deze titels zijn voorbehouden aan de docenten en het schoolbestuur. Gereserveerde woorden zijn woorden die een speciale betekenis hebben in Excel VBA en daarom kunt u ze niet als variabelenamen gebruiken.
    • Variabelenamen mogen geen spaties bevatten – u kunt geen variabele met de naam eerste getal definiëren. U kunt firstNumber of first_number gebruiken.
    • Gebruik beschrijvende namen – het is erg verleidelijk om een ​​variabele naar jezelf te vernoemen, maar vermijd dit. Gebruik beschrijvende namen, zoals hoeveelheid, prijs, subtotaal enz. Hierdoor wordt uw Excel VBA-code gemakkelijk leesbaar
  • Rekenkundige operatoren – De regels van Brackets van deling vermenigvuldiging optellen en aftrekken (BODMAS) zijn van toepassing, dus vergeet niet om ze toe te passen wanneer u werkt met expressies die meerdere verschillende rekenkundige operatoren gebruiken. Net als in Excel kunt u
    • + voor toevoeging
    • – voor aftrekken
    • * voor vermenigvuldiging
    • / voor deling.
  • Logische operatoren – Het concept van logische operatoren dat in de eerdere tutorials is behandeld, is ook van toepassing bij het werken met VBA. Deze omvatten
    • Als statements
    • OR
    • NIET
    • EN
    • TRUE
    • Juist

Hoe u het tabblad Ontwikkelaar inschakelt

Hieronder vindt u het stapsgewijze proces voor het inschakelen van het tabblad Ontwikkelaars in Excel:

  • Maak een nieuwe werkmap
  • Klik op de startknop op het lint
  • Bekijk
  • Klik op lint aanpassen
  • Selecteer het selectievakje voor ontwikkelaars zoals weergegeven in de onderstaande afbeelding
  • klik op OK

Schakel het tabblad Ontwikkelaar in

U kunt nu het tabblad ONTWIKKELAAR in het lint zien

VBA Hallo wereld!

Nu laten we zien hoe je programmeert in de programmeertaal VBA. Alle programma's in VBA moeten beginnen met "Sub" en eindigen met "End sub". Hier is de naam de naam die je aan je programma wilt toewijzen. Terwijl sub staat voor een subroutine die we later in de tutorial zullen leren.

Sub name()
.
.
. 
End Sub

We gaan een eenvoudig VBA-programma maken dat een invoerveld weergeeft waarin om de naam van de gebruiker wordt gevraagd en vervolgens een begroetingsbericht weergeeft

Bij deze tutorial wordt ervan uitgegaan dat je de tutorial hebt voltooid Macro's in Excel en heb het tabblad ONTWIKKELAAR in Excel ingeschakeld.

  • Maak een nieuw werkboek
  • Sla het op in een Excel-macro-compatibel werkbladformaat *.xlsm
  • Klik op het tabblad ONTWIKKELAAR
  • Klik op de vervolgkeuzelijst INVOEGEN onder de lintbalk met bedieningselementen
  • Selecteer een opdrachtknop zoals weergegeven in de onderstaande afbeelding

VBA Hello World-programma

Teken de opdrachtknop ergens op het werkblad

U krijgt het volgende dialoogvenster te zien

VBA Hello World-programma

  • Hernoem de macronaam naar btnHelloWorld_Click
  • Klik op een nieuwe knop
  • U krijgt het volgende VBA-codevenster

VBA Hello World-programma

Voer de volgende instructiecodes in

Dim name As String
name = InputBox("Enter your name")
MsgBox "Hello " + name

HIER,

  • “Dim naam als String” creëert een variabele met de naam naam. De variabele accepteert tekst, numerieke en andere tekens omdat we deze als een string hebben gedefinieerd
  • “naam = InvoerBox("Vul uw naam in")" roept de ingebouwde functie Invoer aanBox waarin een venster wordt weergegeven met het bijschrift Voer uw naam in. De ingevoerde naam wordt vervolgens opgeslagen in de naamvariabele.
  • "MsgBox “Hallo” + naam” roept de ingebouwde functie Msg aanBox waarop Hallo en de ingevoerde naam worden weergegeven.

Uw volledige codevenster zou er nu als volgt uit moeten zien

VBA Hello World-programma

  • Sluit het codevenster
  • Klik met de rechtermuisknop op knop 1 en selecteer Tekst bewerken
  • Enter Zeg hallo

VBA Hello World-programma

  • Klik op Zeg hallo
  • U krijgt het volgende invoerveld

VBA Hello World-programma

  • Voer uw naam in, bijvoorbeeld Jordan
  • U krijgt het volgende berichtvenster te zien

VBA Hello World-programma

Gefeliciteerd, u heeft zojuist uw eerste VBA-programma in Excel gemaakt

Stapsgewijs voorbeeld van het maken van een eenvoudige EMI-calculator in Excel

In deze tutorial oefening gaan we een eenvoudig programma maken dat de EMI berekent. EMI is de afkorting voor Equated Monthly Instalment. Het is het maandelijkse bedrag dat u terugbetaalt wanneer u een lening afsluit. De volgende afbeelding toont de formule voor het berekenen van EMI.

Een eenvoudige EMI-calculator maken in Excel

De bovenstaande formule is complex en kan in Excel worden geschreven. Het goede nieuws is dat Excel het bovenstaande probleem al heeft opgelost. U kunt de PMT-functie gebruiken om het bovenstaande te berekenen.

De PMT-functie werkt als volgt

=PMT(rate,nper,pv)

HIER,

  • "Tarief" dit is het maandtarief. Het is de rente gedeeld door het aantal betalingen per jaar
  • “nper” het is het totale aantal betalingen. Het is de looptijd van de lening vermenigvuldigd met het aantal betalingen per jaar
  • “pv” huidige waarde. Het is het werkelijke leningbedrag

Maak de GUI met behulp van Excel-cellen, zoals hieronder weergegeven

Een eenvoudige EMI-calculator maken in Excel

Voeg een opdrachtknop toe tussen rij 7 en 8

Geef de knopmacro de naam btnCalculateEMI_Click

Klik op de knop Bewerken

Voer de volgende code in

Dim monthly_rate As Single, loan_amount As Double, number_of_periods As Single, emi As Double
monthly_rate = Range("B6").Value / Range("B5").Value
loan_amount = Range("B3").Value
number_of_periods = Range("B4").Value * Range("B5").Value 
emi = WorksheetFunction.Pmt(monthly_rate, number_of_periods, -loan_amount)
Range("B9").Value = emi

HIER,

  • "Dim maandelijks_tarief als enkelvoudig,..." Dim is het trefwoord dat wordt gebruikt om te definiëren variabelen in VBA, maandelijks_tarief is de naam van de variabele, Single is het gegevenstype dat betekent dat de variabele een getal accepteert.
  • “maandelijks_tarief = Bereik (“B6”). Waarde / Bereik (“B5”). Waarde” Bereik is de functie die wordt gebruikt om toegang te krijgen tot Excel-cellen vanuit VBA, Range ("B6"). Waarde verwijst naar de waarde in B6
  • “WerkbladFunctie.Pmt(…)” WorksheetFunction is de functie die wordt gebruikt om toegang te krijgen tot alle functies in Excel

De volgende afbeelding toont de volledige broncode

Een eenvoudige EMI-calculator maken in Excel

  • Klik op opslaan en sluit het codevenster
  • Test uw programma zoals weergegeven in de onderstaande animatieafbeelding

Een eenvoudige EMI-calculator maken in Excel

Hoe VBA in Excel te gebruiken Voorbeeld

De volgende stappen leggen uit hoe u VBA in Excel kunt gebruiken.

Stap 1) Open uw VBA-editor

Klik op het tabblad Ontwikkelaar in het hoofdmenu op het pictogram "Visual Basic". Uw VBA-editor wordt geopend.

Gebruik VBA in Excel

Stap 2) Selecteer het Excel-blad & Double klik op het werkblad

Het opent een VBA-editor, van waaruit u het Excel-blad kunt selecteren waar u de code wilt uitvoeren. Om de VBA-editor te openen, dubbelklikt u op het werkblad.

Gebruik VBA in Excel

Er wordt een VBA-editor geopend aan de rechterkant van de map. Het zal verschijnen als een witte ruimte.

Gebruik VBA in Excel

Stap 3) Schrijf alles wat u wilt weergeven in het berichtBox

In deze stap gaan we ons eerste VBA-programma zien. Om ons programma te lezen en weer te geven hebben we een object nodig. In VBA wordt dat object of medium in een MsgBox.

  • Schrijf eerst “Sub” en vervolgens uw “programmanaam” (Guru99)
  • Schrijf alles wat u wilt weergeven in het berichtBox (Guru99-leren is leuk)
  • Beëindig het programma met End Sub

Gebruik VBA in Excel

Stap 4) Klik op de groene knop Uitvoeren bovenaan de editor

In de volgende stap moet je deze code uitvoeren door op de groene knop Uitvoeren bovenaan het editormenu te klikken.

Gebruik VBA in Excel

Stap 5) Selecteer het blad en klik op de knop "Uitvoeren".

Wanneer u de code uitvoert, verschijnt er een ander venster. Hier moet u het blad selecteren waarop u het programma wilt weergeven en op de knop "Uitvoeren" klikken

Gebruik VBA in Excel

Stap 6) Geef het bericht weer in BerichtBox

Wanneer u op de knop Uitvoeren klikt, wordt het programma uitgevoerd. Het bericht wordt weergegeven in MsgBox.

Gebruik VBA in Excel

Download de bovenstaande Excel-code

Samenvatting

VBA Full Form: Visual Basic for Application. Het is een subcomponent van de programmeertaal Visual Basic die u kunt gebruiken om applicaties in Excel te maken. Met VBA kunt u nog steeds profiteren van de krachtige functies van Excel en deze gebruiken in VBA.