Použili ste niekedy funkciu VLOOKUP na prenesenie stĺpca z jednej tabuľky do druhej? Excel obsahuje aj vstavaný dátový model, ktorý umožňuje vytvárať vzťahy medzi tabuľkami, čo môže byť alternatívou k používaní vyhľadávacích funkcií, ako je napríklad funkcia VLOOKUP. Vzťah medzi dvoma tabuľkami údajov môžete vytvoriť na základe zhodných údajov v jednotlivých tabuľkách. Potom môžete vytvoriť kontingenčné tabuľky a iné zostavy s poľami z každej tabuľky, a to aj vtedy, keď tabuľky pochádzajú z rôznych zdrojov. Ak máte napríklad údaje o predaji zákazníkom, môžete importovať údaje časovej inteligencie a vytvoriť k nim vzťah, aby ste mohli analyzovať vzory predaja v jednotlivých rokoch a mesiacoch.
Všetky tabuľky v zošite sú uvedené v zozname polí kontingenčnej tabuľky.
Vzťahy sa najčastejšie používajú pri vytváraní kontingenčných tabuliek z viacerých tabuliek v dátovom modeli. Umožní vám to analyzovať súvisiace údaje bez toho, aby ste ich skombinujú do jednej tabuľky.
Poznámka: Ak zošit obsahuje dátový model, vzťahy tabuliek môžete spravovať na karte Údaje.
Pri importovaní súvisiacich tabuliek z relačnej databázy môže Excel často tieto vzťahy vytvoriť v dátovom modeli, ktorý vytvára na pozadí. Vo všetkých ostatných prípadoch je potrebné vytvoriť vzťahy manuálne.
-
Presvedčte sa, či zošit obsahuje aspoň dve tabuľky a či každá tabuľka obsahuje stĺpec, ktorý možno priradiť k stĺpcu v inej tabuľke.
-
Vykonajte niektorý z týchto krokov: Naformátujte údaje ako tabuľku alebo importujte externé údaje ako tabuľku v novom hárku.
-
Dajte každej tabuľke zmysluplný názov: Na karte Nástroje tabuľky kliknite na položky Návrh > Názov tabuľky a zadajte názov.
-
Presvedčte sa, či má stĺpec jednej z tabuliek jedinečné, neduplicitné hodnoty údajov. Excel dokáže vytvoriť vzťah len v prípade, že jeden stĺpec obsahuje jedinečné hodnoty.
Ak chcete napríklad spojiť predaj zákazníka s časovou inteligenciou, obe tabuľky musia obsahovať dátumy v rovnakom formáte (napríklad 1.1.2026) a aspoň jedna tabuľka (časová inteligencia) uvádza každý dátum len raz v stĺpci.
-
Vyberte položku Vzťahy údajov >.
Ak položka Vzťahy nie je aktívna, zošit obsahuje len jednu tabuľku.
-
V poli Správa vzťahov vyberte položku Nové.
-
V dialógovom okne Vytvorenie vzťahu kliknite na šípku položky Tabuľka a v zozname vyberte tabuľku. V prípade vzťahu „one-to-many“ je potrebné, aby táto tabuľka bola na strane vzťahu „many“. V našom prípade so zákazníkmi a časovou inteligenciou vyberiete najskôr tabuľku predaja zákazníkom, pretože každý deň sa pravdepodobne vyskytne viacero zákazníkov.
-
V časti Stĺpec (cudzí) vyberte stĺpec obsahujúci údaje, ktoré súvisia s položkou Súvisiaci stĺpec (primárny). Ak napríklad obidve tabuľky obsahujú stĺpec s dátumom, vyberte teraz tento stĺpec.
-
V časti Súvisiaca tabuľka vyberte tabuľku obsahujúcu najmenej jeden stĺpec údajov, ktoré súvisia s tabuľkou vybranou v časti Tabuľka.
-
V časti Súvisiaci stĺpec (primárny) vyberte stĺpec, ktorý obsahuje jedinečné hodnoty zodpovedajúce hodnotám v stĺpci vybratom v časti Stĺpec.
-
Vyberte položku OK.
Ďalšie informácie o vzťahoch medzi tabuľkami v Exceli
Poznámky k vzťahom
-
Keď presuniete polia z rôznych tabuliek do zoznamu polí kontingenčnej tabuľky, zistíte, či vzťah existuje. Ak sa nezobrazí výzva na vytvorenie vzťahu, Excel už obsahuje informácie o vzťahu, ktoré potrebuje na vytvorenie vzťahu s údajmi.
-
Vytvorenie vzťahov je podobné používaniu funkcie VLOOKUP: potrebujete stĺpce, ktoré obsahujú zodpovedajúce údaje, aby Excel mohol používať krížové odkazy riadkov v jednej tabuľke na riadky v inej tabuľke. V príklade s časovou inteligenciou musí tabuľka Customer (Zákazník) obsahovať hodnoty dátumu, ktoré existujú aj v tabuľke časovej inteligencie.
-
V dátovom modeli Excelu sú vzťahy zvyčajne "one-to-one" alebo "one-to-many". Vzťahy typu Many-to-many vyžadujú ďalšie modelovanie (napríklad pomocou vyhľadávacej tabuľky). Vzťahy typu Many-to-many majú za následok chyby cyklickej závislosti, napríklad "Zistila sa cyklická závislosť". Táto chyba sa vyskytne, ak vytvoríte priame pripojenie medzi dvoma tabuľkami, ktoré sú typu many-to-many, alebo nepriamymi pripojeniami (reťazec vzťahov tabuliek, ktoré sú vo vzťahu typu "one-to-many", ale "many-to-many" pri zobrazení od konca po koniec). Ďalšie informácie si môžete prečítať v téme Vzťahy medzi tabuľkami v modeli údajov.
-
-
Na rozdiel od vyhľadávacích vzorcov vzťahy nezduplikujú údaje. Namiesto toho prepájajú tabuľky tak, aby sa polia z každej tabuľky mohli použiť spolu v kontingenčnej tabuľke.
-
Typy údajov v dvoch stĺpcoch musia byť kompatibilné. Ďalšie informácie nájdete v téme Typy údajov v dátových modeloch Excelu.
-
Ďalšie spôsoby vytvárania vzťahov môžu byť intuitívnejšie, najmä ak si nie ste istí, ktoré stĺpce sa majú použiť. Ďalšie informácie nájdete v téme Vytváranie vzťahov v zobrazení diagramu doplnkuPower Pivot.
"Môžu byť potrebné vzťahy medzi tabuľkami"
Pri pridávaní polí do kontingenčnej tabuľky budete informovaní o tom, či sa vyžaduje vzťah tabuliek na to, aby dával zmysel poliam, ktoré ste vybrali v kontingenčnej tabuľke.
Hoci Excel dokáže zistiť, kedy je vzťah potrebný, nedokáže vám povedať, ktoré tabuľky a stĺpce použiť, ani či je vzťah tabuliek dokonca možný. Na získanie potrebných odpovedí vyskúšajte nasledovné kroky.
Krok 1: Určite, ktoré tabuľky sa majú v rámci vzťahov špecifikovať
Ak váš model obsahuje len niekoľko tabuliek, môže byť hneď zrejmé, ktoré bude potrebné použiť. Pri väčších modeloch však možno budete potrebovať pomoc. Jedným z prístupov je použiť zobrazenie diagramu v doplnku Power Pivot. Zobrazenie diagramu poskytuje vizuálnu znázornenie všetkých tabuliek v dátovom modeli. Pomocou zobrazenia diagramu môžete rýchlo určiť, ktoré tabuľky sú od zvyšku modelu oddelené.
Poznámka: Pri použití v kontingenčnej tabuľke je možné vytvoriť nejednoznačné vzťahy, ktoré sú neplatné. Predpokladajme, že všetky tabuľky nejakým spôsobom súvisia s inými tabuľkami v modeli, ale keď sa pokúsite skombinovať polia z rôznych tabuliek, zobrazí sa hlásenie Môžu byť potrebné vzťahy medzi tabuľkami. Najpravdepodobnejšou príčinou je, že máte vzťah typu many-to-many. Ak budete sledovať reťazec vzťahov tabuliek, ktoré sa pripájajú k tabuľkám, ktoré chcete použiť, pravdepodobne zistíte, že máte dva alebo viac vzťahov „one-to-many“. K dispozícii nie je žiadne jednoduché alternatívne riešenie, ktoré by fungovalo vo všetkých prípadoch, ale môžete vyskúšať vytvoriť vypočítané stĺpce a konsolidovať tak stĺpce, ktoré chcete použiť, do jednej tabuľky.
Krok 2: Vyhľadajte stĺpce, ktoré možno použiť na vytvorenie cesty z jednej tabuľky do druhej
Po identifikovaní tabuľky, ktorá je odpojená od zvyšku modelu, skontrolujte jej stĺpce a zistite, či iný stĺpec inde v modeli obsahuje zodpovedajúce hodnoty.
Predpokladajme, že máte model obsahujúci predaj produktov podľa regiónu a že následne importuje demografické údaje, aby ste zistili, či existuje korelácia medzi predajom a demografickými trendmi jednotlivých území. Keďže demografické údaje pochádzajú z rôznych zdrojov údajov, tabuľky sú spočiatku izolované od zvyšku modelu. Ak chcete demografické údaje integrovať so zvyškom modelu, musíte nájsť stĺpec v jednej z demografických tabuliek, ktorý zodpovedá tej, ktorú už používate. Ak sú napríklad demografické údaje zorganizované podľa oblasti a údaje o predaji uvádzajú, v ktorej oblasti k predaju došlo, môžete vytvoriť vzťah medzi týmito dvoma množinami údajov, nájsť spoločný stĺpec, napríklad Štát, PSČ alebo Oblasť a poskytnúť ich na vyhľadávanie.
Okrem zhodných hodnôt je na vytvorenie vzťahu potrebné splniť aj ďalšie požiadavky:
-
Hodnoty dátumov v stĺpci vyhľadávania musia byť jedinečné. Inými slovami, stĺpec nemôže obsahovať duplicity. Hodnota null a prázdne reťazce sú v dátovom modeli ekvivalentné prázdnej hodnote, čo predstavuje jednoznačnú hodnotu údajov. To znamená, že vo vyhľadávacom stĺpci nemôžete mať viacero hodnôt null.
-
Je tiež potrebné, aby typy údajov zdrojového stĺpca a vyhľadávacieho stĺpca boli kompatibilné. Ďalšie informácie o typoch údajov nájdete v téme Typy údajov v údajových modeloch.
Ďalšie informácie o vzťahoch tabuliek nájdete v téme Vzťahy medzi tabuľkami v údajovom modeli.