Vyhľadávania vo vzorcoch doplnku Power Pivot

Poznámka:  Radi by sme vám čo najrýchlejšie poskytovali najaktuálnejší obsah Pomocníka vo vašom vlastnom jazyku. Táto stránka bola preložená automaticky a môže obsahovať gramatické chyby alebo nepresnosti. Naším cieľom je, aby bol tento obsah pre vás užitočný. Dali by ste nám v dolnej časti tejto stránky vedieť, či boli pre vás tieto informácie užitočné? Tu nájdete anglický článok pre jednoduchú referenciu.

Jednou z najvýkonnejších funkcií doplnku PowerPivot je možnosť vytvárať vzťahy medzi tabuľkami a potom používať súvisiace tabuľky na vyhľadávanie alebo filtrovanie súvisiacich údajov. Súvisiace hodnoty z tabuliek načítavate pomocou jazyka DAX (Data Analysis Expressions), ktorý sa poskytuje s doplnkom  PowerPivot. Jazyk DAX používa relačný model, a preto môže jednoducho a presne načítavať súvisiace alebo zodpovedajúce hodnoty v inej tabuľke alebo inom stĺpci. Ak viete používať funkciu VLOOKUP v Exceli, táto funkcia v doplnku PowerPivot je podobná, ale jednoduchšie sa implementuje.

Môžete vytvoriť vzorce, ktoré sa vyhľadávania ako súčasť vypočítavaného stĺpca alebo ako súčasť opatrenia na použitie v zostave kontingenčnej tabuľky alebo kontingenčného grafu. Ďalšie informácie nájdete v nasledujúcich témach:

Vypočítavané polia v doplnku Power Pivot

Vypočítavané stĺpce v doplnku Power Pivot

Táto časť popisuje funkcie jazyka DAX, ktoré sa poskytujú na vyhľadávanie, ako aj určité príklady spôsobu použitia funkcií.

Poznámka: V závislosti od typu operácie vyhľadávania alebo vyhľadávacieho vzorca, ktoré chcete použiť, môže byť najprv potrebné vytvoriť vzťah medzi tabuľkami.

Princíp funkcií vyhľadávania

Schopnosť vyhľadávať zhodné alebo súvisiace údaje z inej tabuľky je užitočná najmä v prípadoch, v ktorých aktuálna tabuľka obsahuje iba určitý identifikátor, ale požadované údaje (ako napríklad cena a názov produktu alebo iné podrobné údaje) sú uložené v súvisiacej tabuľke. Je užitočná aj v prípade, ak v inej tabuľke existuje viacero riadkov súvisiacich s aktuálnym riadkom alebo aktuálnou hodnotou. Môžete napríklad jednoducho načítať všetky hodnoty predaja, ktoré súvisia s určitou oblasťou, predajňou alebo osobou.

Na rozdiel od vyhľadávacích funkcií programu Excel, ako je napríklad funkcia VLOOKUP, ktorá je založená na poliach, alebo funkcia LOOKUP, ktorá načítava prvú z viacerých zhodných hodnôt, jazyk DAX sleduje existujúce vzťahy medzi tabuľkami spojenými kľúčmi, aby sa získala jedna súvisiaca a presne sa zhodujúca hodnota. Jazyk DAX tiež dokáže načítať tabuľku záznamov súvisiacich s aktuálnym záznamom.

Poznámka: Ak sa vyznáte v relačných databázach, vyhľadávacie funkcie v doplnku PowerPivot možno prirovnať k vnorenému príkazu pre dodatočný výber v jazyku Transact-SQL.

Načítanie jednej súvisiacej hodnoty

Funkcia RELATED vráti jednu hodnotu z inej tabuľky, ktorá súvisí s aktuálnou hodnotou v aktuálnej tabuľke. Zadáte stĺpec, ktorý obsahuje požadované údaje, a funkcia na základe existujúcich vzťahov medzi tabuľkami vyvolá hodnotu zo zadaného stĺpca v súvisiacej tabuľke. V niektorých prípadoch musí funkcia pri načítavaní údajov postupovať podľa reťazca vzťahov.

Predpokladajme napríklad, že máte zoznam dnešných dodávok v Exceli. Zoznam však obsahuje iba identifikačné číslo zamestnanca, identifikačné číslo objednávky a identifikačné číslo expedienta, takže zostava neposkytuje dostatok údajov. Ak chcete získať ďalšie požadované údaje, môžete tento zoznam skonvertovať na prepojenú tabuľku doplnku PowerPivot a potom vytvoriť vzťahy s tabuľkami Employee a Reseller a priradiť pole EmployeeID k poľu EmployeeKey a pole ResellerID k poľu ResellerKey.

Na zobrazenie vyhľadávacích informácií v prepojenej tabuľke pridáte dva nové vypočítavané stĺpce s nasledujúcimi vzorcami:

= RELATED('Employees'[EmployeeName])
= RELATED('Resellers'[CompanyName])

Dnešný zásielok pred vyhľadávaním

OrderID

Identifikácia zamestnanca

ResellerID

100314

230

445

100315

15

445

100316

76

108

Tabuľka zamestnanci

Identifikácia zamestnanca

Zamestnanca

Predajcu

230

Kuppa Vamsi

Modular Cycle Systems

15

Pilar Ackeman

Modular Cycle Systems

76

Kim Ralls

Associated Bikes

Dnešný zásielok pomocou vyhľadávania

OrderID

Identifikácia zamestnanca

ResellerID

Zamestnanca

Predajcu

100314

230

445

Kuppa Vamsi

Modular Cycle Systems

100315

15

445

Pilar Ackeman

Modular Cycle Systems

100316

76

108

Kim Ralls

Associated Bikes

Táto funkcia používa vzťahy medzi prepojenú tabuľku a v tabuľke zamestnanci a prostredníctvom predajcov získať správny názov pre každý riadok v zostave. Môžete použiť aj súvisiacich hodnôt pre výpočty. Ďalšie informácie a príklady nájdete v téme funkcia RELATED.

Načítanie zoznamu súvisiacich hodnôt

Funkcia RELATEDTABLE nasleduje existujúci vzťah, a vráti tabuľku, ktorá obsahuje všetky zodpovedajúcich riadkov zo zadanej tabuľky. Predpokladajme, že chcete zistiť, koľko objednávky jednotlivých predajcov umiestnilo tento rok. Môžete vytvoriť nový vypočítavaný stĺpec v predajcov tabuľku, ktorá obsahuje nasledujúci vzorec, ktorý vyhľadá záznamy pre každú predajcu v tabuľke ResellerSales_USD, a spočíta jednotlivé objednávky jednotlivých predajcov. Tieto tabuľky sú súčasťou vzorového zošita DAX. Ďalšie informácie o vzorových údajov nájdete v téme získanie vzorových údajov pre kurzy jazyka DAX a údajového modelu.

=COUNTROWS(RELATEDTABLE(ResellerSales_USD))

V tomto vzorci funkcia RELATEDTABLE najprv načíta hodnotu ResellerKey pre každého predajcu v aktuálnej tabuľke. (Vo vzorci nie je nikde potrebné zadať stĺpec identifikátora, pretože PowerPivot používa existujúci vzťah medzi tabuľkami.) Funkcia RELATEDTABLE potom načíta všetky riadky z tabuľky ResellerSales_USD , ktoré súvisia s jednotlivými predajcami, a spočíta riadky. Ak neexistuje žiadny vzťah (priamy ani nepriamy) medzi dvoma tabuľkami, načítajú sa všetky riadky z tabuľky ResellerSales_USD.

Pre predajcu Modular Cycle Systems v našej vzorovej databáze existujú v tabuľke predaja štyri objednávky, takže funkcia vráti hodnotu 4. Pre predajcu Associated Bikes neexistuje žiadny predaj, a preto funkcia vráti prázdnu hodnotu.

Predajcu

Záznamy v tabuľke predaja pre tohto predajcu

Modular Cycle Systems

Reseller ID

SalesOrderNumber

445

SO53494

445

SO71872

445

SO65233

445

SO59000

Reseller ID

SalesOrderNumber

Associated Bikes

Poznámka: Pretože funkcia RELATEDTABLE vráti tabuľku, jedinú hodnotu, musí byť použité ako argument na funkciu, ktorá vykonáva operácie v tabuľkách. Ďalšie informácie nájdete v téme Funkcia RELATEDTABLE.

Na začiatok stránky

Rozšírte svoje zručnosti práce s balíkom Office
Preskúmať školenie
Buďte medzi prvými, ktorí získajú nové funkcie
Pridajte sa k insiderom pre Office

Boli tieto informácie užitočné?

Ďakujeme za vaše pripomienky!

Ďakujeme vám za pripomienky. Pravdepodobne vám pomôže, ak vás spojíme s pracovníkom podpory pre Office.

×