Forskjellen mellom subrutine og amp; Funksjon i Excel VBA

  • Dele Denne
Hugh West

Det er mange likheter mellom en egendefinert funksjon/brukerdefinert funksjon -prosedyre og underprosedyren/underrutinen i Excel . Imidlertid har Funksjon -prosedyrer noen viktige forskjeller fra Subrutine -prosedyrer. I denne artikkelen vil vi se forskjellen mellom subrutine og funksjon i Excel VBA .

Last ned øvelsesarbeidsbok

Du kan laste ned øvelsesarbeidsboken herfra.

Subrutine og funksjon.xlsm

Introduksjon til underrutine & Funksjon i Excel VBA

Den viktigste forskjellen er at en funksjon returnerer en verdi (et tall eller en tekststreng). Verdien av funksjonsprosedyren er lagret i en variabel; en variabel hvis navn er det samme som funksjonens navn. Subrutinen utfører et sett med oppgaver og returnerer ikke en verdi som funksjoner.

1. Excel VBA-brukerdefinert funksjon

Se følgende eksempel. AddTwoNumber er funksjonsnavnet. Denne funksjonen vil returnere summen av to tall som sendes som argumenter ( arg1 og arg2 ). Summen er lagret i en variabel kalt AddTwoNumber samme som funksjonsnavnet.

AddTwoNumber VBA-funksjon

For å lage en egendefinert funksjon, følg disse trinnene:

  • Først aktiverer du VBA Editor ved å trykke Alt+F11 .
  • Velg deretter arbeidsboken i Prosjekt -vinduet.
  • For det tredje,velg Sett inn og deretter Modul for å sette inn en VBA Du kan også bruke en eksisterende kodemodul. Kodemodulen må være en standard VBA -modul.

  • Deretter kopierer og limer du inn koden nedenfor for funksjonen. Funksjonsnavnet må være unikt for den arbeidsboken. Skriv inn en liste over argumentene (hvis noen) i parentes. Hvis funksjonen ikke bruker et argument, legger VBA Editor til et sett med tomme parenteser.
6650
  • I tillegg er denne delen viktig. Sett inn VBA -koden som utfører det tiltenkte målet. Verdien du ønsker å returnere fra denne funksjonen vil bli lagret i en variabel; en variabel hvis navn er det samme som funksjonens navn.
  • Til slutt avslutter du funksjonen med en End Function .

Les mer: Hvordan bruke VBA-brukerdefinert funksjon (4 egnede eksempler)

Lignende avlesninger

  • 22 makroeksempler i Excel VBA
  • 20 praktiske kodingstips for å mestre Excel VBA
  • Hvordan skrive VBA-kode i Excel (Med enkle trinn)
  • Typer VBA-makroer i Excel (en hurtigveiledning)

2. Excel VBA-underrutine

I følgende eksempel vil du se hvordan subrutinen i Excel VBA fungerer. Her starter Sub kroppen til subrutinen. Subrutinenavnet er square_root. I kroppen til subrutinen utfører vi en oppgave i cellen A2 . Oppgaven er å utføre kvadratroten i celle A2 . Det betyr at hvis cellen inneholder et tall, vil Excel VBA utføre kvadratroten av den cellen. End Sub avslutter hoveddelen av subrutinen.

For å opprette en subrutine, følg disse trinnene:

  • Først aktiverer du VB Editor (trykk Alt+F11 ).
  • For det andre, velg arbeidsboken i vinduet Prosjekt .
  • For det tredje, velg Sett inn og deretter Module for å sette inn en VBA-modul. Du kan også bruke en eksisterende kodemodul. Kodemodulen må være en standard VBA-modul.

  • Deretter skriver du inn nøkkelordet SUB etterfulgt av subrutinens navn.
  • I tillegg setter du inn VBA -koden du vil utføre.
2414
  • Til slutt, subrutinen med en End Sub .

Viktige forskjeller mellom subrutine og amp; Funksjon i Excel VBA

Etter å ha utført subrutinen og funksjonene separat kan vi konkludere med forskjellene i tabellen nedenfor.

Funksjoner Subrutiner
1) Returnerer en verdi. 1) Utfører et sett med oppgaver, men returnerer ikke en verdi. .
2) Funksjoner kalles ved å bruke en variabel. 2) Kan tilbakekalles fra hvor som helst i programmet i flere typer etter erklæringen.
3) Kan brukes som formler i regnearkene. 3) Kan ikke brukesdirekte i regnearkene som formler.
4) Vi kan bruke funksjoner som formler i regnearkene. Vi kan utføre det flere ganger etter å ha kjørt koden. 4) For å finne resultatet av Excel VBA-subrutinen må vi først sette inn en verdi i ønsket celle.
5) Syntaks:

Function Function_Name()

//Sett med koder

Slutfunksjon

5) Syntaks:

Sub Sub_Name ()

//Sett med koder

End Sub

Ting å huske

  • Utvikleren fanen må være aktivert før du bruker disse metodene.
  • Vi kan finne Subrutine i Makroer i Utvikler -fanen mens brukerdefinerte funksjoner i Funksjon -fanen ved bruk av tilpasset søk.

Konklusjon

Hvis du fortsatt har problemer med noen av disse instruksjonene eller har avvik, gi oss beskjed i kommentarfeltet. Teamet vårt er klare til å svare på alle dine spørsmål. For eventuelle excel-relaterte problemer kan du besøke nettstedet vårt ExcelWIKI for å finne løsninger.

Hugh West er en svært erfaren Excel-trener og analytiker med over 10 års erfaring i bransjen. Han har en bachelorgrad i regnskap og finans og en mastergrad i bedriftsøkonomi. Hugh har en lidenskap for undervisning og har utviklet en unik undervisningstilnærming som er enkel å følge og forstå. Hans ekspertkunnskap om Excel har hjulpet tusenvis av studenter og fagfolk over hele verden med å forbedre sine ferdigheter og utmerke seg i karrieren. Gjennom bloggen sin deler Hugh sin kunnskap med verden, og tilbyr gratis Excel-opplæringer og nettbasert opplæring for å hjelpe enkeltpersoner og bedrifter å nå sitt fulle potensial.