MS Excel 2007 – Kontingenční tabulky Obsah kapitoly
V této kapitole se seznámíme s nástrojem, který se používá k analýze dat rozsáhlých seznamů.
Studijní cíle
Studenti budou umět pro analýzu dat rozsáhlých seznamů používat nástroj kontingenční tabulka. Zvládnou jednoduché úpravy vytvořené tabulky.
Doba potřebná ke studiu
Pro přečtení výkladu, řešeného příkladu a vypracování samostatného dobrovolného úkolu minimálně 80 minut
Pojmy k zapamatování
Zdroj dat Datové položky Řádkové pole Sloupcové pole Stránkové pole Aktualizace kontingenční tabulky
Úvod
Pro vytváření jednoduchých souhrnných výpočtů v databázích jsme používali nástroj Souhrn. Pokud nezapomeneme na správné pořadí řádků seznamu, umožní rychle a poměrně jednoduše potřebné souhrny vypočítat. Pro vytvoření složitějších souhrnů z dat nějakého seznamu využijeme v programu MS Excel nástroj Kontingenční tabulka. Pomocí něj vytvoříme z dat původní databáze novou tabulku s požadovanými souhrnnými výpočty. Kontingenční tabulky jsou velice silným nástrojem, který se používá k analýze dat rozsáhlých databází. Problematika vytváření a úprav kontingenčních tabulek je velmi rozsáhlá, naznačíme si pouze základní postupy. Budeme také pro jednoduchost uvažovat pouze databázi programu MS Excel, program umí ale vytvářet kontingenční tabulky i z externích zdrojů (např. databáze MS Access) nebo z nesouvislé oblasti dat. Program umožňuje některé z akcí a různá nastavení provést několika různými způsoby. Vyzkoušíme si vždy jen jeden postup.
Výkladová část
Pro vytvoření kontingenční tabulky umístíme aktivní buňku do databáze a na začátku karty Vložení klepneme na horní část tlačítka Kontingenční tabulka. Program zobrazí jednoduché dialogové okno.
V poli Tabulka/oblast dialogového okna je adresa oblasti, která odpovídá našemu seznamu, jsou to tzv. zdrojová data. Pokud bychom před vyvoláním dialogového okna zapomněli umístit aktivní buňku do seznamu, bude pole prázdné a oblast databáze musíme zadat sami. Pokud je adresa databáze správná, určíme v dolní části okna, jestli se má nová tabulka vytvořit na novém listě, nebo zadáme (nejlépe klepnutím myší do listu), od které buňky kterého ze stávajících listů sešitu má být tabulka vytvořena. Volba nový list je možná trochu vhodnější. Při vytváření kontingenční tabulky a jejich pozdějších úpravách program upravuje podle potřeby výšky řádků a šířky sloupců, při volbě Existující list by se mohlo stát, že nám případné tabulky na listě trochu „rozhodí“. Nastaven potvrdíme. Stav po potvrzení dialogového okna Vytvořit kontingenční tabulku:
Program, na místě určeném předchozí volbou, vytvoří symbolickou prázdnou tabulku a v pravé části okna zobrazí podokno Seznam polí kontingenční tabulky. V horní části tohoto podokna jsou zobrazeny názvy
Řádková pole Ukázka dat tabulky, se kterou pracujeme
Sloupcová pole
polí zdrojové tabulky. Použijeme ho k výběru polí do vytvářené kontingenční tabulky nebo k jejich zpětnému odebrání. K přidání polí do kontingenční tabulky využijeme ale vhodnější, přesnější postupy. Zaškrtávací políčka je lepší používat jen pro odebírání polí. Pomocí voleb v dolní části podokna pak budeme určovat rozložení polí tabulky. Ze seznamu polí vybíráme do kontingenční tabulky ta pole, za která potřebujeme vytvořit souhrnný výpočet (tzv. řádková nebo sloupcová pole), dále pole, s jejichž hodnotami budeme počítat (která budeme sečítat, jejichž počet budeme zjišťovat,… tzv. datová pole) a dále pole, která případně budeme používat pro filtrování dat (tzv. pole filtrů nebo také stránková pole). Pole do vytvářené kontingenční tabulky (nebo do odpovídajících okének v dolní části podokna Seznam polí kontingenční tabulky) umístíme přetažením, nebo výběrem příkazu z místní nabídky názvu přidávaného pole, kterou vyvoláme v podokně Seznam polí kontingenční tabulky. Podle toho, jestli s daty potřebujeme počítat, nebo jestli mají být použita jako popisky řádků nebo sloupců, případně jestli je potřebujeme pro filtrování dat kontingenční tabulky, vybíráme příslušnou část vytvářené kontingenční tabulky. Pokud umístíme název pole databáze do oblasti Sem přetáhněte řádková pole v symbolické tabulce (nebo do okénka Popisky řádků v podokně Seznam polí kontingenční tabulky), určujeme, že se má z hodnot tohoto pole zdrojových dat vytvořit seznam, a že se jednotlivé položky tohoto seznamu mají umístit do řádků pod sebe. Vytváříme tak záhlaví řádků kontingenční tabulky a určujeme tak, za jaké skupiny dat se bude vytvářet souhrnný výpočet. Na obrázku dole jsme přetáhli název pole Řidič do řádkových polí, program tak vytvořil seznam řidičů, každého řidiče z původního seznamu uvedl jen jednou.
Obdobně umístěním názvu pole databáze do oblasti Sem přetáhněte sloupcová pole (nebo do rámečku Názvy sloupců v podokně Seznam polí kontingenční tabulky) vytvoříme seznam hodnot vybraného pole zdrojových dat ve sloupcích vedle sebe. Vytváříme tak záhlaví sloupců,
a určujeme tím, za jakou skupinu dat budeme vytvářet souhrnný výpočet. Na obrázku dole jsme pole Datum přetáhli do oblasti Sem přetáhněte sloupcová pole. Program vytvořil seznam měsíců, které byly uvedeny ve zdrojové tabulce.
Datové položky
Umístěním názvu pole do oblasti Sem přetáhněte datové položky (nebo do políčka Hodnoty v podokně) určujeme, že hodnoty tohoto pole bude program sečítat, počítat z nich průměr, zjišťovat jejich počet,… Pokud do této oblasti umístíme pole, ve kterém jsou texty, použije program automaticky funkci Počet, pokud jsou v poli čísla, použije funkci Součet. Zvolenou funkci lze dodatečně změnit. Na obrázku dole jsme pole seznamu nazvané Řidič přetáhli do oblasti Sem přetáhněte datové položky. Protože v tomto sloupci jsou texty, program automaticky zjistil jejich počet za vytvořené skupiny dat. Jinak řečeno vypočítal, kolikrát bylo v jednotlivých měsících uvedeno v původní tabulce každé ze jmen.
Pokud bychom do stejné oblasti (nebo odpovídajícího okénka v podokně Seznam polí kontingenční tabulky) přetáhli pole Km, zjistíme, kolik který z řidičů v jednotlivých měsících ujel kilometrů.
Umístěním názvu pole databáze do oblasti Sem přetáhněte stránková pole (=Filtr sestavy v podokně) nastavíme filtr pro celou kontingenční tabulku. Používá se, pokud v kontingenční tabulce potřebujeme zobrazit data jen nějaké vybrané skupiny záznamů zdrojového seznamu (v ukázce např. data jen jednoho vybraného řidiče).
Původní kontingenční tabulka:
Výběr:
Výsledek výběru: Do jednotlivých částí kontingenční tabulky můžeme přidávat názvy více polí, vytváří se tak více úrovní výpočtů, výpočty několika položek nebo složitější filtry. Pro umístění polí do kontingenční tabulky, nebo pro jejich přeskupení, můžeme používat i okénka v dolní části podokna Seznam polí kontingenční tabulky. Mají stejný význam jako rámečky v kontingenční tabulce, zvláště pro přeskupování polí ve vytvořené tabulce jsou možná vhodnější. Vytvořenou tabulku můžeme různě přeskupovat – přidávat do ní další pole, nepotřebná pole z ní odebírat, můžeme měnit rozložení kontingenční
tabulky, můžeme ji formátovat, filtrovat a řadit její data, můžeme v ní vytvářet další úroveň souhrnů, vlastní výpočty,… Pokud je kontingenční tabulka aktivní (aktivní buňka je v oblasti kontingenční tabulky), najdeme veškerá potřebná nastavení v podokně Seznam polí kontingenční tabulky, případně na kartách Možnosti a Návrh. Můžeme využít i místní nabídku jednotlivých částí kontingenční tabulky. Na obrázku vedle je jednoduchá kontingenční tabulka, vytvořená z dat seznamu, jehož ukázka je nahoře. Při vytváření kontingenční tabulky bylo do řádkových polí přetaženo pole Řidič, do datového pole sloupec Km zdrojové tabulky. Bylo tak vypočítáno, kolik km celkem každý řidič uvedený v seznamu ujel. Základní úpravy kontingenční tabulky
Na této kontingenční tabulce si vyzkoušíme některé základní úpravy. 1. Nelíbí se nám popisek Součet z Km – do buňky se dá po označení rovnou psát. Můžeme také na buňku poklepat a v zobrazeném dialogovém okně Nastavení polí hodnot změnit text v poli Vlastní název. 2. Potřebujeme jinou souhrnnou funkci – můžeme vyvolat místní nabídku kteréhokoliv vypočítaného čísla (639, 615, 1099) a vybrat v ní Nastavení polí hodnot. V dialogovém okně Nastavení polí hodnot, v části Zvolte typ kalkulace… vybereme z nabízeného seznamu jinou souhrnnou funkci. 3. Potřebujeme upravit formát vypočítaného čísla – poklepem na buňku s popiskem (v ukázce Součet z Km) nebo pomocí místní nabídky kteréhokoliv vypočítaného čísla vyvoláme dialogové okno Nastavení polí hodnot. V levém dolním rohu okna klepneme na tlačítko Formát čísla. Otevře se další dialogové okno – Formát buněk, ve kterém potřebný formát nastavíme. 4. Potřebujeme pole použité v datových polích (vypočítané hodnoty) přidat ještě jednou, ale s jinou souhrnnou funkcí (např. průměr, maximum,…) – v horní části podokna Seznam polí kontingenční tabulky klepneme pravým tlačítkem myši na určené pole, z místní nabídky
vybereme Přidat k hodnotám. Pak již jen upravíme souhrnnou funkci (viz úprava 3) a případně i popisek (úprava 1).
Výsledek:
5. Potřebujeme odstranit pole z kontingenční tabulky – v horní části podokna Seznam polí kontingenční tabulky vyprázdníme zaškrtávací políčko u příslušného pole. 6. Potřebujeme přeskupit pole v kontingenční tabulce (změnit rozložení polí tabulky) – v dolní části podokna Seznam polí kontingenční tabulky, v části Přetáhnout mezi následujícími oblastmi, přetáhneme myší tlačítko příslušného pole do jiného rámečku.
Přetažení polí můžeme provádět také přímo v tabulce, musíme ale pozorně sledovat symboly, kterými program naznačuje, do které oblasti kontingenční tabulky pole přemisťujeme. Podokno je v tomto případě jednodušší. 7. V kontingenční tabulce potřebujeme vytvořit vyšší úroveň souhrnů (např. místo souhrnů za konkrétní datum potřebujeme vytvořit vyšší úroveň souhrnů za měsíc nebo rok) – vyvoláme místní nabídku jedné
z hodnot záhlaví řádků nebo sloupců (řádkové nebo sloupcové pole), za které souhrn vytváříme, a vybereme příkaz Seskupit. Otevře se dialogové okno Seskupit, které podle potřeby vyplníme. Původní seznam
Část vytvořené kontingenční tabulky:
Vyvolaná místní nabídka:
Nastavení okna Seskupit:
Kontingenční tabulka po úpravě:
8. Potřebujeme hodnoty v záhlaví řádků nebo sloupců v jiném pořadí – klepneme do jedné z hodnot záhlaví pravým tlačítkem myši a v řádku Seřadit místní nabídky vybereme způsob řazení. Stejnou možnost najdeme, pokud klepneme na rozbalovací šipku u popisku pole (na obrázku dole jsme klepli na šipku u Řidič).
9. V tabulce potřebujeme vidět jen některé řádky nebo sloupce záhlaví – stejně jako v předchozím případě klepneme na rozbalovací šipku u popisku pole, funguje jako automatický filtr. Je to vidět na předcházejícím obrázku.
Pokud bychom potřebovali data vytvořené kontingenční tabulky vynést do grafu, můžeme hned na začátku při vytváření kontingenční tabulky klepnout u tlačítka Kontingenční tabulka na rozbalovací šipku, a vybrat Kontingenční graf. Program na základě našich pokynů vytvoří kontingenční tabulku a její data rovnou vynese do grafu. Každá změna rozložení kontingenční tabulky se pak rovnou zobrazí v grafu. Rozšiřující text
Pozor! Při změně hodnot ve zdroji dat nedochází automaticky k přepočtu výsledků kontingenční tabulky. Stejně tak program nezaregistruje případné rozšíření zdrojové tabulky (přidané řádky). Vše musíme ošetřit nejlépe pomocí tlačítek Aktualizovat (změna hodnot), event. Změnit zdroj dat (změna rozsahu databáze), na kartě Možnosti, která bude k dispozici vždy, když bude kontingenční tabulka aktivní, tj. když je v kontingenční tabulce aktivní buňka. Prostudujte si také řešený příklad. Pro lepší zvládnutí nástroje si můžete také zkusit vypracovat dobrovolný úkol s náhledem výsledku.
Shrnutí
Nástroj kontingenční tabulka patří k velice silným nástrojům, které se používají k analýze dat rozsáhlých databází.
Kontrolní otázky a úkoly
Zadání úkolu
Studijní literatura
Klíč k úkolům
1. Nováková A., Nulíček V.: Aplikační software 1, 2. Eupress 2008 (skripta). ISBN: 978-80-7408-010-4 2. Bříza V.: Excel 2007 – podrobný průvodce. Grada 2007. ISBN: 978-80-247-1965-8 3. Brož M: MS Excel 2007 – podrobná uživatelská příručka. Computerpress U dobrovolného úkolu je k dispozici kontrolní náhled