




Det om-block, som exekverar en del av koden när ett villkor är uppfyllt. Till exempel:
Var uppmärksam på delarna av en om-kodblock: Det Do-block, som exekverar en del av koden så länge som (medan) eller tills (fram tills) ett visst villkor är uppfyllt. Till exempel:
Notera delarna igen: Det för-blockera, med vilken du exekverar en del av koden ett antal gånger. Till exempel:
Återigen, var uppmärksam på de olika delarna:
Nedan visas koden för en funktion som omvandlar små tal till ord.
Konstanta värden skrivs direkt i cellformeln. Strängar måste omges av citattecken i detta fall. Cellreferenser som t.ex B6 eller nå, typ A1:C3 (parametern måste vara av datatyp räckvidd är) Andra funktioner som anropas inom din funktion (din funktion i sig kan också anropas inom andra funktioner). Till exempel: =Factor(MAX(D6:D8))
När du använder ett kodblock i ett kontrollträd, såsom If, For, Do, etc., se till att du drar in blocket med några mellanslag eller tabbknappen (indragsstil är upp till dig). Detta gör koden lättare att förstå och mycket lättare att felsöka och göra förbättringar. Om du inte vet hur man skriver koden för en funktion, läs artikeln Skriv ett enkelt makro i Excel. Ibland krävs inte alla parametrar för att beräkna resultatet av en funktion. I så fall kan du använda nyckelordet Frivillig placera före namnet på parametern i funktionens rubrik. Du kan använda funktionen Saknas (parameternamn) i koden för att avgöra om en parameter är tilldelad ett värde eller inte. Använd ett namn som inte har använts tidigare i Excel för att definiera ett funktionsnamn, annars kommer du bara att använda en av funktionerna. Excel har många inbyggda funktioner och de flesta beräkningar kan göras genom att använda dem separat eller i kombination. Innan du börjar koda dina egna funktioner, gå igenom listan över tillgängliga funktioner. De inbyggda funktionerna kan vara snabbare.
Skapa din egen funktion i excel
Även om Excel har många, kanske hundratals inbyggda funktioner, som SUM, VERT.SÖKNING, LÄNKAR osv. ändå kommer du att upptäcka att när du väl börjar använda Excel för mer komplicerade uppgifter kommer du ofta att behöva en funktion som inte finns. Oroa dig inte, räddningen är nära. Allt du behöver göra är att skapa en funktion själv.
Steg

1. Skapa en ny arbetsbok eller öppna arbetsboken där du vill använda den nya användardefinierade funktionen (UDF).

2. Öppna Visual Basic Editor som är inbyggt i Microsoft Excel, genom att gå till Verktyg->makro->Gå till Visual Basic Editor (eller genom att trycka Alt+F11).

3. Lägg till en ny modul till din arbetsbok genom att trycka på knappen nedan. Du kan skapa UDF i själva arbetsboken utan att lägga till en ny modul, men på så sätt är det inte möjligt att använda funktionen i ett annat kalkylblad i samma arbetsbok.

4. Skapa rubriken eller prototypen för din funktion. Den bör ha följande struktur:
offentlig funktion "Namnet på funktionen" (param1 Axeltyp1, param2 Axeltyp2 ) Axelretur Typ Detta kan ha så många parametrar som du tror att du behöver, och du kan använda vilken standard Excel-datatyp eller objekttyper som helst för det, till exempel Range. Du kan tänka på parametrar som de operatorer som din funktion kommer att reagera på. Till exempel, om du fyller i SIN(45) för att beräkna sinus på 45 grader, är 45 parametern. Din funktions kod kommer sedan att använda det värdet för att beräkna funktionen och presentera dess resultat.
offentlig funktion "Namnet på funktionen" (param1 Axeltyp1, param2 Axeltyp2 ) Axelretur Typ Detta kan ha så många parametrar som du tror att du behöver, och du kan använda vilken standard Excel-datatyp eller objekttyper som helst för det, till exempel Range. Du kan tänka på parametrar som de operatorer som din funktion kommer att reagera på. Till exempel, om du fyller i SIN(45) för att beräkna sinus på 45 grader, är 45 parametern. Din funktions kod kommer sedan att använda det värdet för att beräkna funktionen och presentera dess resultat.

5. Lägg till koden för funktionen, se till att 1) använda parametrarnas värden; 2) tilldela resultatet till namnet på funktionen; och 3) avsluta funktionen med `slutfunktion`.Att lära sig programmera, oavsett om det är i VBA eller något annat programmeringsspråk, tar tid och mer detaljerad och heltäckande information. Men vissa funktioner består av små kodblock och använder bara en liten del av ett programmeringsspråk. De mest användbara delarna av VBA är:
Offentlig funktion Kursresultat (betyg som heltal) Som sträng
om betyg >= 5 Då
Kursresultat = "Godkänd"
Annan
Kursresultat = "avvisade"
Avsluta om
Avsluta funktion
Var uppmärksam på delarna av en om-kodblock:
IF-villkor DÅ kod ANNARS kod END IF
. Skicket Annan och den andra delen av koden är valfria.Offentlig funktion IsPrime(värde som heltal) Som Boolean
Dim i As Integer
i = 2
IsPrime = Sant
Do
Om värde / i = Int(värde / i) Då
IsPrime = Falskt
Avsluta om
i = i + 1
Gå medan jag < värde Och IsPrime = Sant
Avsluta funktion
Notera delarna igen:
DO koda LOOP UNDER/TILL tillstånd
. Lägg också märke till den andra raden där variabeln deklareras. Du kan tilldela variabler till din kod för att använda senare. Variabler fungerar som tillfälliga värden inom koden. Och slutligen, lägg märke till deklarationen av funktionen som en BOOLEAN, en datatyp som bara kan vara TRUE eller FALSE (sant eller falskt). Denna metod för att avgöra om ett tal är primtal är långt ifrån optimal, men den är skriven för att göra koden lättare att läsa.Offentlig funktionsfaktor (värde som heltal) Så länge
Dim resultat As Long
Dim i As Integer
Om värdet = 0 Då
resultat = 1
ElseIf värde = 1 Då
resultat = 1
Annan
resultat = 1
För i = 1 Till värde
resultat = resultat * i
Nästa
Avsluta om
Faktoriell = resultat
Avsluta funktion
Återigen, var uppmärksam på de olika delarna:
FÖR variabel = nedre gräns TO övre gränskod NÄSTA
. Lägg även märke till det nya ElseIf del i om-uttalande, som låter dig lägga till fler alternativ till koden som ska köras. Slutligen, var uppmärksam på deklarationen av funktionen och variabeln "resultat" om lunga. Det lunga-datatype tillåter värden mycket större än en Heltal.Nedan visas koden för en funktion som omvandlar små tal till ord.

6. Gå tillbaka till din arbetsbok och använd den här funktionen genom att starta innehållet i en cell med en är jämställd-tecken, följt av namnet på din position. Placera en öppningsparentes efter funktionens namn, separera parametrarna från varandra kommatecken och sedan en avslutande parentes. Till exempel:
=NumberToLetters(A4)
Du kan också välja den hemgjorda formeln genom att slå upp den i kategorin Användardefinierad i guiden Infoga funktion. Klicka bara på knappen t.ex på vänster sida av formelfältet.Parametrarna kan vara av tre typer:
=NumberToLetters(A4)
Du kan också välja den hemgjorda formeln genom att slå upp den i kategorin Användardefinierad i guiden Infoga funktion. Klicka bara på knappen t.ex på vänster sida av formelfältet.Parametrarna kan vara av tre typer:

7. Kontrollera resultatet genom att använda funktionen flera gånger för att se till att värdena i parametrarna tillämpas korrekt:
Tips
Varningar
- Av säkerhetsskäl har användare ibland inaktiverat makron. Se till att du låter dina kollegor veta att arbetsboken du skickar innehåller makron och att de kan vara säkra på att den inte kommer att skada deras datorer.
- Funktionerna i den här artikeln är inte på något sätt det bästa sättet att lösa relaterade problem. De är endast avsedda att demonstrera användningen av språkets kontroller.
- Som alla andra programmeringsspråk har VBA massor av kontroller andra än Gör, Om och För. Nämnda förklaras endast här för att förklara vilka möjligheter det finns inom källkoden för funktionen. Det finns många tutorials online för att lära sig VBA.
"Skapa din egen funktion i excel"
Оцените, пожалуйста статью