Gjelder for
Excel 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 en enkelt utdataverdi. Hvis du har logikk som du vil bruke på nytt mange ganger eller bruke det samme settet 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:Velg    data > Hent data > fra andre kilder > tom spørring.Power Query    høyreklikker du på et tomt sted i Spørringer-ruten til venstre, og deretter velger du 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 malstartkoden 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 Funksjon-ikon til venstre for det.

  7. Hvis du vil aktivere funksjonen, merker du den og velger Aktiver 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. Det kan hende du vil gi det et mer meningsfylt navn, for eksempel HelloWorldResult.

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

Resultater 

Resultater av HelloWorld i et regneark

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

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

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

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

  4. Erstatt malstartkoden 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 Funksjon-ikon 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 Aktiver.

    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. Det kan være lurt å gi det et mer meningsfylt 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 som tidligere er lastet inn fra Power Query-redigering, 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).Notat    I dette eksemplet trenger spørringen minst én kolonne med datatypen Heltall .

  2. Opprett den egendefinerte funksjonen MyHex, som forklart i inndelingen, opprett og aktiver en egendefinert funksjon som har en parameter med avansert redigering.

  3. Velg Legg til kolonne > Aktiver egendefinert funksjon i spørringen. Dialogboksen Aktiver 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 med datatypen Heltall som en parameter for funksjonen.Dialogboksen Aktiver egendefinert funksjon

  8. Velg OK.

Resultat

Det opprettes en ny kolonne som viser den heksadesimale verdien for Heltall-kolonnen du skrev inn som en parameter.

Den nye MyHex-kolonnen med verdier i et regneark

Se også

Hjelp for Microsoft Power Query for Excel

Opprett Power Query-formler i Excel

Opprett 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.