Applies ToExcel for Microsoft 365 Excel 2019 Excel 2016 Excel 2013 Excel 2010

En egendefinert funksjon bruker M-formelspråket, tar et sett med inndataverdier og returnerer deretter én enkelt utdataverdi. Hvis du har logikk som du vil bruke på nytt mange ganger eller bruker samme sett med transformasjoner på en annen spørring eller verdi, bør du vurdere å opprette en egendefinert funksjon og deretter aktivere funksjonen der og når du trenger den. Det finnes flere måter å opprette en egendefinert funksjon på: 

Følgende er et enkelt eksempel på en egendefinert funksjon som følger en langvarig programmeringstradisjon.

  1. Slik oppretter du en tom spørring: Excel      Velg data> Hent data >fra andre kilder > Tom spørring.Power Query      Høyreklikk på et tomt sted i Spørringer-ruten til venstre, og velg deretter Ny spørring > Andre kilder > Tom spørring.

  2. Dobbeltklikk på navnet i Spørringer-ruten til venstre, og gi deretter den nye tomme spørringen nytt navn til HelloWorld.

  3. Velg den nye spørringen, og velg deretter Hjem-> Avansert redigering.

  4. Erstatt startkoden for malen med følgende kode:

    let      HelloWorld = () => ("Hello World") in      HelloWorld

  5. Velg Ferdig.

  6. Du har endret spørringen HelloWorld til en egendefinert funksjon. Legg merke til funksjonsikonet Funksjonsikon til venstre for det.

  7. Hvis du vil aktivere funksjonen, merker du den og velger deretter Start i Forhåndsvisning av data.Aktivere den egendefinerte HelloWorld-funksjonen

  8. Resultatene av funksjonen vises i Forhåndsvisning av data og legges til i Spørringer-ruten som en spørring med standardnavnet, Invoked Function. Du vil kanskje gi den et mer meningsfullt navn, for eksempel «HelloWorldResult».

  9. Velg denne spørringen, og velg deretter Hjem-> Lukk & Last inn for å se resultatene i et regneark.

Resultater 

Resultatene av HelloWorld i et regneark

Følgende eksempel viser hvordan du sender en parameter til en egendefinert funksjon for å konvertere et desimaltall til heksadesimaltall.

  1. Slik oppretter du en tom spørring: Excel      Velg data> Hent data >fra andre kilder > Tom spørring.Power Query      Høyreklikk på et tomt sted i Spørringer-ruten til venstre, og velg deretter Ny spørring > Andre kilder > Tom spørring.

  2. Endre navn den nye tomme spørringen til «MyHex» i Spørringer-ruten til venstre.

  3. Velg den nye spørringen, og velg deretter Hjem-> Avansert redigering.

  4. Erstatt startkoden for malen med følgende kode:

    let      MyHex = (parameter1) => Number.ToText(parameter1,"X") in      MyHex

  5. Velg Ferdig.

  6. Du har endret spørringen MyHex til en egendefinert funksjon. Legg merke til funksjonsikonet Funksjonsikon til venstre for det.

  7. Hvis du vil aktivere funksjonen, merker du den og skriver inn et tall i parameter1-boksen i Forhåndsvisning av data, og velger Invoke.

    Aktivere den egendefinerte MyHex-funksjonen

  8. Resultatene av funksjonen vises i Forhåndsvisning av data og legges til i Spørringer-ruten som en spørring med standardnavnet, Invoked Function. Du vil kanskje gi den et mer meningsfullt navn, for eksempel «MyHexResult».

  9. Velg denne spørringen, og velg deretter Hjem-> Lukk & Last inn for å se resultatene i et regneark.

Resultater 

Resultatet av MyHex-funksjonen i et regneark

Hvis du har opprettet en funksjon med minst én parameter, kan du aktivere den som en egendefinert funksjon for å opprette en ny kolonne og en ny verdi for hver rad i en tabell.

  1. Hvis du vil åpne en spørring, finner du en tidligere lastet inn fra Redigeringsprogram for Power Query, merker en celle i dataene og velger deretter Spørring> Rediger. Hvis du vil ha mer informasjon, kan du se Opprette, redigere og laste inn en spørring i Excel (Power Query).Obs!    I dette eksemplet trenger spørringen minst én kolonne av datatypen Heltall.

  2. Opprett den egendefinerte«MyHex»-funksjonen som forklart i delen Opprette og aktivere en egendefinert funksjon som har en parameter med Avansert redigering .

  3. Velg Legg til kolonne i spørringen > Aktivere egendefinert funksjon. Dialogboksen Aktivere egendefinert funksjon vises.

  4. Skriv inn det nye kolonnenavnet, for eksempel HexConvert, i Boksen Nytt kolonnenavn.

  5. Velg navnet på en forhåndsdefinert egendefinert funksjon fra rullegardinlisten Funksjonsspørring. I dette eksemplet velger du MyHex.

  6. Fordi den egendefinerte funksjonen refererer til en parameter, vises parameteren nå.

  7. Velg en kolonne av datatypen Heltall som en parameter for funksjonen.Dialogboksen Aktivere egendefinert funksjon

  8. Velg OK.

Resultat

Det opprettes en ny kolonne som viser den heksadesimale verdien av hele tallkolonnen du skrev inn som en parameter.

Den nye MyHex-kolonnen med verdier i et regneark

Se også

Hjelp for Power Query for Excel

Opprette Power Query-formler i Excel

Opprette en parameterspørring

Behandle spørringer

Forstå Power Query M-funksjoner (docs.com)

Bruke egendefinerte funksjoner (docs.com)

Trenger du mer hjelp?

Vil du ha flere alternativer?

Utforsk abonnementsfordeler, bla gjennom opplæringskurs, finn ut hvordan du sikrer enheten og mer.

Fellesskap hjelper deg med å stille og svare på spørsmål, gi tilbakemelding og høre fra eksperter med stor kunnskap.