Prilagođena funkcija koristi jezik formule M, uzima skup ulaznih vrijednosti, a zatim vraća jednu izlaznu vrijednost. Ako imate logiku koju želite mnogo puta ponovno koristiti ili primijeniti 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 naprednog uređivača dodajte vlastitu izjavu o dopusti 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 rasprave pogledajte u odjeljku Razumijevanje funkcija Power Query M (docs.com)i Korištenje prilagođenih funkcija (docs.com).
Slijedi jednostavan primjer prilagođene funkcije koja slijedi dugogodišnju programiranje.
-
Da biste stvorili prazan upit:
Excel odaberite> Podaci > iz drugih izvora > prazan upit. Power Query Desnom tipkom miša kliknite prazno mjesto u oknu Upiti s lijeve strane, a zatim odaberite Novi upit > ostali izvori > prazan upit. -
U oknu Upiti s lijeve strane dvokliknite naziv, a zatim novi prazni upit preimenujte u "HelloWorld".
-
Odaberite novi upit, a zatim Odaberite 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 se pozivali na 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, Pozivana funkcija. Možete ga 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 dodati parametar prilagođenoj funkciji da biste decimalni broj pretvorili u heksadecimalni.
-
Da biste stvorili prazan upit:
Excel odaberite> Podaci > iz drugih izvora > prazan upit. Power Query Desnom tipkom miša kliknite prazno mjesto u oknu Upiti s lijeve strane, a zatim odaberite Novi upit > ostali izvori > prazan upit. -
U oknu Upiti s lijeve strane preimenujte novi prazan upit u "MyHex".
-
Odaberite novi upit, a zatim Odaberite 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 je pozivali, 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 Upiti kao upit sa zadanim nazivom, Pozivana funkcija. Možete ga 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 u tablici.
-
Da biste otvorili upit, pronađite prethodno učitan iz uređivača dodatka Power Query, odaberite ćeliju u podacima, a zatim odaberite Upit > Uređivanje. Dodatne informacije potražite u članku Stvaranje, uređivanje i učitavanje upita u programu Excel (Power Query). Napomena 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 pomoću naprednog uređivača.
-
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 Funkcija upita odaberite naziv unaprijed definirane prilagođene funkcije. U ovom primjeru odaberite "MyHex".
-
Budući da prilagođena funkcija upućuje na parametar, parametar se sada prikazuje.
-
Odaberite stupac vrste podataka Cijeli broj kao parametar funkcije.
-
Odaberite U redu.
Rezultat
Stvara se novi stupac koji prikazuje heksadecimalni vrijednost stupca Cijeli broj koji ste unijeli kao parametar.
Pogledajte i
Stvaranje formula dodatka Power Query u Excel