Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Leer Variabelen en Gegevenstypen | VBA Fundamentals
Excel VBA voor Bedrijfsautomatisering

Variabelen en Gegevenstypen

Veeg om het menu te tonen

Elke procedure die je schrijft, heeft een plek nodig om waarden tijdelijk op te slaan — zoals een klantnaam, een lopend totaal, of een ja/nee-indicator. Dat is wat een variabele is: een gelabelde doos in het geheugen waarin je een waarde kunt plaatsen en later weer kunt ophalen. Je maakt er één aan met Dim (afkorting van "dimension"), en je geeft VBA direct aan welk soort waarde erin komt:

Dim productName As String
Dim currentStock As Integer
Dim unitPrice As Double

Elke regel reserveert een gelabelde plek: productName kan alleen tekst bevatten, currentStock alleen gehele getallen, unitPrice alleen getallen met decimalen. Het vooraf opgeven van het type is geen bureaucratie — het zorgt ervoor dat VBA fouten kan opsporen voordat ze bugs worden. Probeer productName = 47 uit te voeren en VBA stopt direct met een type mismatch-fout, in plaats van stilletjes iets verkeerds op te slaan en later voor verwarring te zorgen.

Veelvoorkomende gegevenstypen

Vuistregel: gebruik Long in plaats van Integer voor tellers en rijnummers — het is niet trager in moderne Excel en voorkomt overflow bij grote datasets. Je zult Dim i As Long overal in deze cursus tegenkomen.

Option Explicit

Plaats deze ene regel helemaal bovenaan elk module, vóór elke Sub. Het verandert één ding: VBA weigert nu elke regel uit te voeren die een variabele gebruikt die je niet eerst met Dim hebt gedeclareerd:

Option Explicit
 
Sub Example()
    Dim total As Double
    total = 100        ' works — declared above
    toatl = 200        ' typo — Option Explicit catches this at compile time
End Sub

Zonder Option Explicit maakt die typefout stilletjes een nieuwe variabele aan met de naam toatl, en je vraagt je twintig minuten af waarom total nooit verandert. Deze ene gewoonte voorkomt meer bugs dan wat dan ook in dit hoofdstuk.

Constanten

Constanten zijn benoemde waarden die nooit veranderen tijdens het uitvoeren van de code — ideaal voor zaken als belastingtarieven of drempelwaarden:

Const REORDER_THRESHOLD As Integer = 20

Door REORDER_THRESHOLD te gebruiken in plaats van overal 20 te typen, hoef je bij een wijziging in de bedrijfsregel slechts één regel aan te passen in plaats van je hele code te doorzoeken.

Taak

  1. Schrijf in Section_2_VBA_Fundamentals.xlsm een Sub die een String-variabele voor een productnaam, een Double voor de prijs en een Integer voor de voorraad declareert.
  2. Ken deze de waarden toe voor USB-C Hub door de letterlijke waarden in te voeren.
  3. Gebruik MsgBox om alle drie in één bericht weer te geven, samengevoegd tot één string.
  4. Voeg Const LOW_STOCK As Integer = 20 boven je Sub toe en gebruik deze in een MsgBox om deze te vergelijken met de voorraadvariabele.
Tip
expand arrow
  1. Je hebt drie Dim-regels nodig met verschillende types — kijk terug naar Figuur 2.1 als je de syntaxis bent vergeten: Dim name As Type.
  2. De rij van USB-C Hub is Price 39.50, Stock 44. Ken deze direct toe: price = 39.50.
  3. Samenvoegen doe je met &, niet met +. Bouw de string in delen op: "Name: " & productName & ", Price: " & price.
  4. Constanten worden buiten een Sub gedeclareerd, bovenaan de module, direct na Option Explicit. Vergelijk stockCount met LOW_STOCK met een gewone > of < in een MsgBox-string — je hebt nog geen If nodig, toon gewoon beide waarden zodat je de vergelijking kunt zien.
Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 2. Hoofdstuk 1

Vraag AI

expand

Vraag AI

ChatGPT

Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.

Sectie 2. Hoofdstuk 1
some-alt