En funktion är en förinställd formel i Excel och Google Sheets som är avsedd att utföra specifika beräkningar i cellen där den finns.
Informationen i den här artikeln gäller Excel 2019, Excel 2016, Excel 2013 och Google Sheets.
Funktionssyntax och argument
En funktions syntax hänvisar till funktionens layout och inkluderar funktionens namn, parenteser, kommaavgränsare och argument. Liksom alla formler börjar funktioner med likhetstecknet (=) följt av funktionens namn och dess argument:
- Funktionsnamnet talar om för Excel vilka beräkningar som ska utföras.
- Argumenten finns inom parentes eller runda parenteser och talar om för funktionen vilken data som ska användas i dessa beräkningar.
En av de mest använda funktionerna i Excel och Google Sheets är till exempel SUM-funktionen:
=SUMMA (D1: D6)
I det här exemplet:
- Namnet talar om för Excel att lägga ihop data i valda celler.
- Argumentet (D1:D6) funktionen lägger till innehållet i cellintervallet D1 till D6.
Inkapslingsfunktioner i formler
Användbarheten av Excels inbyggda funktioner kan utökas genom att kapsla en eller flera funktioner i en annan funktion i en formel. Effekten av kapslingsfunktioner är att tillåta flera beräkningar att göras i en enda kalkylbladscell.
För att göra detta fungerar den kapslade funktionen som ett av argumenten för den huvudsakliga eller yttersta funktionen. Till exempel, i följande formel, är SUM-funktionen kapslad inuti ROUND-funktionen.
=RUND(SUMMA (D1: D6), 2)
När man utvärderar kapslade funktioner, exekverar Excel den djupaste eller innersta funktionen först och arbetar sedan utåt. Som ett resultat kommer formeln ovan nu:
- Hitta summan av värdena i cellerna D1 till D6.
- Avrunda detta resultat till två decimaler.
Sedan Excel 2007 har upp till 64 nivåer av kapslade funktioner tillåtits. I tidigare versioner var sju nivåer av kapslade funktioner tillåtna.
Arbetsblad kontra anpassade funktioner
Det finns två klasser av funktioner i Excel och Google Sheets:
- Arbetsbladsfunktioner
- Anpassade eller användardefinierade funktioner
Arbetsbladsfunktioner är de som är inbyggda i programmet, till exempel funktionerna SUM och ROUND som diskuterats ovan. Anpassade funktioner, å andra sidan, är funktioner skrivna eller definierade av användaren.
I Excel skrivs anpassade funktioner i det inbyggda programmeringsspråket: Visual Basic for Applications eller VBA för kort. Funktionerna skapas med Visual Basic-redigeraren, som installeras med Excel.
Google Sheets anpassade funktioner är skrivna i Apps Script, en form av JavaScript, och skapas med hjälp av skriptredigeraren som finns under Toolsmeny.
Anpassade funktioner accepterar vanligtvis, men inte alltid, någon form av datainmatning och returnerar ett resultat i cellen där det finns.
Nedan är ett exempel på en användardefinierad funktion som beräknar köparabatter skrivna i VBA-kod. De ursprungliga användardefinierade funktionerna, eller UDFs, publiceras på Microsofts webbplats:
Funktion Rabatt(kvantitet, pris)
Om kvantitet >=100 Då
Rabatt=kvantitetpris0,1
Else
Rabatt=0
End If
Discount=Application. Round(Rabatt, 2)End Function
Begränsningar
I Excel kan användardefinierade funktioner endast returnera värden till den eller de celler där de finns. De kan inte köra kommandon som ändrar operativsystemet i Excel, som att ändra innehållet eller formateringen av en cell.
Microsofts kunskapsbas listar följande begränsningar för användardefinierade funktioner:
- Infoga, ta bort eller formatera celler i ett kalkylblad.
- Ändra värdet på data i en annan cell.
- Flytta, byta namn på, ta bort eller lägga till ark i en arbetsbok.
- Ändra alla miljö alternativ, såsom beräkningsläge eller skärmvyer.
- Ställa in egenskaper eller köra de flesta metoder.
Användardefinierade funktioner kontra makron i Excel
Medan Google Sheets för närvarande inte stöder dem, är makron i Excel en serie inspelade steg som automatiserar repetitiva kalkylbladsuppgifter. Exempel på uppgifter som kan automatiseras är att formatera data eller kopiera och klistra in.
Även om båda använder Microsofts VBA-programmeringsspråk är de olika i två avseenden:
- UDF utför beräkningar, medan makron utför åtgärder. Som nämnts ovan kan UDF:er inte utföra operationer som påverkar programmets miljö, medan makron kan.
-
I Visual Basic-redigeringsfönstret kan de två skiljas åt eftersom:
UDF börjar med en Function-sats och slutar med End Function.
- Makron börjar med ett Sub uttalande och slutar med End Sub.