Visual Basic for Applications , liksom andra former av Visual Basic och de flesta programmeringsspråk , har förmågan att bryta programmet upp i små självständiga delar av koden . Bryta koden upp i mindre bitar gör det mindre komplicerat att läsa , skriva och testa på grund av fristående karaktär av de mindre enheterna . Enheterna är dessutom återanvändbara , så istället för att skriva samma avsnitt av koden varje gång programmet behöver utföra en uppgift , kan programmeraren ringa en enda funktion flera gånger . Detta är en av de funktioner som gör VBA och Visual Basic , ett strukturerat programmeringsspråk . Funktioner vs Sub - Rutiner
på de flesta språk , är bitar av kod som kallas funktioner . I VBA är bitar av kod uppdelad i två olika typer: funktioner och sub- rutiner . Båda typerna av koden se ut och agera på liknande sätt med två anmärkningsvärda skillnader . Först en funktion som kallas en funktion i definitionen av koden och slutar med raden " End Function . " En subrutin definieras som en " sub " och slutar med " End Sub . " Andra returnerar en funktion en värde , medan en sub - rutin inte . För att få en sub - Return värde i Excel i VBA , skulle du använda en funktion . Addera När skulle du behöva en Sub - Return Value ?
En välskriven programmet använder funktioner och sub- rutiner för att kapsla in och skydda den från ändringar som gjorts i andra delar av programmet . Detta , tillsammans med att underlätta förståelsen , är de viktigaste skälen för att använda en funktion för att returnera ett värde kontra att använda en sub - rutin som inte gör det. De variabler inuti en funktion eller subrutin är osynliga för resten av koden , så att använda resultaten av koden i en annan del av programmet , måste funktionen returnera den till den del av programmet som anropade den . Det enda sättet att göra samma sak med en sub - rutin skulle vara att deklarera variabeln allmänheten till hela programmet , vilket ignorerar inkapsling .
Ett exempel
< p> ett exempel på en funktion som returnerar ett värde skulle vara ett basiskt additionssalt rutin som returnerar summan av två tal. Funktionen ser ut så här : Function MySum ( A som heltal , B som heltal ) MySum = A + Bend FunctionThe meningen MySum = A + B inte bara beräknar matte , men lägger in resultaten i den variabel som funktionen heter , vilket gör den till den sub- returvärde. I detta exempel skulle anropa funktionen vara så enkelt som " Answer = MySum ( 2,2 ) , " och variabeln svar skulle innehålla numret 4 . Den enkla funktionen kan anropas så många gånger som behövs . I VBA
Sub - returvärden för Excel
Även Excel har flera inbyggda matematiska och ekonomiska funktioner , du kan behöva skriva din egen funktion i VBA för Excel för ökad flexibilitet och makt . Skriva din egen funktion kan du också bygga Excel-formulär med förenklade användaren input objekt . Du kan sedan skriva funktioner som returnerar ett värde i VBA och sätt att koden i makron .
På detta sätt kan du designa komplexa och kraftfulla applikationer utan att behöva bygga ett program från grunden med hjälp av ett programmeringsspråk som C # . Detta ger dig kraften av Excels inbyggda funktioner , och möjligheten att styra dina egna funktioner som returnerar värden i formulär .