Visual Basic for Applications , ligesom andre former for Visual Basic og mest programmeringssprog , har evnen til at bryde programmet op i små selvstændige stykker kode . Breaking koden op i mindre bidder gør det mindre kompliceret at læse, skrive og teste grundet enkeltstående karakter af de mindre enheder. Enhederne er også genbruges , så i stedet for at skrive den samme sektion af koden, hver gang programmet skal udføre en opgave , kan programmøren kalde en enkelt funktion flere gange. Dette er en af de funktioner, der gør VBA , og Visual Basic , et struktureret programmeringssprog. Funktioner vs Sub - Rutiner
fleste sprog , er bidder af kode kaldet funktioner. I VBA er bidder af kode opdelt i to forskellige typer: funktioner og sub- rutiner. Begge typer kode se og handle på samme måde med to bemærkelsesværdige forskelle . Først en funktion kaldet en funktion i definitionen af koden og slutter med den linje , " End Function ". En sub - rutine er defineret som en " Sub" og slutter med " End Sub . " For det andet , en funktion returnerer en værdi, mens en sub- rutine ikke. For at få en Sub -Retur værdi i Excel i VBA , ville du bruge en funktion .
Hvornår skal du bruge et Sub - Return Value?
En velskrevet program bruger funktioner og sub- rutiner til at indkapsle data og beskytte den fra ændringer i andre dele af programmet. Dette, sammen med lette forståelsen , er de vigtigste grunde til at bruge en funktion til at returnere en værdi vs bruge en sub- rutine, der ikke gør. De variable inde i en funktion eller subrutine er usynlige for resten af koden , så at bruge resultaterne af koden i en anden del af programmet , skal funktionen returnere det til den del af programmet, der kaldte det. Den eneste måde at gøre det samme med en sub- rutine ville være at erklære variable offentligheden til hele programmet , og dermed ignorere indkapsling.
Et eksempel
< p> et eksempel på en funktion, der returnerer en værdi ville være en grundlæggende tilsætning rutine, returnerer summen af to tal. Funktionen ser således ud: Function MySum ( A som heltal, B som heltal) MySum = A + Bend FunctionThe sætning MySum = A + B ikke kun beregner matematik, men sætter resultaterne ind i variablen for hvilke funktionen er opkaldt efter, hvilket gør det til det sub- returværdien . I dette eksempel vil kalde funktionen være så simpelt som "Svar = MySum (2,2 ) ", og den variable svar ville indeholde nummer 4 . Den enkle funktion kan kaldes så mange gange som nødvendigt.
Sub - Returværdier i VBA til Excel
Selvom Excel har flere indbyggede matematiske og økonomiske funktioner , du måske nødt til at skrive din egen funktion i VBA til Excel for øget fleksibilitet og magt. Skrive din egen funktion giver dig også mulighed for at bygge Excel formularer med forenklede brugeren input objekter. Du kan derefter skrive funktioner, der returnerer en værdi i VBA og indsæt denne kode i makroer.
På denne måde kan du designe komplekse og kraftfulde applikationer uden at skulle opbygge et program fra bunden ved hjælp af et programmeringssprog såsom C # . Dette giver dig mulighed for Excels indbyggede funktioner , og mulighed for at styre dine egne brugerdefinerede funktioner , der returnerer værdier til dine formularer .