VBE verkennen

Inleiding

Als je VBA programmacode wilt schrijven heb je een editor nodig. Voor ons is dit de VBE (Visual Basic Editor). Hoewel het veel mensen het niet weten, is VBA inclusief de VBE standaard inbegrepen in elke Office toepassing. In dit artikel enkele handige aanwijzingen voor de belangrijkste onderdelen.

In de rubriek Objectenoverzicht wordt extra aandacht besteed aan zaken die later goed van pas komen.

VBE openen

Standaard wordt de tab Ontwikkelaars niet op het lint weergegeven. Indien je dit wenst, doe dan het volgende:

  • Plaats de muisaanwijzer boven het lint.
  • Klik met de secundaire muisknop (afhankelijk van je instelling, maar meestal rechts).
  • Kies Het lint aanpassen...
  • Het dialoogvenster Opties voor [toepassing] verschijnt. In de rechter kolom zie je onder Hoofdtabbladen een aantal namen waaronder Ontwikkelaars.
  • Schakel dit vakje in en klik op OK.

Je kan de Visible Basic Editor ook openen door op Alt+F11 te drukken.

Projectverkenner

Met de Projectverkenner kan je modules, klassemodules e.d. benaderen. De Projectverkenner kan je openen via Beeld of met Ctrl+R.

Venster Eigenschappen

Met het venster Eigenschappen kan je eigenschappen van het geselecteerde object wijzigen. Het venster Eigenschappen kan je openen via Beeld of met Ctrl+F4.

Objectenoverzicht

Nu wordt het interessanter omdat je veel met objecten zal werken. Het Objectenoverzicht kan je openen via Beeld of met Ctrl+F2.

Objecten verkennen

Bovenaan wordt een vak weergegeven met <Alle bibliotheken>. Hierin zijn alle bibliotheken beschikbaar die aan het huidige project zijn verbonden. Om wat inzicht te krijgen over een bepaald item kan je het volgende doen. Stel, je hebt de VBE geopend via Word. Kies in het vak waar <Alle bibliotheken> worden weergegeven Word en alle objecten van Word worden weergegeven. Als je in het vak Klassen de waarde <globalen> selecteert, verschijnen alle globalen in het vak er naast. Selecteer een klasse en alle leden van die klasse worden weergegeven.

Tip Selecteer een klasse of een lid van de klasse en klik op het vraagteken op de werkbalk of druk op F1 voor help over het geselecteerde item. Help is meestal beschikbaar, zo niet dan kan je het ook op de website opzoeken. Zie Verwijzingen naar Microsoft.

Opsommingen en constanten

We besteden nu extra aandacht aan het volgende omdat we in de cursussen bijzonder mooie technieken zullen gaan toepassen.

We hadden de bibliotheek Word geselecteerd. Als je in het vak Klassen naar beneden scrolt, zal je in de lijst items zien met de prefix Wd*. Dit worden opsommingen genoemd (enumerations). Selecteer een van zo'n klasse die begint met Wd. De lijst die je aan de rechterkant ziet zijn weer de leden van de klasse. Deze leden zijn constanten en beginnen eveneens met wd maar dan zonder hoofdletter. De toegekende prefix geeft aan dat deze opsommingen en constanten Word onderdelen zijn. Voor elke Office toepassing gebruikt Microsoft consistent een specifieke prefix (vb voor VBA, Ol voor Outlook, Ac voor Access, Xl voor Excel, Wd voor Word). Essentieel is dat d.m.v. de prefix een waarde uniek wordt gemaakt. Want een van deze 'onderdelen' zou bijvoorbeeld nodig kunnen zijn voor zowel Word als voor Excel. De prefix maakt het dan uniek terwijl de rest van de naam hetzelfde kan blijven.

Scrol in het vak Klassen verder naar beneden. Op een gegeven moment zie je (in de Word bibliotheek) opsommingen met de prefix Xl*. Inderdaad: in de Word bibliotheek zijn Excel opsommingen met hun constanten opgenomen. Wat we hier van kunnen leren is, dat een applicatie gebruik kan maken van opsommingen en constanten van een andere applicatie. Zolang namen maar uniek zijn.

Opmerking In de cursussen zullen wij eveneens gebruik gaan maken van opsommingen, ook uit andere applicaties.

Constanten van opsommingen hebben een numerieke waarde. Wanneer je een constante selecteert, wordt de waarde ervan onderaan weergegeven. Die waarde heb je nodig als je een applicatie via een andere applicatie aanstuurt. Althans op onze manier, want we zullen geen verwijzing naar een bibliotheek instellen... Wat wel mogelijk is, is om bijvoorbeeld in Access, constanten te declareren van Excel, Word, etc. onder dezelfde naam. Ook dit komt in cursussen aan bod.

Venster Direct

Het venster Direct (ook wel debug venster genoemd) is erg handig om code direct uit te voeren en dus ook te testen. Het venster Direct kan je openen via Beeld of met Ctrl+G.

In het venster Direct kan je o.a. het volgende doen:

  • Een procedure Sub aanroepen zoals gewoonlijk. Druk op Enter en de procedure wordt uitgevoerd.
  • Als je een procedure Function wilt uitvoeren die het resultaat teruggeeft, type je eerst een vraagteken, bijvoorbeeld: ? ProcName("argument1", True)
  • Als je een procedure Function wilt uitvoeren zonder het resultaat terug te geven, type je geen vraagteken en geen haakjes openen en sluiten, bijvoorbeeld: ProcName "argument1", True
  • Binnen een procedure (Sub/Function) kan je ook met de regel Debug.Print [gewenste waarde] naar het venster Direct schrijven om een test uit te voeren.
Cursussen