Prilagođena funkcija koristi jezik M formula, uzima skup ulaznih vrijednosti, a zatim vraća jednu izlaznu vrijednost. Ako imate logiku koju želite ponovno koristiti više puta ili primijeniti isti skup transformacija na različit upit ili vrijednost, razmislite o stvaranju prilagođene funkcije te pozivanju funkcije gdje i kada vam je potrebna. Nekoliko je načina stvaranja prilagođene funkcije:
- Pomoću napredni uređivač dodajte vlastitu naredbu let i počnite ispočetka.
- Upotrijebite naredbu Pozovi prilagođenu funkciju .
- Postoje dodatni načini stvaranja funkcija koji nisu opisani u ovoj temi pomoći, uključujući naredbe Stvori funkciju i Dodaj kao upit. Detaljnije rasprave potražite u člancima Razumijevanje Power Query M funkcija (docs.com) i Korištenje prilagođenih funkcija (docs.com).
Stvorite i aktivirajte jednostavnu prilagođenu funkciju pomoću napredni uređivač
Slijedi jednostavan primjer prilagođene funkcije koja slijedi dugogodišnju tradiciju programiranja.
Stvaranje praznog upita:
Excel Odabir podataka>Dohvaćanje podataka>iz drugih izvora>Prazan upit.
Power Query Desnom tipkom miša kliknite prazno mjesto u oknu Upiti na lijevoj strani, a zatim odaberite Novi upit>Drugi izvori>Prazan upit.
U oknu Upiti s lijeve strane dvokliknite ime, a zatim promijenite naziv novog praznog upita u "HelloWorld".
Odaberite novi upit, a zatim Homenapredni> uređivač.
Početni kod predloška zamijenite sljedećim kodom:
let
HelloWorld = () => ("Hello World")
in
HelloWorldOdaberite Gotovo.
Promijenili ste upit "HelloWorld" u prilagođenu funkciju. Obratite pozornost na ikonu funkcije
s lijeve strane nje.Da biste pozvali funkciju, odaberite je, a zatim u pretpregledu podataka odaberite Pozovi .
Rezultati funkcije se prikazuju u pretpregledu podataka i dodaju u okno Upiti kao upit zadanog naziva Pozvana funkcija. Možete mu dodijeliti smisleniji naziv, npr. "HelloWorldResult".
Odaberite taj upit, a zatim Polazno>Zatvorite & Učitaj da biste vidjeli rezultate na radnom listu.
Rezultati
Stvaranje i pozivanje prilagođene funkcije s parametrom pomoću napredni uređivač
U sljedećem je primjeru prikazano kako prenijeti parametar prilagođenoj funkciji radi pretvaranja decimalnog broja u heksadecimalni.
Stvaranje praznog upita:
Excel Odabir podataka>Dohvaćanje podataka>iz drugih izvora>Prazan upit.
Power Query Desnom tipkom miša kliknite prazno mjesto u oknu Upiti na lijevoj strani, a zatim odaberite Novi upit>Drugi izvori>Prazan upit.
U oknu Upiti s lijeve strane promijenite naziv novog praznog upita u "MyHex".
Odaberite novi upit, a zatim Homenapredni> uređivač.
Početni kod predloška zamijenite sljedećim kodom:
let
MyHex = (parameter1) => Number.ToText(parameter1,"X")
in
MyHexOdaberite Gotovo.
Promijenili ste upit "MyHex" u prilagođenu funkciju. Obratite pozornost na ikonu funkcije
s lijeve strane nje.Da biste pozvali funkciju, odaberite je, a zatim u pretpregledu podataka unesite broj u okvir parametar1 pa odaberite Pozovi.
Rezultati funkcije prikazuju se u pretpregledu podataka i dodaju u okno upita kao upit zadanog naziva Pozvana funkcija. Preporučujemo da mu dodijelite smisleniji naziv, npr. "MyHexResult".
Odaberite taj upit, a zatim Polazno>Zatvorite & Učitaj da biste vidjeli rezultate na radnom listu.
Rezultati
Dodavanje stupca pozivanjem prilagođene funkcije
Ako ste stvorili funkciju s najmanje jednim parametrom, možete je pozvati kao prilagođenu funkciju za stvaranje novog stupca i nove vrijednosti za svaki redak u tablici.
Da biste otvorili upit, pronađite prethodno učitani iz uređivač dodatka Power Query, odaberite ćeliju u podacima, a zatim odaberite Uređivanje upita>. Dodatne informacije potražite u članku Stvaranje, uređivanje i učitavanje upita u programu Excel (Power Query).
Napomena U ovom primjeru upit treba najmanje jedan stupac vrste podataka Cijeli broj .
Stvorite prilagođenu funkciju "MyHex" kao što je opisano u odjeljku, Stvaranje i pozivanje prilagođene funkcije koja ima parametar pomoću napredni uređivač.
U upitu odaberite Dodaj stupac>Pozovi prilagođenu funkciju. Pojavit će se dijaloški okvir Pozivanje prilagođene funkcije .
U okvir Novi naziv stupca unesite naziv novog stupca, primjerice "Heksadecimalnopretvorba".
Odaberite naziv unaprijed definirane prilagođene funkcije na padajućem izborniku upita za funkciju. U ovom primjeru odaberite "MyHex".
Budući da prilagođena funkcija referencira parametar, parametar se sada prikazuje.
Odaberite stupac s vrstom podataka Cijeli broj kao parametar funkcije.
Odaberite U redu.
Rezultat
Stvorit će se novi stupac u kojem se prikazuje heksadecimalna vrijednost stupca cijelog broja koji ste unijeli kao parametar.
Dodatne informacije
Stvaranje formula dodatka Power Query u programu Excel