Pasirinktinė funkcija naudoja M formulės kalbą, paima įvesties reikšmių rinkinį ir grąžina vieną išvesties reikšmę. Jei turite logiką, kurią norite pakartotinai naudoti daug kartų arba tą patį transformacijų rinkinį taikyti kitai užklausai ar reikšmei, apsvarstykite galimybę sukurti pasirinktinę funkciją ir tada iškviesti funkciją ten, kur ir kada reikia. Yra keli pasirinktinės funkcijos kūrimo būdai:
- Naudokite patobulintą rengyklę, kad įtrauktumėte savo sakinį ir pradėtumėte nuo nulio.
- Naudokite komandą Iškviesti pasirinktinę funkciją .
- Yra papildomų funkcijų kūrimo būdų, kurie šioje žinyno temoje neaptariami, įskaitant komandas Kurti funkciją ir Įtraukti kaip užklausą . Išsamesnės diskusijos ieškokite "Funkcijų „Power Query“ M supratimas" (docs.com) ir Pasirinktinių funkcijų naudojimas (docs.com).
Sukurkite ir iškvieskite paprastą pasirinktinę funkciją naudodami patobulintą rengyklę
Toliau pateikiamas paprastas pasirinktinės funkcijos, kuri tęsia ilgametes programavimo tradicijas, pavyzdys.
Norėdami sukurti tuščią užklausą:
"Excel" Pasirinkti duomenis>,gauti duomenis>iš kitų šaltinių>,tuščia užklausa.
„Power Query“ Dešiniuoju pelės mygtuku spustelėkite tuščią vietą užklausų srityje kairėje ir pasirinkite Nauja užklausa>Kiti šaltiniai>Tuščia užklausa.
Užklausų srities kairėje pusėje dukart spustelėkite pavadinimą, tada pervardykite naują tuščią užklausą į "HelloWorld".
Pasirinkite naują užklausą, tada pasirinkite Pagrindinispatobulinta>rengyklė.
Šablono pradinį kodą pakeiskite šiuo kodu:
let
HelloWorld = () => ("Hello World")
in
HelloWorldPasirinkite Atlikta.
Pakeitėte užklausą "HelloWorld" į pasirinktinę funkciją. Atkreipkite dėmesį į funkcijos piktogramą
jos kairėje.Norėdami iškviesti funkciją, pasirinkite ją, tada pasirinkite Iškviesti duomenų peržiūroje.
Funkcijos rezultatai rodomi duomenų peržiūroje ir įtraukiami į užklausų sritį kaip užklausa, turinti numatytąjį pavadinimą Iškviesta funkcija. Galbūt norėsite jį pervardyti į prasmingesnį, pvz., "HelloWorldResult".
Pasirinkite užklausą, tada pasirinkite Pagrindinis>,Uždaryti & Įkelti, kad pamatytumėte rezultatus darbalapyje.
Rezultatai
Sukurkite ir iškvieskite pasirinktinę funkciją, turinčią parametrą, naudodami patobulintą rengyklę
Toliau pateiktame pavyzdyje parodyta, kaip perduoti parametrą pasirinktinei funkcijai norint konvertuoti dešimtainį skaičių į šešioliktainį.
Norėdami sukurti tuščią užklausą:
"Excel" Pasirinkti duomenis>,gauti duomenis>iš kitų šaltinių>,tuščia užklausa.
„Power Query“ Dešiniuoju pelės mygtuku spustelėkite tuščią vietą užklausų srityje kairėje ir pasirinkite Nauja užklausa>Kiti šaltiniai>Tuščia užklausa.
Užklausų srities kairėje pusėje pervardykite naują tuščią užklausą į "MyHex".
Pasirinkite naują užklausą, tada pasirinkite Pagrindinispatobulinta>rengyklė.
Šablono pradinį kodą pakeiskite šiuo kodu:
let
MyHex = (parameter1) => Number.ToText(parameter1,"X")
in
MyHexPasirinkite Atlikta.
Pakeitėte užklausą "MyHex" į pasirinktinę funkciją. Atkreipkite dėmesį į funkcijos piktogramą
jos kairėje.Norėdami iškviesti funkciją, pažymėkite ją, tada Duomenų peržiūros lange parameter1 įveskite skaičių ir pasirinkite Iškviesti.
Funkcijos rezultatai rodomi duomenų peržiūroje ir įtraukiami į užklausų sritį kaip užklausa numatytuoju pavadinimu Iškviesta funkcija. Galbūt norėsite jį pervardyti į prasmingesnį, pvz., "MyHexResult".
Pasirinkite užklausą, tada pasirinkite Pagrindinis>,Uždaryti & Įkelti, kad pamatytumėte rezultatus darbalapyje.
Rezultatai
Stulpelio įtraukimas iškviečiant pasirinktinę funkciją
Jei sukūrėte funkciją su bent vienu parametru, galite ją iškviesti kaip pasirinktinę ir sukurti naują kiekvienos lentelės eilutės reikšmę.
Norėdami atidaryti užklausą, raskite anksčiau iš „Power Query“ rengyklė įkeltą užklausą, pažymėkite duomenų langelį ir pasirinkite Užklausos>redagavimas. Daugiau informacijos rasite Užklausos kūrimas, redagavimas ir įkėlimas programoje "Excel" ("„Power Query“").
Atkreipkite dėmesį Pavyzdžiui, užklausai reikia bent vieno sveikojo skaičiaus duomenų tipo stulpelio.
Sukurkite "MyHex" pasirinktinę funkciją, kaip paaiškinta skyriuje, Sukurkite ir iškvieskite pasirinktinę funkciją, turinčią parametrą su patobulinta rengyklė.
Užklausoje pasirinkite Įtraukti stulpelį>Iškviesti pasirinktinę funkciją. Rodomas dialogo langas Iškviesti pasirinktinę funkciją .
Lauke Naujo stulpelio pavadinimas įveskite naują stulpelio pavadinimą, pvz., "HexConvert".
Funkcijos užklausos išplečiamajame sąraše pasirinkite iš anksto apibrėžtos pasirinktinės funkcijos pavadinimą. Šiame pavyzdyje pasirinkite "MyHex".
Pasirinktinė funkcija nurodo parametrą, todėl dabar rodomas parametras.
Pasirinkite sveikojo skaičiaus duomenų tipo stulpelį kaip funkcijos parametrą.
Pažymėkite Gerai.
Rezultatas
Sukuriamas naujas stulpelis, kuriame rodoma kaip parametrą įvesto sveikojo skaičiaus stulpelio šešioliktainė reikšmė.
Taip pat žr.
"„Power Query“ for Excel" žinynas
„Power Query“ formulių kūrimas naudojant „Excel“