Využití databázových funkcí v Microsoft Excel

Potřebovali jste již někdy zjistit například to, jaký je průměrný plat zaměstnanců v určité věkové skupině nebo jaký je počet odpracovaných hodin u určité skupiny lidí za dané období? Sice by se postupně dalo použít filtrování a pak hodnoty sečítat a hledat výsledné číslo, ale bylo by to dost pracné. Pokud vás totiž nezajímá, kdo přesně patří do dané skupiny, ale jen určitá čísla, pak je vhodnější použít takzvané databázové funkce.

Ilustrační snímek

Co jsou to databázové funkce?

Databázové funkce jsou funkce, které pracují nad databází neboli nad seznamem dat. Umí tedy vyhodnotit velké množství dat na základě zadaných požadavků.

Základní princip práce s nimi je podobný jako s ostatními funkcemi MS Excelu, to znamená, že nejsnadněji se s nimi pracuje pomocí průvodce Vložit funkci.

Po klepnutí na ikonu Vložit funkci se zobrazí dialogové okno, ve kterém si najděte kategorii funkcí Databáze.

Tato skupina funkcí nepracuje jenom s vlastní oblastí dat, ale potřebuje ke své práci i předem definovanou oblast kritérií. Oblast kritérií je prakticky oblast buněk, do které definujete vlastní podmínky pro výběry či filtrování dat. Nejmenší oblast kritérií může mít dvě buňky, které jsou umístěny pod sebou. V horní buňce je název pole z databáze, v dolní je požadovaná podmínka (kritérium).

Mezi databázovými funkcemi najdete:

  • DMAX – která vrátí maximální hodnotu ve vybraném poli databáze, která splňuje zadaná kritéria,
  • DMIN – která vám zjistí minimální hodnotu ve vybraném poli databáze, která splňuje zadaná kritéria,
  • DPOČET – spočítá počet buněk obsahujících čísla ve vybraném poli databáze na základě zadání podmínek v oblasti kritérií,
  • DPOČET2 – vrátí počet všech neprázdných buněk ve vybraném poli databáze, která splňují zadaná kritéria,
  • DPRŮMĚR – vypočítá průměrnou hodnotu ve zvoleném poli databáze tak, že budou do výsledku zahrnuty jen ty záznamy, které splňují podmínky v oblasti kritérií,
  • DSUMA – spočítá součet čísel ve zvoleném poli databáze jen z těch záznamů, které splňují podmínky zadané ve vaší oblasti kritérií,
  • DVAR – vypočítá rozptyl čísel ve vybraném poli databáze, která budou odpovídat podmínkám v zadané oblasti kritérií,
  • DSMODCH – vrátí směrodatnou odchylku čísel ve vybraném poli databáze, která splňuje zadaná kritéria.

Jak se tedy s funkcemi pracuje?

Představte si tedy, že máte databázi, ze které potřebujete zjistit některé údaje pro další statistické zpracování.

Z těchto dat nyní potřebujete zjistit například průměrný plat lidí ve věku 30 až 40 let. Pokud v databázi přímo sloupec Věk nemáte, pak můžete postupovat dvojím způsobem. První je ten, že použijete pole Datum narození a určíte období, ve kterém se tito lidé mohli narodit. Pro 30 až 40 let by to například mohlo být od 1.1.1966 do 31.12.1976. Tyto data pak zapíšete do oblasti kritérií následujícím způsobem.

Nebo můžete do databáze vložit nový sloupec Věk, který se bude odkazovat na Datum narození. Do tohoto sloupce pak stačí vložit pro přibližný výpočet věku jednoduchý vzorec =ZAOKROUHLIT((DNES()-D2)/365;0).

Když tento vzorec nakopírujete na celý sloupec, budete mít neustále k dispozici aktuální věk jednotlivých osob. Potom již oblast kritérií můžete vytvořit následujícím způsobem.

Nyní již můžete pomocí průvodce Vložit funkci použít databázovou funkci DPRŮMĚR, která má tvar =DPRŮMĚR(databáze;pole;kritéria), kde databáze je vlastně oblast buněk, která tvoří databázi. Argument pole zase určuje sloupec, který má být ve funkci pro výpočet používán a kritéria je oblast buněk, do kterých jste zadali své podmínky (oblast kritérií).

Tedy pro výpočet průměrného platu v dané věkové kategorii stačí do funkce DPRŮMĚR doplnit oblast databáze, sloupec Plat a oblast kritérií se zadáním věkového intervalu.

Z obrázku je vidět, že uvedenou hodnotu (průměr platu pro lidi ve věku od 30 do 40 let) získáte velmi rychle, aniž byste museli v databázi dělat výběry či filtrovat jednotlivé položky.

Podobně pak můžete zjistit počet odpracovaných hodin u určité skupiny lidí, například bydlících v Praze. Zde se však již nedá použít funkce DPRŮMĚR, protože se jedná o sčítání jednotlivých hodinových položek.

Proto je třeba použít funkci DSUMA, která má tvar =DSUMA(databáze;pole;kritéria), kde databáze je ve skutečnosti opět oblast buněk, která tvoří databázi. Argument pole zase určuje sloupec, který má být ve funkci pro součet použitý a kritéria je opět oblast buněk, do kterých jste zadali své podmínky, podle kterých mají být hodnoty sečteny (oblast kritérií).

Nyní si tedy zkuste připravit nejprve oblast kritérií, tedy oblast, ve které musí být zadané, že chcete sčítat odpracované hodiny jen pro lidi bydlící v Praze. Protože však slovo Praha není na začátku buňky, je lepší použít zástupné znaky (*).

Vidíte, že oblast kritérií stačí velmi jednoduchá. To proto, že zadání pro hodiny již bude vlastně součástí funkce DSUMA. Spusťte si tedy průvodce Vložit funkci a ve skupině databázových funkcí vyhledejte funkci DSUMA. Potom již doplňte následujícím způsobem jednotlivé argumenty.

Díky databázové funkci jste tak opět získali výsledek velmi snadno a rychle, aniž byste museli prohledávat pracně celou databázi.

Důležité je to, že své podmínky můžete nadefinovat prakticky libovolně, vše prostě závisí na tom, co budete potřebovat z databáze vyhledávat. Také je třeba zdůraznit to, že tím, že se jedná o funkci, je výsledek neustále provázán s danou databází. To znamená, že pokud se některé údaje v databázi změní, promítne se změna i na výsledné hodnotě.

A nyní si představte, že potřebujete zjistit, kolik lidí z Prahy má plat vyšší než průměrný. Zde je třeba do oblasti kritérií doplnit podmínku se vzorcem, která bude položku po položce jakoby procházet jednotlivými záznamy a ty porovnávat s průměrnou hodnotou celé databáze.

Po zápisu oblasti kritérií můžete pro zjištění počtu hodnot použít funkci DPOČET, která má tvar =DPOČET(databáze;pole;kritéria), kde databáze je zase oblast buněk, která tvoří databázi. Argument pole opět určuje sloupec, který má být ve funkci pro součet použitý a kritéria je oblast buněk, do kterých jste zadali své podmínky, podle kterých má být počet položek zjištěn. Jestliže následujícím způsobem jednotlivé argumenty doplníte, získáte potřebný výsledek.

Zde jste mohli vidět jen malou ukázku práce s databázovými funkcemi, ale i na ní je patrné, jak mohou být správně použité funkce užitečné a v mnoha případech usnadnit práci.