MATCH je vyhľadávacia funkcia, ktorá nájde relatívnu pozíciu riadka alebo stĺpca zodpovedajúcemu vstupným kritériám. Funkcia nevracia hodnotu samotnú, ale iba jej pozíciu v rámci zvoleného rozsahu.

> > > Pozri aj: Funkcia MATCH v Microsoft Excel. < < <

Parametre funkcie

  1. Kritérium vyhľadávania (Search Criterion) – hľadaná hodnota, ktorá sa porovnáva s hodnotami buniek v prehľadávanom poli.
  2. Prehľadávané pole (Lookup array) – rozsah buniek, v ktorom sa testuje kritérium vyhľadávania na prítomnosť.
  3. Typ (Type) – určuje, akým spôsobom sa má vyhodnocovať prítomnosť alebo neprítomnosť kritéria vyhľadávania v prehľadávanom poli. Môže nadobúdať hodnotu
    1. 1 (maximálne menší/rovný) – funkcia nájde najväčšiu hodnotu v prehľadávanom poli, ktorá je menšia alebo rovná ako kritérium vyhľadávania, pričom platí, že prehľadávané pole musí byť zoradené vzostupne (od najmenšie po najväčšie hodnoty). Predvolená hodnota pri vynechaní parametra.
    2. 0 (presná zhoda) – funkcia nájde prvú hodnotu v prehľadávanom poli, ktorá je rovná kritériu vyhľadávania.
    3. -1 (minimálne väčší/rovný) – funkcia nájde najmenšiu hodnotu v prehľadávanom poli, ktorá je väčšia alebo rovná ako kritérium vyhľadávania, pričom platí, že prehľadávané pole musí byť zoradené zostupne (od najväčšie po najmenšie hodnoty).

match1

Návratová hodnota

Funkcia vracia relatívnu pozíciu riadka alebo stĺpca bunky s hľadanou hodnotou v rámci prehľadávaného poľa. V prípade nenájdenej zhody alebo nesprávne zoradeného prehľadávaného poľa funkcia vracia hodnotu #NA.

Dôležité informácie

  • Pri hľadaní zhody s textovou hodnotou, funkcia nerozlišuje veľké a malé písmená.
  • V prípade hľadania textovej hodnoty v móde Typ zhody = 0 (presná zhoda), je možné použiť tiež žolíka (wildcard) „?“ (ľubovoľný znak) alebo „*“ (postupnosť ľubovoľných znakov), prípadne iné regulárne výrazy (viac informácií tu). Ak chceme použiť ako špecifickú podmienku tieto znaky, je nutné ich použiť s prefixom „\“ (spätné lomítko).
  • Časté využitie funkcie MATCH je realizované v spojení s funkciou INDEX. Pri klasickom použití pripomína toto spojenie funkciu VLOOKUP, avšak nespornou výhodou je možnosť definovania viacerých podmienok, na základe, ktorých sa má vyhľadávať cieľová hodnota (viď viackriterálne vyhľadávanie).

Viackriteriálne vyhľadávanie

Ak je potrebné vyhľadávať podľa viacerých podmienok, funkcia MATCH môže byť dobrou voľbou a zároveň aj výhodou pred funkciou VLOOKUP. Definovať viaceré podmienky je možné reťazením podmienok pomocou symbolu „&“, napr.

=MATCH(D2&E2;$A$3:$A$10&$B$3:$B$10;0)

Tento spôsob bol využitý pri riešení príkladu 4. Výhodou programu Calc v tejto oblasti je, že odpadá nutnosť potvrdzovať vzorec CTRL + SHIFT + ENTER (v programe Excel vytvoríme maticový vzorec) postačuje klasické potvrdenie klávesom ENTER.


Príklad 1

Zadanie: Do bunky $F$3 doplňte pozíciu riadka z tabuľky Súťažiaci, v ktorom sa nachádza súťažiaci s vekom určeným bunkou $E$3 (Hľadaný vek).

Riešenie: Zvolíme nasledovné parametre funkcie:

  1. Kritérium vyhľadávania (Search Criterion) – bunka $E$3 obsahujúca hľadaný vek.
  2. Prehľadávané pole (Lookup array) – stĺpec Vek v tabuľke Súťažiaci ($C$3:$C$9).
  3. Typ (Type) – hodnota 0, hľadáme presnú zhodu veku.

Záver: Pomocou funkcie MATCH sme získali pozíciu riadku v tabuľke Súťažiaci, ktorý obsahuje vek súťažiaceho vo výške 42 rokov.

match2


Príklad 2

Zadanie: Do bunky $F$3 doplňte pozíciu riadka z tabuľky Súťažiaci, v ktorom sa nachádza najbližší súťažiaci, ktorý je mladší alebo rovnako starý ako určený vek v bunke $E$3 (Hľadaný vek).

Riešenie: Tabuľku Súťažiaci zoradíme vzostupne podľa stĺpca C (Vek) a zvolíme nasledovné parametre funkcie:

  1. Kritérium vyhľadávania (Search Criterion) – bunka $E$3 obsahujúca hľadaný vek.
  2. Prehľadávané pole (Lookup array) – stĺpec Vek v tabuľke Súťažiaci ($C$3:$C$9).
  3. Typ (Type) – hodnota 1, hľadáme najväčšiu hodnotu stĺpca B (Vek), ktorá je menšia alebo rovná hľadanému veku.

Záver: Pomocou funkcie MATCH sme získali pozíciu riadku v tabuľke Súťažiaci, ktorý obsahuje najvyšší vek súťažiaceho, ktorý je nižší alebo rovný ako 40 (38 rokov).

match3


Príklad 3

Zadanie: Do bunky $F$3 doplňte pozíciu riadka z tabuľky Súťažiaci, v ktorom sa nachádza najbližší súťažiaci, ktorý je starší alebo rovnako starý ako určený vek v bunke $E$3 (Hľadaný vek).

Riešenie: Tabuľku Súťažiaci zoradíme zostupne podľa stĺpca C (Vek) a zvolíme nasledovné parametre funkcie:

  1. Kritérium vyhľadávania (Search Criterion) – bunka $E$3 obsahujúca hľadaný vek.
  2. Prehľadávané pole (Lookup array) – stĺpec Vek v tabuľke Súťažiaci ($C$3:$C$9).
  3. Typ (Type) – hodnota -1, hľadáme najnižšiu hodnotu stĺpca C (Vek), ktorá je väčšia alebo rovná hľadanému veku.

Záver: Pomocou funkcie MATCH sme získali pozíciu riadku v tabuľke Súťažiaci, ktorý obsahuje najnižší vek súťažiaceho, ktorý je vyšší alebo rovný ako 40 (42 rokov).

match4


Príklad 4

Zadanie: Do bunky $G$3 doplňte pozíciu riadka z tabuľky Súťažiaci, v ktorom sa nachádza súťažiaci s menom zadaným v bunke $E$3 (Hľadané meno) a s vekom zadaným v bunke $F$3 (Hľadaný vek).

Riešenie: Zvolíme nasledovné parametre funkcie:

  1. Kritérium vyhľadávania (Search Criterion) – bunky $E$3 (Hľadané meno) spolu s bunkou $F$3 (Hľadaný vek) spojené pomocou symbolu „&“.
  2. Prehľadávané pole (Lookup array) – stĺpce Meno a Vek v tabuľke Súťažiaci (rozsahy $B$4:$B$11 a $C$4:$C$11) spojené symbolom „&“.
  3. Typ (Type) – hodnota 0, hľadáme presnú zhodu veku.

Záver: Pomocou funkcie MATCH sme získali pozíciu riadku v tabuľke Súťažiaci, ktorý súčasne obsahuje v stĺpci Meno hodnotu Jano a v stĺpci Vek hodnotu 42 rokov.

match5


Referencie


Prílohy

Verzia  Dokument Príklady
1.0  libreoffice writer  libreoffice calc

 


Podobné príspevky