Excel VBA-funksjonsopplæring: retur, anrop, eksempler

Hva er en funksjon?

En funksjon er et stykke kode som utfører en spesifikk oppgave og returnerer et resultat. Funksjoner brukes for det meste til å utføre repeterende oppgaver som å formatere data for utdata, utføre beregninger, etc.

Tenk deg at du utvikler et program som beregner renter på et lån. Du kan opprette en funksjon som godtar lånebeløpet og tilbakebetalingstiden. Funksjonen kan da bruke lånebeløp og tilbakebetalingstid for å beregne renten og returnere verdien.

Hvorfor bruke funksjoner

Fordelene ved å bruke funksjoner er de samme som i avsnittet ovenfor om hvorfor du bruker subrutiner.

Regler for navngivning av funksjoner

Reglene for navngivning fungerer på samme måte som i avsnittet ovenfor om regler for navngivning av underrutiner.

VBA-syntaks for å deklarere funksjon

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

HER i syntaksen,

Kode Handling
  • "Privat funksjon myFunction(...)"
  • Her brukes nøkkelordet "Function" for å deklarere en funksjon kalt "myFunction" og starte hoveddelen av funksjonen.
  • Nøkkelordet "Privat" brukes til å spesifisere omfanget av funksjonen
  • "ByVal arg1 som heltall, ByVal arg2 som heltall"
  • Den erklærer to parametere av heltallsdatatypen kalt 'arg1' og 'arg2.'
  • minFunksjon = arg1 + arg2
  • evaluerer uttrykket arg1 + arg2 og tilordner resultatet til navnet på funksjonen.
  • "Avslutt funksjon"
  • "End Sub" brukes til å avslutte funksjonens brødtekst

Funksjon demonstrert med eksempel:

Funksjoner ligner veldig på subrutinen. Den største forskjellen mellom en subrutine og en funksjon er at funksjonen returnerer en verdi når den kalles. Mens en subrutine ikke returnerer en verdi, når den kalles. La oss si at du vil legge til to tall. Du kan lage en funksjon som godtar to tall og returnerer summen av tallene.

  1. Lag brukergrensesnittet
  2. Legg til funksjonen
  3. Skriv kode for kommandoknappen
  4. Test koden

Trinn 1) Brukergrensesnitt

Legg til en kommandoknapp i regnearket som vist nedenfor

VBA-funksjoner og subrutine

Sett følgende egenskaper for CommanButton1 til følgende.

S / N Kontroll: Eiendom Verdi
1 Kommandoknapp1 Navn btnLegg tilNumbers
2 Bildetekst Legg til Numbers Funksjon


Grensesnittet ditt skal nå vises som følger

VBA-funksjoner og subrutine

Trinn 2) Funksjonskode.

  1. Trykk Alt + F11 for å åpne kodevinduet
  2. Legg til 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 funksjon legg tilNumbers(…) ”
  • Den erklærer en privat funksjon "legg tilNumbers” som godtar to heltallsparametere.
  • "ByVal firstNumber As Integer, ByVal secondNumber As Integer"
  • Den erklærer to parametervariabler firstNumber og secondNumber
  • "legge tilNumbers = firstNumber + secondNumber"
  • Den legger til firstNumber- og secondNumber-verdiene og tildeler summen som skal legges tilNumbers.

Trinn 3) Skriv kode som kaller opp funksjonen

  1. Høyreklikk på btnAddNumbers_Klikk på kommandoknappen
  2. Velg Vis kode
  3. Legg til følgende kode
Private Sub btnAddNumbersFunction_Click()
    MsgBox addNumbers(2, 3)
End Sub

HER i koden,

Kode Handling
"MsgBox legge tilNumbers(2,3) ”
  • Det kaller funksjonen addNumbers og passerer inn 2 og 3 som parametere. Funksjonen returnerer summen av de to tallene fem (5)

Trinn 4) Kjør programmet, vil du få følgende resultater

VBA-funksjoner og subrutine

Last ned Excel som inneholder koden ovenfor

Last ned Excel-koden ovenfor

Sammendrag

  • En funksjon er et stykke kode som utfører en bestemt oppgave. En funksjon returnerer en verdi etter utførelse.
  • Både subrutiner og funksjoner tilbyr kodegjenbrukbarhet
  • Både subrutiner og funksjoner hjelper til med å bryte ned store biter av kode til liten håndterbar kode.

Oppsummer dette innlegget med: