Pasirinktinė funkcija naudoja M formulės kalbą, naudoja įvesties reikšmių rinkinį, tada pateikia vieną išvesties reikšmę. Jei turite logiką, kurią norite pakartotinai naudoti daug kartų arba taikyti tą patį transformacijų rinkinį skirtingai užklausai ar reikšmei, apsvarstykite galimybę sukurti pasirinktinę funkciją ir tada iškviesti funkciją ten, kur ir kada jos reikia. Yra keli būdai, kaip sukurti pasirinktinę funkciją:
-
Naudokite patobulinta rengyklė, kad įtrauktumėte savo sakinį ir pradėtumėte nuo pradžių.
-
Naudokite komandą Iškviesti pasirinktinę funkciją .
-
Yra papildomų būdų kurti šioje žinyno temoje neaptartas funkcijas, įskaitant komandas Kurti funkciją ir Įtraukti kaip užklausą . Jei reikia išsamios diskusijos, žr. M funkcijų „Power Query“ (docs.com)ir Pasirinktinių funkcijų naudojimo (docs.com) supratimas.
Toliau pateikiamas paprastas pavyzdys, kaip pasirinktinė funkcija veikia pagal ilgametes programavimo tradicijas.
-
Jei norite sukurti tuščią užklausą:
"Excel" duomenų pasirinkimas > Gauti duomenis > iš kitų šaltinių > tuščia užklausa. „Power Query“ Dešiniuoju pelės mygtuku spustelėkite tuščią vietą kairėje pusėje, tada pasirinkite Nauja užklausa > Kiti šaltiniai > Tuščia užklausa. -
Kairėje pusėje, srityje Užklausos dukart spustelėkite pavadinimą, tada pervardykite naują tuščią užklausą į "HelloWorld".
-
Pasirinkite naują užklausą, tada pasirinkite Pagrindinis > patobulinta rengyklė.
-
Pakeiskite šablono pradinį kodą šiuo kodu:
let HelloWorld = () => ("Hello World") in HelloWorld
-
Pasirinkite Atlikta.
-
Pakeitėte užklausą "HelloWorld" į pasirinktinę funkciją. Atkreipkite dėmesį, kad funkcijos piktograma
jos kairėje. -
Norėdami iškviesti funkciją, pažymėkite ją, tada pasirinkite Iškviesti duomenų peržiūroje.
-
Funkcijos rezultatai rodomi duomenų peržiūroje ir įtraukiami į užklausų sritį kaip užklausa su numatytuoju pavadinimu Invoked Funkcija. Galbūt norėsite pervardyti jį prasmingesniu, pvz., "HelloWorldResult".
-
Pasirinkite užklausą, tada pasirinkite Pagrindinis > Uždaryti & Įkelti , kad pamatytumėte rezultatus darbalapyje.
Rezultatai
Toliau pateiktame pavyzdyje parodyta, kaip perduoti parametrą į pasirinktinę funkciją norint konvertuoti dešimtainį skaičių į šešioliktainį.
-
Jei norite sukurti tuščią užklausą:
"Excel" duomenų pasirinkimas > Gauti duomenis > iš kitų šaltinių > tuščia užklausa. „Power Query“ Dešiniuoju pelės mygtuku spustelėkite tuščią vietą kairėje pusėje, tada pasirinkite Nauja užklausa > Kiti šaltiniai > Tuščia užklausa. -
Kairėje pusėje, srityje Užklausos pervardykite naują tuščią užklausą į "MyHex".
-
Pasirinkite naują užklausą, tada pasirinkite Pagrindinis > patobulinta rengyklė.
-
Pakeiskite šablono pradinį kodą šiuo kodu:
let MyHex = (parameter1) => Number.ToText(parameter1,"X") in MyHex
-
Pasirinkite Atlikta.
-
Pakeitėte užklausą "MyHex" į pasirinktinę funkciją. Atkreipkite dėmesį, kad funkcijos piktograma
jos kairėje. -
Norėdami iškviesti funkciją, pažymėkite ją, tada dalyje Duomenų peržiūra įveskite skaičių lauke Parametras1 ir pasirinkite Iškviesti.
-
Funkcijos rezultatai rodomi duomenų peržiūroje ir įtraukiami į užklausų sritį kaip užklausa su numatytuoju pavadinimu Invoked Funkcija. Galite jį pervardyti į prasmingesnį, pvz., "MyHexResult".
-
Pasirinkite užklausą, tada pasirinkite Pagrindinis > Uždaryti & Įkelti , kad pamatytumėte rezultatus darbalapyje.
Rezultatai
Jei sukūrėte funkciją su bent vienu parametru, galite ją iškviesti kaip pasirinktinę funkciją, kad sukurtumėte naują stulpelį ir naują kiekvienos lentelės eilutės reikšmę.
-
Norėdami atidaryti užklausą, raskite anksčiau iš „Power Query“ rengyklė įkeltą, pažymėkite duomenų langelį, tada pasirinkite Užklausos > Redaguoti. Daugiau informacijos žr. Užklausos kūrimas, redagavimas ir įkėlimas programoje "Excel" („Power Query“)." Nata Šiame pavyzdyje užklausai reikalingas bent vienas duomenų tipo Sveikasis skaičius stulpelis .
-
Sukurkite pasirinktinę funkciją "MyHex", kaip paaiškinta skyriuje Pasirinktinės funkcijos, kurioje yra parametras su patobulinta rengyklė, kūrimas ir iškvietimas.
-
Užklausoje pasirinkite Įtraukti stulpelį > Iškviesti pasirinktinę funkciją. Rodomas dialogo langas Iškviesti pasirinktinę funkciją .
-
Lauke Naujo stulpelio pavadinimas įveskite naujo stulpelio pavadinimą, pvz., "HexConvert".
-
Iš išplečiamojo sąrašo Funkcija pasirinkite iš anksto apibrėžtos pasirinktinės funkcijos pavadinimą. Šiame pavyzdyje pasirinkite "MyHex".
-
Pasirinktinė funkcija nurodo parametrą, todėl dabar rodomas parametras.
-
Kaip funkcijos parametrą pasirinkite duomenų tipo Sveikasis skaičius stulpelį.
-
Pažymėkite Gerai.
Rezultatas
Sukuriamas naujas stulpelis, kuriame rodoma stulpelio Sveikasis skaičius šešioliktainė reikšmė, kurią įvedėte kaip parametrą.
Taip pat žr.
„Power Query“, skirtos "Excel", žinynas
„Power Query“ formulių kūrimas naudojant „Excel“