En funksjon er en forhåndsinnstilt formel i Excel og Google Sheets som er ment å utføre spesifikke beregninger i cellen den er plassert i.
Informasjonen i denne artikkelen gjelder for Excel 2019, Excel 2016, Excel 2013 og Google Sheets.
Funksjonssyntaks og argumenter
En funksjons syntaks refererer til funksjonens layout og inkluderer funksjonens navn, parenteser, kommaskilletegn og argumenter. Som alle formler begynner funksjoner med likhetstegnet (=) etterfulgt av funksjonens navn og dens argumenter:
- Funksjonsnavnet forteller Excel hvilke beregninger som skal utføres.
- Argumentene er inneholdt i parenteser eller runde parenteser og forteller funksjonen hvilke data som skal brukes i disse beregningene.
For eksempel er en av de mest brukte funksjonene i Excel og Google Sheets SUM-funksjonen:
=SUM (D1: D6)
I dette eksempelet:
- Navnet forteller Excel å legge sammen dataene i valgte celler.
- Argumentet (D1:D6)-funksjonen legger til innholdet i celleområdet D1 til D6.
Nestingsfunksjoner i formler
Nyttigheten til Excels innebygde funksjoner kan utvides ved å legge én eller flere funksjoner inne i en annen funksjon i en formel. Effekten av neste funksjoner er å tillate flere beregninger å finne sted i en enkelt regnearkcelle.
For å gjøre dette, fungerer den nestede funksjonen som et av argumentene for hoved- eller ytterste funksjon. For eksempel, i følgende formel er SUM-funksjonen nestet inne i ROUND-funksjonen.
=RUND(SUM (D1: D6), 2)
Når du evaluerer nestede funksjoner, utfører Excel den dypeste eller innerste funksjonen først og arbeider seg deretter utover. Som et resultat vil formelen ovenfor nå:
- Finn summen av verdiene i cellene D1 til D6.
- Rund dette resultatet til to desimaler.
Siden Excel 2007 har opptil 64 nivåer av nestede funksjoner vært tillatt. I tidligere versjoner var sju nivåer med nestede funksjoner tillatt.
Arbeidsark kontra egendefinerte funksjoner
Det er to klasser med funksjoner i Excel og Google Sheets:
- Arbeidsarkfunksjoner
- Egendefinerte eller brukerdefinerte funksjoner
Arbeidsarkfunksjoner er de innebygde i programmet, for eksempel SUM og ROUND funksjonene diskutert ovenfor. Egendefinerte funksjoner, derimot, er funksjoner skrevet, eller definert, av brukeren.
I Excel er tilpassede funksjoner skrevet i det innebygde programmeringsspråket: Visual Basic for Applications eller VBA for kort. Funksjonene lages ved hjelp av Visual Basic-editoren, som er installert med Excel.
Google Sheets sine egendefinerte funksjoner er skrevet i Apps Script, en form for JavaScript, og er opprettet ved hjelp av script-editoren som ligger under Toolsmeny.
Tilpassede funksjoner aksepterer vanligvis, men ikke alltid, noen form for datainndata og returnerer et resultat i cellen der det er plassert.
Nedenfor er et eksempel på en brukerdefinert funksjon som beregner kjøperrabatter skrevet i VBA-kode. De originale brukerdefinerte funksjonene, eller UDFs, er publisert på Microsofts nettsted:
Funksjon Rabatt(antall, pris)
If quantity >=100 Then
Rabatt=kvantumpris0,1
Else
Rabatt=0
End If
Discount=Application. Round(Rabatt, 2)End Function
Begrensninger
I Excel kan brukerdefinerte funksjoner bare returnere verdier til cellen(e) de er plassert i. De kan ikke utføre kommandoer som endrer driftsmiljøet til Excel, for eksempel å endre innholdet eller formateringen av en celle.
Microsofts kunnskapsbase viser følgende begrensninger for brukerdefinerte funksjoner:
- Setter inn, sletter eller formaterer celler i et regneark.
- Endre verdien av data i en annen celle.
- Flytte, gi nytt navn, slette eller legge til ark i en arbeidsbok.
- Endring av miljø alternativer, for eksempel beregningsmodus eller skjermvisninger.
- Angi egenskaper eller utfører de fleste metoder.
Brukerdefinerte funksjoner vs. makroer i Excel
Selv om Google Sheets for øyeblikket ikke støtter dem, er makroer i Excel en serie registrerte trinn som automatiserer repeterende regnearkoppgaver. Eksempler på oppgaver som kan automatiseres inkluderer formatering av data eller kopier og lim inn operasjoner.
Selv om begge bruker Microsofts VBA-programmeringsspråk, er de forskjellige på to måter:
- UDF-er utfører beregninger, mens makroer utfører handlinger. Som nevnt ovenfor kan ikke UDF-er utføre operasjoner som påvirker programmets miljø, mens makroer kan.
-
I Visual Basic-redigeringsvinduet kan de to skilles fordi:
UDF-er begynner med en Function-setning og slutter med End Function.
- Makroer begynner med et Sub-utsagn og slutter med End Sub.