Applies To„Excel“, skirta „Microsoft 365“ „Excel 2024“ Excel 2021 Excel 2019 Excel 2016 Excel 2013

Iš pradžių duomenų analizės išraiškos (DAX) skamba šiek tiek bauginančios, bet neleidžia jums suklaidinti vardo. DAX pagrindai yra tikrai gana lengva suprasti. Pirmiausia - DAX nėra programavimo kalba. DAX yra formulės kalba. DAX galite naudoti norėdami apibrėžti pasirinktinius skaičiavimus apskaičiuotiems stulpeliams ir matams (dar vadinamiems apskaičiuotaisiais laukais). DAX apima kai kurias "Excel" formulėse naudojamas funkcijas ir papildomas funkcijas, skirtas dirbti su sąryšiniais duomenimis ir atlikti dinaminį agregavimą.

DAX formulių supratimas

DAX formulės yra labai panašios į "Excel" formules. Norėdami jį sukurti, įveskite lygybės ženklą, po to funkcijos pavadinimą arba išraišką ir visas būtinas reikšmes ar argumentus. Kaip ir "Excel", DAX teikia įvairias funkcijas, kurias galite naudoti dirbdami su eilutėmis, atlikdami skaičiavimus naudodami datas ir laikus arba kurdami sąlygines reikšmes.

Tačiau DAX formulės skiriasi šiais svarbiais būdais:

  • Jei norite tinkinti skaičiavimus pagal eilutę, DAX apima funkcijas, kurios leidžia naudoti dabartinę eilutės reikšmę arba susijusią reikšmę skaičiavimams, kurie skiriasi atsižvelgiant į kontekstą, atlikti.

  • DAX yra funkcijos tipas, kuris pateikia lentelę kaip rezultatą, o ne vieną reikšmę. Šias funkcijas galima naudoti kitų funkcijų įvesčiai teikti.

  • Laiko informacijos funkcijos DAX leidžia atlikti skaičiavimus naudojant datų diapazonus ir palyginti lygiagrečių laikotarpių rezultatus.

Kur naudoti DAX formules

Galite kurti formules Power Pivotarba skaičiuojamuosiuoselangeliuose, arba apskaičiuotuosiuose langeliuose.

Apskaičiuojamieji stulpeliai

Apskaičiuojamasis stulpelis yra stulpelis, kurį įtraukiate į esamą Power Pivot lentelę. Vietoje reikšmių įklijavimo ar importavimo stulpelyje sukuriate DAX formulę, kuri apibrėžia stulpelių reikšmes. Jei įtraukiate Power Pivot lentelę į "PivotTable" (arba "PivotChart"), apskaičiuojamąjį stulpelį galima naudoti kaip bet kurį kitą duomenų stulpelį.

Apskaičiuotųjų stulpelių formulės yra panašios į formules, kurias sukuriate programoje "Excel". Kitaip nei programoje "Excel", negalite sukurti kitos formulės skirtingoms lentelės eilutėms; vietoj to DAX formulė automatiškai taikoma visam stulpeliui.

Kai stulpelyje yra formulė, apskaičiuojama kiekvienos eilutės reikšmė. Rezultatai apskaičiuojami stulpeliui iškart, kai sukuriate formulę. Stulpelių reikšmės perskaičiuojamos tik tada, jei atnaujinami esami duomenys arba naudojamas neautomatinis perskaičiavimas.

Galite kurti apskaičiuojamuosius stulpelius, pagrįstus matais ir kitais apskaičiuotais stulpeliais. Tačiau nenaudokite to paties pavadinimo apskaičiuotajam stulpeliui ir matui, nes tai gali klaidinti rezultatus. Kai nurodote stulpelį, geriausia naudoti visiškai apibrėžtą stulpelio nuorodą, kad netyčia nebūtų iškviestas matas.

Išsamesnės informacijos ieškokite Apskaičiuojamieji stulpeliai "Power Pivot".

Priemonių

Matas yra formulė, sukurta specialiai naudoti "PivotTable" (arba "PivotChart"), kuri naudoja Power Pivot duomenis. Matai gali būti pagrįsti standartinėmis agregavimo funkcijomis, pvz., COUNT arba SUM, arba galite apibrėžti savo formulę naudodami DAX. Matas naudojamas "PivotTable " reikšmių srityje. Jei apskaičiuotuosius rezultatus norite padėti kitoje "PivotTable" srityje, naudokite apskaičiuojamąjį stulpelį.

Kai apibrėžiate aiškaus mato formulę, nieko nevyksta, kol įtrauksite matą į "PivotTable". Kai įtraukiate matą, formulė įvertinama pagal kiekvieną "PivotTable" srities Reikšmės langelį. Kadangi kiekvienam eilučių ir stulpelių antraščių deriniui sukuriamas rezultatas, matavimo rezultatas kiekviename langelyje gali skirtis.

Jūsų sukurto mato apibrėžimas įrašomas su šaltinio duomenų lentele. Jis rodomas "PivotTable" laukų sąraše ir pasiekiamas visiems darbaknygės vartotojams.

Išsamesnės informacijos žr. "Power Pivot" matai.

Formulių kūrimas naudojant formulių juostą

Power Pivot, pvz., "Excel", pateikia formulės juostą, kad būtų lengviau kurti ir redaguoti formules ir naudoti automatinio užbaigimo funkcijas, kad būtų sumažintas teksto įvedimo ir sintaksės klaidų skaičius.

Lentelės pavadinimo įvedimas   Pradėkite vesti lentelės pavadinimą. Formulės automatinio vykdymo funkcija pateikia išplečiamąjį sąrašą, kuriame yra leistini pavadinimai, prasidedantys tomis raidėmis.

Stulpelio pavadinimo įvedimas   Įveskite skliaustą ir pasirinkite stulpelį iš dabartinės lentelės stulpelių sąrašo. Jei stulpelis yra kitoje lentelėje, pradėkite vesti pirmąsias lentelės pavadinimo raides, tada pasirinkite stulpelį išplečiamajame sąraše Automatinis vykdymas.

Daugiau informacijos ir nuorodų, kaip kurti formules, žr. Skaičiavimo formulių kūrimas "Power Pivot".

Automatinio užbaigimo naudojimo patarimai

Galite naudoti formulės automatinį vykdymą esamos formulės viduryje su įdėtomis funkcijomis. Prieš įterpimo vietą esantis tekstas naudojamas reikšmėms išplečiamajame sąraše rodyti, o visas po įterpimo vietos esantis tekstas lieka nepakitęs.

Apibrėžti pavadinimai, kuriuos kuriate konstantoms, nerodomas automatinio užbaigimo išplečiamajame sąraše, tačiau vis tiek galite juos įvesti.

Power Pivot neįtraukia uždaromojo funkcijų skliausto ir automatiškai neatitinka skliaustelių. Turėtumėte įsitikinti, kad kiekviena funkcija yra sintaksiškai teisinga arba negalite įrašyti ar naudoti formulės. 

Kelių funkcijų naudojimas formulėje

Galite įdėti funkcijas, tai reiškia, kad vienos funkcijos rezultatus naudojate kaip kitos funkcijos argumentą. Apskaičiuotuosiuose stulpeliuose galite įdėti iki 64 funkcijų lygių. Tačiau įdėjimo gali būti sunku kurti arba šalinti formulių triktis.

Daugelis DAX funkcijų sukurtos taip, kad būtų naudojamos tik kaip įdėtos funkcijos. Šios funkcijos pateikia lentelę, kurios negalima tiesiogiai įrašyti kaip rezultato; ji turėtų būti pateikta kaip lentelės funkcijos įvestis. Pavyzdžiui, visoms funkcijoms SUMX, AVERAGEX ir MINX kaip pirmasis argumentas reikalinga lentelė.

Pastaba: Priemonėse yra tam tikrų funkcijų įdėjimo apribojimų, siekiant užtikrinti, kad našumui nepaveiks daug skaičiavimų, kurių reikia atsižvelgiant į stulpelių priklausomybes.

DAX funkcijų ir "Excel" funkcijų palyginimas

DAX funkcijų biblioteka pagrįsta "Excel" funkcijų biblioteka, tačiau bibliotekos turi daug skirtumų. Šiame skyriuje apibendrinami "Excel" funkcijų ir DAX funkcijų skirtumai ir panašumai.

  • Daugelis DAX funkcijų turi tą patį pavadinimą ir bendrą veikimą kaip "Excel" funkcijos, tačiau buvo modifikuotos, kad imtų skirtingų tipų įvestis, o kai kuriais atvejais gali pateikti kitą duomenų tipą. Paprastai daX funkcijų negalima naudoti "Excel" formulėje arba naudoti "Excel" formulių Power Pivot be tam tikrų pakeitimų.

  • DAX funkcijos niekada nenaudoja langelio nuorodos ar diapazono kaip nuorodos, tačiau DAX funkcijos stulpelį arba lentelę naudoja kaip nuorodą.

  • DAX datos ir laiko funkcijos pateikia datos ir laiko duomenų tipą. O "Excel" datos ir laiko funkcijos pateikia sveikuoju skaičiumi datą kaip sekos numerį.

  • Daugelis naujų DAX funkcijų grąžina reikšmių lentelę arba atlieka skaičiavimus pagal reikšmių lentelę kaip įvestį. Tačiau "Excel" neturi funkcijų, kurios pateikia lentelę, tačiau kai kurios funkcijos gali veikti su masyvais. Galimybė lengvai nurodyti visas lenteles ir stulpelius yra nauja Power Pivot funkcija.

  • DAX pateikia naujas peržvalgos funkcijas, panašias į "Excel" masyvo ir vektorinės peržvalgos funkcijas. Tačiau DAX funkcijos reikalauja, kad tarp lentelių būtų nustatytas ryšys.

  • Tikimasi, kad stulpelio duomenys visada bus to paties tipo. Jei duomenys nėra to paties tipo, DAX pakeičia visą stulpelį į duomenų tipą, geriausiai atitinkantį visas reikšmes.

DAX duomenų tipai

Galite importuoti duomenis į Power Pivot duomenų modelį iš daugelio skirtingų duomenų šaltinių, kurie gali palaikyti skirtingus duomenų tipus. Kai importuojate arba įkeliate duomenis, tada juos naudojate skaičiavimams arba "PivotTable", duomenys konvertuojami į vieną iš Power Pivot duomenų tipų. Duomenų tipų sąrašą žr. Duomenų modelių duomenų tipai.

Lentelės duomenų tipas yra naujas DAX duomenų tipas, naudojamas kaip daugelio naujų funkcijų įvestis arba išvestis. Pavyzdžiui, funkcija FILTER paima lentelę kaip įvestį, o išvestis – į kitą lentelę, kurioje yra tik filtro sąlygas atitinkančios eilutės. Sujungę lentelės funkcijas su agregavimo funkcijomis, galite atlikti sudėtingus skaičiavimus per dinamiškai apibrėžtus duomenų rinkinius. Daugiau informacijos žr. "Power Pivot" agregavimas.

Formulės ir sąryšinis modelis

Power Pivot langas yra sritis, kurioje galite dirbti su keliomis duomenų lentelėmis ir sujungti sąryšinio modelio lenteles. Naudojant šį duomenų modelį, lentelės sujungiamos tarpusavyje naudojant ryšius, kurie leidžia kurti koreliacijas su kitų lentelių stulpeliais ir kurti įdomesnius skaičiavimus. Pavyzdžiui, galite kurti formules, kurios sumuoja susijusios lentelės reikšmes, tada įrašyti tą reikšmę viename langelyje. Arba, norėdami valdyti eilutes iš susijusios lentelės, lentelei ir stulpeliams galite taikyti filtrus. Daugiau informacijos žr. Ryšiai tarp duomenų modelio lentelių.

Lenteles galite susieti naudodami ryšius, todėl "PivotTable" taip pat gali apimti duomenis iš kelių stulpelių, kurie yra iš skirtingų lentelių.

Tačiau formulės gali veikti su ištisomis lentelėmis ir stulpeliais, todėl skaičiavimus turite kurti kitaip, nei programoje "Excel".

  • Apskritai DAX formulė stulpelyje visada taikoma visam stulpelio reikšmių rinkiniui (ne tik kelioms eilutėms ar langeliams).

  • lentelėse, esančiose Power Pivot, kiekvienoje eilutėje turi būti vienodas stulpelių skaičius, o visose stulpelio eilutėse turi būti to paties duomenų tipo.

  • Kai lentelės sujungiamos ryšiu, tikimasi įsitikinti, kad dviejuose stulpeliuose, kurie naudojami kaip raktai, daugiausia yra reikšmės, atitinkančios. Kadangi Power Pivot neįgalina nuorodų vientisumo, galima rakto stulpelyje turėti nesutampančių reikšmių ir sukurti ryšį. Tačiau tuščių arba neatitinkančių reikšmių buvimas gali turėti įtakos formulių rezultatams ir "PivotTable" išvaizdai. Daugiau informacijos žr. "Power Pivot" formulių peržvalgos.

  • Kai susiejate lenteles naudodami ryšius, padidinate aprėptį arba ctekstą , kuriame vertinamos formulės. Pavyzdžiui, "PivotTable" formulėms gali turėti įtakos bet kokie filtrai arba stulpelių ir eilučių antraštės "PivotTable". Galite rašyti formules, kurios manipuliuoja kontekstu, tačiau dėl konteksto rezultatai taip pat gali pasikeisti taip, kaip galite nenumatyti. Daugiau informacijos žr. DAX formulių kontekstas.

Formulių rezultatų naujinimas

Duomenų perskaičiavimas ir perskaičiavimas yra dvi atskiros, tačiau susijusios operacijos, kurias turėtumėte suprasti kurdami duomenų modelį, kuriame yra sudėtingų formulių, daug duomenų kiekių arba duomenų, gautų iš išorinių duomenų šaltinių.

Duomenų atnaujinimas – tai procesas, kai darbaknygėje esantys duomenys atnaujinami naujais duomenimis iš išorinio duomenų šaltinio. Duomenis galite atnaujinti rankiniu būdu jūsų nustatytais intervalais. Arba, jei darbaknygę publikavote "SharePoint" svetainėje, galite suplanuoti automatinį atnaujinimą iš išorinių šaltinių.

Perskaičiavimas yra formulių rezultatų naujinimo procesas, kad būtų matomi visi pačių formulių pakeitimai ir atspindimi esami duomenys. Perskaičiavimas gali paveikti našumą šiais būdais:

  • Jei naudojate apskaičiuojamąjį stulpelį, formulės rezultatas visada turi būti perskaičiuotas visam stulpeliui, kai pakeičiate formulę.

  • Matui formulės rezultatai neskaičiuojami, kol matas įtraukiamas į "PivotTable" arba "PivotChart" kontekstą. Formulė taip pat bus perskaičiuota, kai pakeisite bet kurią eilutės ar stulpelio antraštę, kuri turės įtakos duomenų filtrams, arba kai rankiniu būdu atnaujinsite "PivotTable".

Formulių trikčių diagnostika

Formulių rašymo klaidos

Jei apibrėždami formulę gaunate klaidos pranešimą, formulėje gali būti sintaksinė klaida, semantinė klaida arba skaičiavimo klaida.

Sintaksines klaidas lengviausia išspręsti. Jie paprastai apima trūkstamą skliaustą arba kablelį. Jei reikia pagalbos dėl atskirų funkcijų sintaksės, žr. DAX funkcijos nuoroda.

Kito tipo klaida įvyksta, kai sintaksė yra teisinga, bet reikšmė arba nurodytas stulpelis nėra prasmingas formulės kontekste. Tokios semantinės ir skaičiavimo klaidos gali kilti dėl bet kurios iš šių problemų:

  • Formulė nurodo nesamą stulpelį, lentelę arba funkciją.

  • Formulė atrodo teisinga, bet kai duomenų modulis iškviečiamas, ji randa tipų neatitikimą ir pateikia klaidą.

  • Formulė funkcijai perduoda neteisingą skaičių arba parametrų tipą.

  • Formulė nurodo kitą stulpelį, kuriame yra klaida, todėl jo reikšmės yra neleistinos.

  • Formulė nurodo stulpelį, kuris nebuvo apdorotas, t. y. jame yra metaduomenų, bet nėra faktinių duomenų, kuriuos galima naudoti skaičiuojant.

Pirmaisiais keturiais atvejais DAX pažymi visą stulpelį, kuriame yra neleistina formulė. Paskutiniu atveju DAX papilkins stulpelį, kad nurodytų, jog stulpelis yra neapdorotos būsenos.

Neteisingi arba neįprasti rezultatai, kai stulpelių reikšmės rangas arba tvarka yra rangas

Kai rangas yra arba rikiuojate stulpelį, kuriame yra reikšmė NaN (ne skaičius), galite gauti neteisingus arba netikėtus rezultatus. Pvz., kai skaičiavimas padalina 0 iš 0, grąžinamas NaN rezultatas.

Taip yra todėl, kad formulės modulis atlieka rūšiavimą ir reitingavimą lygydamas skaitines reikšmes; Tačiau NaN negalima palyginti su kitais skaičiais stulpelyje.

Norėdami užtikrinti teisingus rezultatus, galite naudoti sąlyginius sakinius naudodami funkciją IF, kad patikrintumėte NaN reikšmes ir grąžintumėte skaitinę 0 reikšmę.

Suderinamumas su analizės tarnybų lentelės modeliais ir "DirectQuery" režimu

Paprastai DAX formulės, kurias kuriate Power Pivot, yra visiškai suderinamos su analizės tarnybų lentelių modeliais. Tačiau, jei Power Pivot modelį perkelsite į analizės tarnybų egzempliorių, o tada įdiegiate modelį "DirectQuery" režimu, yra tam tikrų apribojimų.

  • Kai kurios DAX formulės gali pateikti skirtingus rezultatus, jei modelį įdiegiate "DirectQuery" režimu.

  • Kai kurios formulės gali sukelti tikrinimo klaidų diegiant modelį "DirectQuery" režimu, nes formulėje yra DAX funkcija, kuri nepalaikoma sąryšiniame duomenų šaltinyje.

Daugiau informacijos žr. Analizės tarnybų lentelių modeliavimo dokumentacija ""SQL Server" 2012 BooksOnline".

Reikia daugiau pagalbos?

Norite daugiau parinkčių?

Sužinokite apie prenumeratos pranašumus, peržiūrėkite mokymo kursus, sužinokite, kaip apsaugoti savo įrenginį ir kt.

Bendruomenės padeda užduoti klausimus ir į juos atsakyti, pateikti atsiliepimų ir išgirsti iš ekspertų, turinčių daug žinių.