Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Du omger en procedur mellan en startdeklarationssats (Sub eller Function) och en slutdeklarationssats (End Sub eller End Function). Alla procedurens kod ligger mellan dessa instruktioner.
En procedur får inte innehålla en annan procedur, så dess start- och slutinstruktioner måste ligga utanför någon annan procedur.
Om du har kod som utför samma uppgift på olika platser kan du skriva uppgiften en gång som en procedur och sedan anropa den från olika platser i koden.
Skapa en procedur som inte returnerar ett värde
Utanför andra procedurer använder du en
Sub-instruktion följt av enEnd Sub-instruktion.I -instruktionen
Subföljer du nyckelordetSubmed namnet på proceduren och sedan parameterlistan inom parenteser.Placera procedurens kodinstruktioner mellan
SubochEnd Sub-uttrycken.
Skapa en procedur som returnerar ett värde
Utanför andra procedurer använder du en
Function-instruktion följt av enEnd Function-instruktion.I -instruktionen
Functionföljer du nyckelordetFunctionmed namnet på proceduren, sedan parameterlistan inom parenteser och sedan enAssats som anger datatypen för returvärdet.Placera procedurens kodinstruktioner mellan
FunctionochEnd Function-uttrycken.Använd en
Returninstruktion för att returnera värdet till den anropande koden.
Så här ansluter du den nya proceduren till de gamla, repetitiva kodblocken
Se till att du definierar den nya proceduren på en plats där den gamla koden har åtkomst till den.
I det gamla, repetitiva kodblocket ersätter du de instruktioner som utför den repetitiva uppgiften med en enda instruktion som anropar proceduren
SubellerFunction.Om proceduren är en
Functionsom returnerar ett värde kontrollerar du att anropsinstrukturen utför en åtgärd med det returnerade värdet, till exempel att lagra det i en variabel, annars går värdet förlorat.
Exempel
              Function Följande procedur beräknar den längsta sidan, eller hypotenuse, för en höger triangel, med tanke på värdena för de andra två sidorna:
Function Hypotenuse(side1 As Double, side2 As Double) As Double
    Return Math.Sqrt((side1 ^ 2) + (side2 ^ 2))
End Function