Excel VBA-funktionsvejledning: Retur, opkald, eksempler

Hvad er en funktion?

En funktion er et stykke kode, der udfører en bestemt opgave og returnerer et resultat. Funktioner bruges mest til at udføre gentagne opgaver såsom formatering af data til output, udførelse af beregninger osv.

Antag, at du udvikler et program, der beregner renter på et lån. Du kan oprette en funktion, der accepterer lånebeløbet og tilbagebetalingsperioden. Funktionen kan så bruge lånebeløbet og tilbagebetalingstiden til at beregne renten og returnere værdien.

Hvorfor bruge funktioner

Fordelene ved at bruge funktioner er de samme som dem i ovenstående afsnit om hvorfor man bruger subrutiner.

Regler for navngivning af funktioner

Reglerne for navngivning fungerer på samme måde som dem i ovenstående afsnit om regler for navngivning af underrutiner.

VBA-syntaks til at deklarere funktion

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

HER i syntaksen,

Kode Handling
  • "Privat funktion myFunction(...)"
  • Her bruges nøgleordet "Function" til at erklære en funktion ved navn "myFunction" og starte funktionens brødtekst.
  • Nøgleordet 'Privat' bruges til at specificere funktionens omfang
  • "ByVal arg1 som heltal, ByVal arg2 som heltal"
  • Den erklærer to parametre af heltalsdatatypen ved navn 'arg1' og 'arg2.'
  • myFunction = arg1 + arg2
  • evaluerer udtrykket arg1 + arg2 og tildeler resultatet til navnet på funktionen.
  • "Afslut funktion"
  • "End Sub" bruges til at afslutte funktionens brødtekst

Funktion demonstreret med eksempel:

Funktioner ligner meget subrutinen. Den største forskel mellem en underrutine og en funktion er, at funktionen returnerer en værdi, når den kaldes. Mens en underrutine ikke returnerer en værdi, når den kaldes. Lad os sige, at du vil tilføje to tal. Du kan oprette en funktion, der accepterer to tal og returnerer summen af ​​tallene.

  1. Opret brugergrænsefladen
  2. Tilføj funktionen
  3. Skriv kode til kommandoknappen
  4. Test koden

Trin 1) Brugergrænseflade

Tilføj en kommandoknap til regnearket som vist nedenfor

VBA-funktioner og underrutine

Indstil følgende egenskaber for CommanButton1 til følgende.

S / N kontrol Ejendom Værdi
1 KommandoKnap1 Navn btnTilføjNumbers
2 Caption Tilføj Numbers Funktion


Din grænseflade skulle nu se ud som følger

VBA-funktioner og underrutine

Trin 2) Funktionskode.

  1. Tryk på Alt + F11 for at åbne kodevinduet
  2. Tilføj følgende kode
Private Function addNumbers(ByVal firstNumber As Integer, ByVal secondNumber As Integer)
    addNumbers = firstNumber + secondNumber
End Function

HER i koden,

Kode Handling
  • “Privat funktion tilføjeNumbers(...) "
  • Det erklærer en privat funktion "tilføjNumbers”, der accepterer to heltalsparametre.
  • "ByVal firstNumber As Integer, ByVal secondNumber As Integer"
  • Den erklærer to parametervariable firstNumber og secondNumber
  • "tilføjeNumbers = firstNumber + secondNumber"
  • Den tilføjer værdierne firstNumber og secondNumber og tildeler summen, der skal tilføjesNumbers.

Trin 3) Skriv kode, der kalder funktionen

  1. Højreklik på btnAddNumbers_Klik på kommandoknappen
  2. Vælg Vis kode
  3. Tilføj følgende kode
Private Sub btnAddNumbersFunction_Click()
    MsgBox addNumbers(2, 3)
End Sub

HER i koden,

Kode Handling
"MsgBox tilføjeNumbers(en)"
  • Det kalder funktionen addNumbers og passerer ind 2 og 3 som parametre. Funktionen returnerer summen af ​​de to tal fem (5)

Trin 4) Kør programmet, du vil få følgende resultater

VBA-funktioner og underrutine

Download Excel, der indeholder ovenstående kode

Download ovenstående Excel-kode

Resumé

  • En funktion er et stykke kode, der udfører en bestemt opgave. En funktion returnerer en værdi efter udførelse.
  • Både underrutiner og funktioner tilbyder kodegenanvendelighed
  • Både underrutiner og funktioner hjælper med at nedbryde store bidder af kode til små håndterbare kode.