Excel VBA kent twee soorten procedures: functies en subroutines. Een functie is een benoemd onderdeel van een programma, dat een resultaatwaarde teruggeeft. Een subroutine geeft geen resultaat terug maar oefent zijn invloed uit door 'neven-effecten'.

Vele andere programmeertalen kennen alleen het begrip functie. Een subroutine kan immers beschouwd worden als een functie die een 'lege' resultaatswaarde teruggeeft.

Een VBA-functie is erg goed vergelijkbaar met een Excel werkblad-functie. Met de uitdrukking =WORTEL(9) berekent u in een werkblad de vierkantswortel van het getal 9. De naam van de functie is WORTEL, zij heeft een invoerparameter (9) en een resultaatswaarde (3).

Een subroutine kunt u best vergelijken met een macro die opgenomen is met de macrorecorder. U hebt eenmaal voorgedaan aan Excel welke acties moeten uitgevoerd worden. Deze zijn opgenomen (in een subroutine) en u kunt die achteraf meermaals oproepen of uitvoeren. Zoals een functie heeft deze macro een naam (eventueel ook invoerparameters) maar geen resultaatswaarde. De invloed van de macro gebeurt door neveneffecten.

©  H. Schouppe
Laatste wijziging: 2004-05-12