Prilagođena funkcija koristi jezik M formule, uzima skup ulaznih vrednosti, a zatim daje jednu izlaznu vrednost. Ako imate logiku koju želite da ponovo koristite više puta ili primenite isti skup transformacija na drugi upit ili vrednost, razmislite o kreiranju prilagođene funkcije, a zatim o pozivanju funkcije gde i kada vam je potrebna. Postoji nekoliko načina da napravite prilagođenu funkciju:
- Koristite Napredni uređivač da biste dodali sopstvenu izjavu o dozvolama i počeli ispočetka.
- Koristite komandu " Pozovite prilagođenu funkciju ".
- Postoje dodatni načini za kreiranje funkcija o kojima se ne govori u ovoj temi pomoći, uključujući komande "Kreiranje funkcije" i "Dodaj kao upit". Detaljniju diskusiju potražite u članku Razumevanje Power Query M funkcija (docs.com) i Upotreba prilagođenih funkcija (docs.com).
Kreirajte i pozovite jednostavnu prilagođenu funkciju pomoću Napredni uređivač
Sledi jednostavan primer prilagođene funkcije koja prati dugogodišnju tradiciju programiranja.
Da biste kreirali prazan upit:
Pretraga Izaberite podatke>Preuzmite podatke>iz drugih izvora>Prazan upit.
Power Query Kliknite desnim tasterom miša na prazno mesto u oknu "Upiti" sa leve strane, a zatim izaberite stavku "Novi upit>"Drugi izvori>Prazan upit.
U oknu " Upiti " sa leve strane kliknite dvaput na ime, a zatim novi prazan upit preimenujte u "HelloWorld".
Izaberite novi upit, a zatim izaberite stavku Napredni uređivačstranice>.
Zamenite početni kôd predloška sledećim kodom:
let
HelloWorld = () => ("Hello World")
in
HelloWorldKliknite na dugme Gotovo.
Promenili ste upit "HelloWorld" u prilagođenu funkciju. Obratite pažnju na ikonu funkcije
sa leve strane ikone.Da biste pozvali funkciju, izaberite je, a zatim izaberite stavku "Pozovi" u pregledu podataka.
Rezultati funkcije se prikazuju u pregledu podataka i dodaju u okno " Upiti " kao upit sa podrazumevanim imenom " Pozvana funkcija". Možda ćete želeti da joj promenite ime u neko smislenije, kao što je "HelloWorldResult".
Izaberite taj upit, a zatim izaberite stavku "Početak>"Zatvori & Učitaj da biste videli rezultate u radnom listu.
Rezultati
Kreiranje i pozivanje prilagođene funkcije koja ima parametar pomoću Napredni uređivač
Sledeći primer pokazuje kako da prosledite parametar prilagođenoj funkciji da biste pretvarali decimalni broj u heksadecimalni.
Da biste kreirali prazan upit:
Pretraga Izaberite podatke>Preuzmite podatke>iz drugih izvora>Prazan upit.
Power Query Kliknite desnim tasterom miša na prazno mesto u oknu "Upiti" sa leve strane, a zatim izaberite stavku "Novi upit>"Drugi izvori>Prazan upit.
U oknu " Upiti sa leve strane" preimenujte novi prazan upit u "MyHex".
Izaberite novi upit, a zatim izaberite stavku Napredni uređivačstranice>.
Zamenite početni kôd predloška sledećim kodom:
let
MyHex = (parameter1) => Number.ToText(parameter1,"X")
in
MyHexKliknite na dugme Gotovo.
Promenili ste upit "MyHex" u prilagođenu funkciju. Obratite pažnju na ikonu funkcije
sa leve strane ikone.Da biste pozvali funkciju, izaberite je, a zatim u okviru "Pregled podataka" unesite broj u polje "Parametar1" i izaberite stavku "Pozovi".
Rezultati funkcije se prikazuju u pregledu podataka i dodaju u okno " Upiti " kao upit sa podrazumevanim imenom " Pozvana funkcija". Možda ćete želeti da joj promenite ime u nešto smislenije, kao što je "MyHexResult".
Izaberite taj upit, a zatim izaberite stavku "Početak>"Zatvori & Učitaj da biste videli rezultate u radnom listu.
Rezultati
Dodavanje kolone pozivanjem prilagođene funkcije
Ako ste kreirali funkciju sa bar jednim parametrom, možete da ga pozovete kao prilagođenu funkciju da biste kreirali novu kolonu i novu vrednost za svaki red u tabeli.
Da biste otvorili upit, pronađite prethodno učitan iz Power Query uređivač, izaberite ćeliju u podacima, a zatim izaberite stavku "Uredi upit>". Više informacija potražite u članku "Pravljenje, uređivanje i učitavanje upita u programu Excel (Power Query).
Napomena U ovom primeru, upitu je potrebna najmanje jedna kolona tipa podataka "Ceo broj ".
Kreirajte prilagođenu funkciju "MyHex" kao što je objašnjeno u odeljku, Kreirajte i pozovite prilagođenu funkciju koja ima parametar sa Napredni uređivač.
U upitu izaberite stavku "Dodaj kolonu>"Pozovite prilagođenu funkciju. Pojavljuje se dijalog "Pozivanje prilagođene funkcije ".
Unesite novo ime kolone, kao što je "HexConvert", u polje "Ime nove kolone ".
Izaberite ime unapred definisane prilagođene funkcije sa padajuće liste "Upit funkcije". U ovom primeru izaberite stavku "MyHex".
Pošto prilagođena funkcija upućuje na parametar, parametar se sada prikazuje.
Izaberite kolonu tipa podataka "Ceo broj " kao parametar funkcije.
Izaberite dugme U redu.
Rezultat
Kreira se nova kolona koja prikazuje heksadecimalnu vrednost kolone "Ceo broj" koju ste uneli kao parametar.
Takođe pogledajte
Pravljenje Power Query formula u programu Excel