Forskellen mellem underrutine & Funktion i Excel VBA

  • Del Dette
Hugh West

Der er mange ligheder mellem en brugerdefineret funktion/brugerdefineret funktion procedure og og Underprocedure/underrutine Excel . dog, Funktion procedurer har nogle vigtige forskelle i forhold til Underrutine procedurer. I denne artikel vil vi se forskellen mellem underrutiner og funktioner i Excel VBA .

Download arbejdsbog til øvelser

Du kan downloade arbejdsbogen til øvelser her.

Underrutiner og funktioner.xlsm

Introduktion til underrutiner & Funktion i Excel VBA

Den vigtigste forskel er, at en funktion returnerer en værdi (et tal eller en tekststreng). Værdien af funktionsproceduren gemmes i en variabel; en variabel, hvis navn er det samme som funktionens navn. Underrutinen udfører en række opgaver og returnerer ikke en værdi som funktioner.

1. Excel VBA brugerdefineret funktion

Se følgende eksempel. AddTwoNumber er funktionsnavnet. Denne funktion returnerer summen af to tal, der er angivet som argumenter ( arg1 og arg2 ). Summen gemmes i en variabel med navnet AddTwoNumber som er det samme som funktionsnavnet.

AddTwoNumber VBA-funktion

Du kan oprette en brugerdefineret funktion ved at følge disse trin:

  • For det første skal du aktivere VBA-editor ved at trykke på Alt+F11 .
  • For det andet skal du vælge arbejdsmappen i Projekt vindue.
  • For det tredje skal du vælge Indsæt og derefter Modul for at indsætte en VBA Du kan også bruge et eksisterende kodemodul. Kodemodulet skal være et standard VBA modul.

  • Kopier og indsæt derefter nedenstående kode til funktionen. Funktionsnavnet skal være unikt for den pågældende projektmappe. Indtast en liste over eventuelle argumenter i parentes. Hvis funktionen ikke bruger et argument, skal VBA-editor tilføjer et sæt tomme parenteser.
 Funktion AddTwoNumber(arg1, arg2) 'Giver summen af to tal, der angives som argumenter AddTwoNumber = arg1 + arg2 End Function 
  • Desuden er denne del vigtig. Indsæt den VBA Den værdi, som du ønsker at returnere fra denne funktion, vil blive gemt i en variabel, en variabel, hvis navn er det samme som funktionens navn.
  • Endelig afsluttes funktionen med en Slutfunktion .

Læs mere: Sådan bruges VBA brugerdefinerede funktioner (4 passende eksempler)

Lignende læsninger

  • 22 makroeksempler i Excel VBA
  • 20 praktiske kodningstips til at mestre Excel VBA
  • Hvordan man skriver VBA-kode i Excel (med nemme trin)
  • Typer af VBA-makroer i Excel (en hurtig vejledning)

2. Excel VBA-underrutine

I det følgende eksempel kan du se, hvordan underprogrammet i Excel VBA virker. Her er det Under starter underrutinens krop. Underrutinens navn er square_root. I underrutinens krop udfører vi en opgave i celle A2 Opgaven består i at udføre kvadratroden i celle A2 Det betyder, at hvis cellen indeholder et tal, vil Excel VBA udføre kvadratroden af den pågældende celle. End Sub afslutter underrutinens krop.

Du kan oprette en underrutine ved at følge disse trin:

  • Først skal du aktivere den VB-editor (tryk på Alt+F11 ).
  • For det andet skal du vælge arbejdsmappen i Projekt vindue.
  • For det tredje skal du vælge Indsæt og derefter Modul for at indsætte et VBA-modul. Du kan også bruge et eksisterende kodemodul. Kodemodulet skal være et standard VBA-modul.

  • Indtast derefter nøgleordet SUB efterfulgt af navnet på underrutinen.
  • Indsæt desuden den VBA kode, som du ønsker at udføre.
 Sub square_root() Range("C5").Value = Range("C4").Value ^ (1 / 2) End Sub 
  • Endelig skal underrutinen med en End Sub .

Vigtige forskelle mellem underrutine & Funktion i Excel VBA

Efter at have udført underprogrammet og funktionerne hver for sig kan vi konkludere forskellene i nedenstående tabel.

Funktioner Underrutiner
1) returnerer en værdi. 1) Udfører et sæt opgaver, men returnerer ikke en værdi.
2) Funktioner kaldes ved hjælp af en variabel. 2) Kan kaldes fra et hvilket som helst sted i programmet i flere typer efter deklarationen.
3) Kan bruges som formler i regneark. 3) Kan ikke bruges direkte i regneark som formler.
4) Vi kan bruge funktioner som formler i regnearkene. Vi kan udføre det flere gange efter at have kørt koden. 4) For at finde resultatet af Excel VBA-subrutinen skal vi først indsætte en værdi i den ønskede celle.
5) Syntaks:

Funktion Function Function_Name()

//Sæt af koder

Slutfunktion

5) Syntaks:

Sub Sub_Name ()

//Sæt af koder

End Sub

Ting at huske

  • Udvikleren fanen skal være aktiveret, før du kan bruge disse metoder.
  • Vi kan finde Underrutine Makroer i den Udvikler fanen, mens brugerdefinerede funktioner i fanen Funktion fanen ved hjælp af brugerdefineret søgning.

Konklusion

Hvis du stadig har problemer med nogen af disse instruktioner eller har uoverensstemmelser, så lad os vide det i kommentarerne. Vores team er klar til at besvare alle dine spørgsmål. For alle Excel-relaterede problemer kan du besøge vores hjemmeside ExcelWIKI for løsninger.

Hugh West er en meget erfaren Excel-træner og analytiker med over 10 års erfaring i branchen. Han har en bachelorgrad i regnskab og finans og en kandidatgrad i Business Administration. Hugh har en passion for undervisning og har udviklet en unik undervisningstilgang, der er nem at følge og forstå. Hans ekspertviden om Excel har hjulpet tusindvis af studerende og fagfolk verden over med at forbedre deres færdigheder og udmærke sig i deres karriere. Gennem sin blog deler Hugh sin viden med verden og tilbyder gratis Excel-tutorials og onlinetræning for at hjælpe enkeltpersoner og virksomheder med at nå deres fulde potentiale.