Prilagođena funkcija koristi jezik M formule, uzima skup ulaznih vrijednosti, a zatim vraća jednu izlaznu vrijednost. Ako imate logiku koju želite ponovno koristiti više puta ili primijenite isti skup transformacija na drugi upit ili vrijednost, razmislite o stvaranju prilagođene funkcije, a zatim unesite naziv funkcije gdje i kada vam je potrebna. Prilagođenu funkciju možete stvoriti na nekoliko načina:
-
Pomoću napredni uređivač dodajte vlastitu naredbu let i počnite ispočetka.
-
Koristite naredbu Pozivanje prilagođene funkcije.
-
Postoje dodatni načini stvaranja funkcija koje nisu opisane u ovoj temi pomoći, uključujući naredbe Stvori funkciju i Dodaj kao upit. Detaljne informacije potražite u člancima Razumijevanje Power Query M (docs.com)i Korištenje prilagođenih funkcija (docs.com).
Slijedi jednostavan primjer prilagođene funkcije koja slijedi dugu tradiciju programiranja.
-
Da biste stvorili prazan upit:
Excel odaberite > dohvati podatke > 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 naziv, a zatim preimenujte novi prazan upit u "HelloWorld".
-
Odaberite novi upit, a zatim Polazno> napredni uređivač.
-
Zamijenite početni kod predloška sljedećim kodom:
let HelloWorld = () => ("Hello World") in HelloWorld
-
Odaberite Gotovo.
-
Promijenili ste upit "HelloWorld" u prilagođenu funkciju. Obratite pozornost na ikonu
s lijeve strane. -
Da biste pozvao funkciju, odaberite je, a zatim u pretpregledu podataka odaberite Pozovi.
-
Rezultati funkcije prikazuju se u pretpregledu podataka i dodaju u okno Upiti kao upit sa zadanim nazivom, Pozvana funkcija. Možda ćete je htjeti preimenovati u nešto smislenije, npr. "HelloWorldResult".
-
Odaberite taj upit, a zatim Polazno > Zatvori & Učitaj da biste vidjeli rezultate na radnom listu.
Rezultati
U sljedećem je primjeru prikazano kako proslijediti parametar prilagođenoj funkciji radi pretvaranja decimalnog broja u heksadecimalni.
-
Da biste stvorili prazan upit:
Excel odaberite > dohvati podatke > 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 preimenujte novi prazan upit u "MyHex".
-
Odaberite novi upit, a zatim Polazno> napredni uređivač.
-
Zamijenite početni kod predloška sljedećim kodom:
let MyHex = (parameter1) => Number.ToText(parameter1,"X") in MyHex
-
Odaberite Gotovo.
-
Promijenili ste upit "MyHex" u prilagođenu funkciju. Obratite pozornost na ikonu
s lijeve strane. -
Da biste pozvao funkciju, odaberite je, a zatim u pretpregledu podataka unesite broj u okvir parametar1 , a zatim odaberite Pozovi.
-
Rezultati funkcije prikazuju se u pretpregledu podataka i dodaju u okno Upiti kao upit sa zadanim nazivom , Pozvana funkcija. Možda ćete je htjeti preimenovati u nešto smislenije, npr. "MyHexResult".
-
Odaberite taj upit, a zatim Polazno > Zatvori & Učitaj da biste vidjeli rezultate na radnom listu.
Rezultati
Ako ste stvorili funkciju s najmanje jednim parametrom, možete je pozvati kao prilagođenu funkciju da biste stvorili novi stupac i novu vrijednost za svaki redak tablice.
-
Da biste otvorili upit, pronađite prethodno učitan iz uređivač dodatka Power Query, odaberite ćeliju u podacima, a zatim Upit> Uređivanje. Dodatne informacije potražite u članku Stvaranje, uređivanje i učitavanje upita u programu Excel (Power Query). Bilješka U ovom je primjeru upitu potreban barem jedan stupac vrste podataka Cijeli broj.
-
Stvorite prilagođenu funkciju "MyHex" kao što je objašnjeno u odjeljku Stvaranje i pozivanje prilagođene funkcije koja sadrži parametar s napredni uređivač.
-
U upitu odaberite Dodaj stupac >pozivanje prilagođene funkcije. Pojavit će se dijaloški okvir Pozivanje prilagođene funkcije.
-
U okvir Novi naziv stupca unesite novi naziv stupca, npr. "HexConvert".
-
Na padajućem izborniku Upit funkcije odaberite naziv unaprijed definirane prilagođene funkcije. U ovom primjeru odaberite "MyHex".
-
Budući da se prilagođena funkcija poziva na parametar, parametar se sada prikazuje.
-
Odaberite stupac vrste podataka Cijeli broj kao parametar funkcije.
-
Odaberite U redu.
Rezultat
Stvorit će se novi stupac s heksadecimalnom vrijednošću stupca Cijeli broj koji ste unijeli kao parametar.
Dodatne informacije
Stvaranje formula dodatka Power Query u programu Excel