Excel VBA-functiehandleiding: Return, Call, Voorbeelden

Wat is een functie?

Een functie is een stukje code dat een specifieke taak uitvoert en een resultaat retourneert. Functies worden meestal gebruikt om repetitieve taken uit te voeren, zoals het opmaken van gegevens voor uitvoer, het uitvoeren van berekeningen, enz.

Stel dat u een programma ontwikkelt dat de rente op een lening berekent. U kunt een functie maken die het leenbedrag en de terugverdientijd accepteert. De functie kan vervolgens het geleende bedrag en de terugverdientijd gebruiken om de rente te berekenen en de waarde terug te geven.

Waarom functies gebruiken

De voordelen van het gebruik van functies zijn dezelfde als die in het bovenstaande gedeelte over het gebruik van subroutines.

Regels voor het benoemen van functies

De regels voor het benoemen van functies zijn dezelfde als die in de bovenstaande sectie over regels voor het benoemen van subroutines.

VBA-syntaxis voor het declareren van functie

Private Function myFunction (ByVal arg1 As Integer, ByVal arg2 As Integer)
    myFunction = arg1 + arg2
End Function

HIER in de syntaxis,

Code Actie
  • “Privéfunctie mijnFunctie(…)”
  • Hier wordt het trefwoord “Functie” gebruikt om een ​​functie met de naam “mijnFunctie” te declareren en de hoofdtekst van de functie te starten.
  • Het trefwoord 'Privé' wordt gebruikt om de reikwijdte van de functie aan te geven
  • “ByVal arg1 als geheel getal, ByVal arg2 als geheel getal”
  • Het declareert twee parameters van het gegevenstype geheel getal, genaamd 'arg1' en 'arg2.'
  • mijnFunctie = arg1 + arg2
  • evalueert de uitdrukking arg1 + arg2 en wijst het resultaat toe aan de naam van de functie.
  • “Eindefunctie”
  • “End Sub” wordt gebruikt om de hoofdtekst van de functie te beëindigen

Functie gedemonstreerd met voorbeeld:

Functies lijken erg op de subroutine. Het belangrijkste verschil tussen een subroutine en een functie is dat de functie een waarde retourneert wanneer deze wordt aangeroepen. Terwijl een subroutine geen waarde retourneert wanneer deze wordt aangeroepen. Stel dat u twee getallen wilt optellen. U kunt een functie maken die twee getallen accepteert en de som van de getallen retourneert.

  1. Maak de gebruikersinterface
  2. Voeg de functie toe
  3. Schrijf code voor de opdrachtknop
  4. Test de code

Stap 1) Gebruikersinterface

Voeg een opdrachtknop toe aan het werkblad, zoals hieronder weergegeven

VBA-functies en subroutine

Stel de volgende eigenschappen van CommanButton1 in op het volgende.

S / N Controle Appartementen Waarde
1 CommandoKnop1 Naam btnToevoegenNumbers
2 Onderschrift Toevoegen Numbers Functie


Uw interface zou er nu als volgt uit moeten zien

VBA-functies en subroutine

Stap 2) Functiecode.

  1. Druk op Alt + F11 om het codevenster te openen
  2. Voeg de volgende code toe
Private Function addNumbers(ByVal firstNumber As Integer, ByVal secondNumber As Integer)
    addNumbers = firstNumber + secondNumber
End Function

HIER in de code,

Code Actie
  • “Privéfunctie toevoegenNumbers(...) "
  • Het verklaart een privéfunctie “toevoegenNumbers” dat twee gehele parameters accepteert.
  • “ByVal firstNumber als geheel getal, ByVal secondNumber als geheel getal”
  • Het declareert twee parametervariabelen firstNumber en secondNumber
  • "toevoegenNumbers = eersteGetal + tweedeGetal”
  • Het voegt de waarden firstNumber en secondNumber toe en wijst de op te tellen som toeNumbers.

Stap 3) Schrijf code die de functie aanroept

  1. Klik met de rechtermuisknop op btnAddNumbers_Klik op de opdrachtknop
  2. Selecteer Code bekijken
  3. Voeg de volgende code toe
Private Sub btnAddNumbersFunction_Click()
    MsgBox addNumbers(2, 3)
End Sub

HIER in de code,

Code Actie
“BerichtBox toevoegenNumbers(een)"
  • Het roept de functie addNumbers en geeft 2 en 3 door als parameters. De functie retourneert de som van de twee getallen vijf (5)

Stap 4) Voer het programma uit en u krijgt de volgende resultaten

VBA-functies en subroutine

Download Excel met bovenstaande code

Download de bovenstaande Excel-code

Samenvatting

  • Een functie is een stukje code dat een specifieke taak uitvoert. Een functie retourneert een waarde na uitvoering.
  • Zowel subroutines als functies bieden herbruikbaarheid van code
  • Zowel subroutines als functies helpen grote stukken code op te splitsen in kleine, beheersbare code.