Mukautettu funktio käyttää M-kaavakieltä, ottaa joukon syöttöarvoja ja palauttaa sitten yhden tulosarvon. Jos haluat käyttää logiikkaa uudelleen monta kertaa tai käyttää samaa muunnosjoukkoa toisessa kyselyssä tai arvossa, voit luoda mukautetun funktion ja käynnistää sitten funktion missä ja milloin tarvitset sitä. Mukautetun funktion voi luoda monella tavalla:
-
Lisää oma let-lausekeLaajennettu editori avulla ja aloita alusta.
-
Käytä Käynnistä mukautettu funktio - komentoa.
-
Tässä ohjeaiheessa ei käsitellä muita toimintoja, kuten Luo funktio ja Lisää kyselynä - komennot. Perusteellinen keskustelu on artikkelissa Tietoja Power Query M-funktioista (docs.com)ja mukautettujen funktioiden käyttämisestä (docs.com).
Seuraavassa on yksinkertainen esimerkki mukautetusta funktiosta, joka noudattaa pitkäaikaista ohjelmointiperinnettä.
-
Tyhjän kyselyn luominen:Excel Select Data > Get Data > From Other Sources > Blank Query.Power Query napsauta hiiren kakkospainikkeella tyhjää kohtaa Kyselyt-ruudussa vasemmalla ja valitse sitten Uusi kysely > Muut lähteet > Tyhjä kysely.
-
Kaksoisnapsauta vasemmalla olevassa Kyselyt-ruudussa nimeä ja nimeä uusi tyhjä kysely uudelleen nimellä "HelloWorld".
-
Valitse uusi kysely ja valitse sitten Aloitus > Laajennettu editori.
-
Korvaa mallin aloituskoodi seuraavalla koodilla:
let HelloWorld = () => ("Hello World") in HelloWorld
-
Valitse Valmis.
-
Olet muuttanut HelloWorld-kyselyn mukautetuksi funktioksi. Huomaa funktiokuvake,
sen vasemmalla puolella. -
Jos haluat käynnistää funktion, valitse se ja valitse sitten Käynnistä tietojen esikatselussa.
-
Funktion tulokset näytetään tietojen esikatselussa ja lisätään Kyselyt-ruutuun kyselynä, jonka oletusnimenä on Invoked-funktio. Haluat ehkä nimetä sen uudelleen joksikin merkityksellisemmäksi, kuten "HelloWorldResult".
-
Valitse kysely ja valitse sitten Aloitus > Sulje & Lataa nähdäksesi tulokset laskentataulukossa.
Tulokset
Seuraavassa esimerkissä näytetään, miten voit siirtää parametrin mukautettuun funktioon desimaaliluvun muuntamiseksi heksadesimaaliluvuksi.
-
Tyhjän kyselyn luominen:Excel Select Data > Get Data > From Other Sources > Blank Query.Power Query napsauta hiiren kakkospainikkeella tyhjää kohtaa Kyselyt-ruudussa vasemmalla ja valitse sitten Uusi kysely > Muut lähteet > Tyhjä kysely.
-
Nimeä uusi tyhjä kysely uudelleen vasemman reunan Kyselyt-ruudussa nimeksi "OmaHex".
-
Valitse uusi kysely ja valitse sitten Aloitus > Laajennettu editori.
-
Korvaa mallin aloituskoodi seuraavalla koodilla:
let MyHex = (parameter1) => Number.ToText(parameter1,"X") in MyHex
-
Valitse Valmis.
-
Olet muuttanut kyselyn MyHex mukautetuksi funktioksi. Huomaa funktiokuvake,
sen vasemmalla puolella. -
Jos haluat käynnistää funktion, valitse se ja kirjoita sitten Tietojen esikatselu -kohdassa luku parametri1 -ruutuun ja valitse Kutsu.
-
Funktion tulokset näytetään tietojen esikatselussa ja lisätään Kyselyt-ruutuun kyselynä, jonka oletusnimi on Invoked Function. Haluat ehkä nimetä sen uudelleen merkityksellisemmäksi, kuten "MyHexResult".
-
Valitse kysely ja valitse sitten Aloitus > Sulje & Lataa nähdäksesi tulokset laskentataulukossa.
Tulokset
Jos olet luonut funktion, jossa on vähintään yksi parametri, voit käyttää sitä mukautettuna funktiona uuden sarakkeen ja uuden arvon luomiseksi taulukon jokaiselle riville.
-
Jos haluat avata kyselyn, etsi Power Query -editori aiemmin ladattu kysely, valitse tiedoista solu ja valitse sitten Kysely > Muokkaa. Lisätietoja on artikkelissa Kyselyn luominen, muokkaaminen ja lataaminen Excelissä (Power Query).Muistiinpano Tässä esimerkissä kyselyssä on oltava vähintään yksi koko luku -tietotyypin sarake.
-
Luo mukautettu OmaHex-funktio kohdassa Kuvatulla tavalla Luo ja käynnistä mukautettu funktio, jolla on parametri Laajennettu editori kanssa.
-
Valitse kyselyssä Lisää sarake > Käynnistä mukautettu funktio. Näkyviin tulee Kutsu mukautettu funktio -valintaikkuna.
-
Kirjoita uuden sarakkeen nimi, kuten "HexConvert", Uusi sarakkeen nimi -ruutuun.
-
Valitse ennalta määritetyn mukautetun funktion nimi avattavasta Funktiokysely-valikosta. Valitse tässä esimerkissä MyHex.
-
Koska mukautettu funktio viittaa parametriin, parametri näkyy nyt.
-
Valitse koko luku -tietotyypin sarake funktion parametrina.
-
Valitse OK.
Tulos
Luodaan uusi sarake, joka näyttää parametrina kirjoittamasi Kokonaisluku-sarakkeen Heksadesimaaliarvon.
Katso myös
Microsoft Power Query for Excelin ohje
Power Query -kaavojen luominen Excelissä