
Příručka aplikace Calc 25.2
Kapitola 9
Použití vzorců a funkcí
Tento dokument je chráněn autorskými právy © 2026 týmem pro dokumentaci LibreOffice. Přispěvatelé jsou uvedeni níže. Dokument lze šířit nebo upravovat za podmínek licence GNU General Public License (https://www.gnu.org/licenses/gpl.html), verze 3 nebo novější, nebo the Creative Commons Attribution License (https://creativecommons.org/licenses/by/4.0/), verze 4.0 nebo novější.
Všechny ochranné známky uvedené v této příručce patří jejich vlastníkům.
|
Olivier Hallot |
Edward Olson |
Vasudev Narayanan |
Mike Kaganski |
|
B. Antonio Fernández |
|
|
|
|
Barbara Duprey |
Jean Hollis Weber |
John A. Smith |
|
Olivier Hallot |
Kees Kriek |
Steve Fanning |
|
Leo Moons |
Gordon Bates |
Felipe Viggiano |
|
Rachel Kartch |
Skip Masonsmith |
B. Antonio Fernández |
Jakékoli připomínky nebo návrhy k tomuto dokumentu prosím směřujte do fóra dokumentačního týmu na adrese https://community.documentfoundation.org/c/documentation/loguides/ (registrace je nutná) nebo pošlete e-mail na adresu: loguides@community.documentfoundation.org.
Poznámka
Vše, co pošlete do fóra, včetně vaší e-mailové adresy a jakýchkoli dalších osobních údajů, které jsou ve zprávě napsány, je veřejně archivováno a nemůže být smazáno. E-maily zaslané do fóra jsou moderovány.
Vydáno v Květen 2025. Založeno na LibreOffice 25.2 Community.
Jiné verze LibreOffice se mohou lišit vzhledem a funkčností.
Některé klávesové zkratky a položky nabídek jsou v systému macOS jiné než v systémech Windows a Linux. V následující tabulce jsou uvedeny nejdůležitější rozdíly, které se týkají informací uvedených v tomto dokumentu. Podrobný seznam nalezneme v nápovědě aplikace a v příloze A (Klávesové zkratky) této příručky.
|
Windows nebo Linux |
Ekvivalent pro macOS |
Akce |
|
Nástroje > Možnosti na hlavní nabídce |
LibreOffice > Předvolby na hlavní nabídce |
Přístup k možnostem nastavení |
|
Klepnutí pravým tlačítkem |
Ctrl+klepnutí a/nebo klepnutí pravým tlačítkem v závislosti na nastavení počítače |
Otevře se místní nabídka |
|
Ctrl nebo Control |
⌘ a/nebo Cmd nebo Command, v závislosti na klávesnici. |
Používá se také s dalšími klávesami. |
|
Alt |
⌥ a/nebo Alt nebo Option v závislosti na klávesnici. |
Používá se také s dalšími klávesami. |
V předchozích kapitolách jsme se zaměřili na zadávání dvou základních typů dat do buněk tabulkového procesoru: čísel a textu. V některých případech však obsah buňky není jednoznačný a závisí na hodnotách v jiných buňkách. K řešení tohoto problému používáme třetí typ dat: vzorce.
Vzorce jsou rovnice, které kombinují čísla a proměnné k výpočtu výsledku. V tabulkových procesorech jsou proměnné odkazy na buňky obsahující data potřebná pro výpočet.
Kromě vzorců nabízejí tabulkové procesory také funkce, což jsou předdefinované výpočty určené k efektivní analýze nebo manipulaci s daty. Po zadání požadovaných vstupů, tzv. argumentů, provede funkce výpočet automaticky. Funkce zjednodušují proces vytváření složitých vzorců a usnadňují dosažení požadovaných výsledků.
Calc počítá a přepočítává data prostřednictvím procesu, který zahrnuje několik klíčových komponent a mechanismů. Zde je přehled toho, jak to obecně funguje:
Sledování závislostí: Při vytváření vzorce v buňce Calc sleduje, které buňky jsou zdrojem vstupu pro tento vzorec. Jedná se o tzv. sledování závislostí. Pokud například buňka A1 obsahuje vzorec, který sčítá hodnoty z A2 a A3, tabulkový procesor ví, že A1 závisí na A2 a A3.
Detekce změny: Pokud jsou data v některé buňce změněna (ručně nebo prostřednictvím jiného vzorce), Calc tuto změnu rozpozná. Na základě stanovených závislostí určí, kterých buněk se tato změna týká (pokud vůbec nějakých).
Spouštění přepočtu: Při zjištění změny spustí Calc přepočet všech dotčených buněk. V závislosti na nastavení a kontextu může být proveden úplný přepočet (aktualizace všech vzorců) nebo částečný přepočet (aktualizace pouze buněk, které závisí na změněných buňkách).
Pořadí výpočtu: Přepočet probíhá v určitém pořadí, obvykle podle řetězce závislostí. Nejprve se vypočítají buňky, které nejsou závislé na ostatních, a poté buňky, které na nich závisí.
Režimy přepočtu:
Automatický přepočet: Jedná se o výchozí režim v aplikaci Calc. Změny vstupních hodnot automaticky vyvolávají přepočty závislých buněk. Zaškrtneme jej v poli Data – Výpočet – Automatický výpočet.
Ruční přepočet: V tomto režimu můžeme ovlivnit, kdy dojde k přepočtu. Po provedení řady změn může uživatel ručně spustit přepočet. Přejdeme na Data – Výpočet – Přepočítat nebo stiskneme F9. Pokud chceme vynutit přepočet všech vzorců v dokumentu, včetně funkcí Add-In a nevolatilních funkcí, použijte Data – Výpočet – Přepočítat ihned nebo stiskneme Ctrl + Shift + F9.
Zobrazení výsledků: Po přepočtu Calc aktualizuje hodnoty v příslušných buňkách na základě aktuálních dat a vzorců. Tyto aktualizované hodnoty můžeme vidět v reálném čase. Výsledky jsou formátovány podle atributů formátu buňky, jako jsou desetinná místa, barva písma a formáty čísel.
Optimalizace výkonu: Pro velké datové sady nebo složité výpočty Calc implementuje různé optimalizační techniky pro urychlení přepočtu. To může zahrnovat ukládání výsledků do mezipaměti nebo použití inteligentnějších algoritmů ke snížení počtu potřebných výpočtů. Například knihovna OpenCL (pokud je v počítači k dispozici) nebo Kahanův sumační algoritmus.
Automatický výpočet je vestavěná funkce aplikace LibreOffice Calc, která zajišťuje okamžitou aktualizaci vzorců při změně hodnot v závislých buňkách. Tato funkce zvyšuje přesnost v reálném čase a snižuje potřebu ručních přepočtů.
Když uživatel upraví buňku, všechny propojené vzorce automaticky aktualizují své hodnoty.
Calc průběžně vyhodnocuje závislosti a zajišťuje, aby všechny dotčené buňky odrážely nejnovější vstupy.
Tento proces je obzvláště užitečný pro dynamické datové soubory, jako jsou finanční modely, sledování zásob nebo živé řídicí panely.
Dopad automatického výpočtu se liší v závislosti na složitosti tabulky.
Kdy je automatický výpočet výhodný:
Finanční modely a řídicí panely: Zajišťuje aktualizace v reálném čase, takže je nepostradatelný pro dynamické tabulky.
Spolupráce a sdílené sešity: Zabraňuje neaktuálnosti dat, pokud hodnoty upravuje více uživatelů současně.
Snížení chybovosti: Snižuje riziko chybných výpočtů v důsledku zastaralých hodnot.
Kdy je užitečné vypnout automatický výpočet
Velké soubory dat a složité vzorce: Neustálé přepočítávání může zpomalit výkon.
Statické zprávy a přehledy: Pokud se data často nemění, mohou ruční přepočty (F9) optimalizovat zdroje.
Správa systémových prostředků: Pomáhá předcházet nadměrnému zatížení procesoru ve složitých finančních modelech.
Vyvážení automatického výpočtu pro efektivitu:
Funkci automatického výpočtu lze povolit nebo zakázat pomocí: Data > Vypočítat > Automatický výpočet.
Alternativně lze stisknutím klávesy F9 provést ruční přepočet, který umožňuje selektivní aktualizace pro lepší kontrolu výkonu.
Ikona na stavovém řádku (přepínač) označuje, kdy je funkce Automatický výpočet vypnutá (1) Chceme-li funkci Automatický výpočet zapnout, klepneme na ikonu .
Obrázek 1: Ikona automatického výpočtu na stavovém řádku

Calc, stejně jako většina ostatních tabulkových procesorů, využívá matematické funkce s plovoucí desetinnou čárkou, které jsou k dispozici na hardwaru. Vzhledem k tomu, že většina současného hardwaru používá binární aritmetiku s plovoucí desetinnou čárkou s omezenou přesností definovanou v normě IEEE 754, nelze mnoho desetinných čísel – včetně tak jednoduchých jako 0,1 – přesně reprezentovat v programu Calc (který interně používá 64bitová čísla s dvojnásobnou přesností). Výpočty s těmito čísly nutně vedou k zaokrouhlovacím chybám, které se s každým výpočtem kumulují.
Nejedná se o chybu, ale o očekávaný jev, kterému se v současné době nelze vyhnout bez použití složitých softwarových výpočtů, které by znamenaly nepřiměřené výkonnostní ztráty, a proto nepřichází v úvahu. S tím je třeba počítat a v případě potřeby použít zaokrouhlování a porovnání s epsilonem.
Například jednoduchý vzorec ve sloupci A:
|
|
A |
|
1 |
31000.99 |
|
2 |
32000.12 |
|
3 |
=A1-A2 |
Výsledkem bude –999,129999999997 v A3 namísto očekávaných –999,13 (možná budeme muset zvětšit zobrazená desetinná místa ve formátu buňky, abychom to viděli).
Pokud v programu Calc nastavujeme více než jednoduchý systém jednoho listu, vyplatí se trochu dopředu plánovat. Nezapomeneme:
Zvolíme správný druh vstupu.
Přiložíme dokumentaci.
Zavedeme systém kontroly chyb.
Výše uvedené body jsou vysvětleny níže.
Mnoho uživatelů vytváří dlouhé a složité vzorce tak, že do nich přímo zadává pevné hodnoty. Například při převodu jedné měny na druhou vyžaduje vzorec aktuální směnný kurz. Předpokládejme, že do buňky C1 zadáme vzorec =0,75*B1 pro výpočet hodnoty v eurech pro částku v dolarech v buňce B1. Pokud se směnný kurz změní z hodnoty 0,75 na jinou hodnotu, je třeba vzorec aktualizovat ručně.
Lepší je použít vstupní buňku pro směnný kurz a odkazovat na ni ve vzorcích. To usnadňuje úpravu výpočtů při změně směnného kurzu. Můžeme například testovat různé scénáře – například směnný kurz 0,70 nebo 0,80 – bez nutnosti upravovat vzorec a je jasné, který kurz se používá.
Rozdělení složitých vzorců na menší, lépe zvládnutelné části (jak je vysvětleno níže) navíc snižuje počet chyb a usnadňuje řešení problémů.
Častým důvodem selhání tabulkových procesorů je nedostatek řádné dokumentace. Mnoho uživatelů začíná s jednoduchým listem, který se postupně vyvíjí v něco mnohem složitějšího. Bez dokumentace se původní účel a metody použité v tabulce často stávají nejasnými a obtížně interpretovatelnými. V takových případech je často jednodušší začít znovu od začátku a promarnit již vynaložené úsilí.
Přidáním komentářů k buňkám a používáním jasných štítků a nadpisů si můžeme usnadnit pochopení a úpravy tabulky – ať už sami, nebo ostatní – a ušetřit tak v budoucnu spoustu času a úsilí.
Při přidávání sloupců dat nebo rozsahů buněk často dochází k chybám kvůli vynechaným buňkám, nesprávným specifikacím rozsahu nebo dvojímu započítání. Pokud chceme tyto problémy minimalizovat, je užitečné zahrnout do tabulek kontroly.
Například při výpočtu součtu sloupce použijeme funkci SUM pro zjištění součtu sloupce. Poté jako ověřovací krok vypočítáme součty řádků v samostatném (netisknoucím) sloupci a sečteme je. Součet součtů řádků by měl odpovídat součtu součtů sloupců. Pokud se tyto dvě hodnoty neshodují, je v datech chyba.
Chceme-li tento proces zjednodušit, můžeme vytvořit vzorec pro výpočet rozdílu mezi oběma součty. Pokud je výsledek nenulový, může automaticky označit chybu (viz 2).
Obrázek 2: Kontrola chyb ve vzorcích

Pro usnadnění vyhledávání problémů se vzorci v tabulce nabízí Calc možnost zobrazení, která vizuálně zvýrazní všechny buňky v listu, které obsahují vzorce. Tato možnost je ve výchozím nastavení zakázána. Chceme-li tuto možnost povolit, přejdeme do Nástroje > Možnosti > LibreOffice Calc > Zobrazení a zaškrtneme možnost Indikátor vzorce a nápověda v oblasti Zobrazení v dialogovém okně. Calc následně nakreslí modrý trojúhelník do levého dolního rohu každé buňky, která obsahuje vzorec. Po najetí ukazatele na trojúhelník se v tipu nástroje zobrazí vzorec v buňce (i když je vybrána jiná buňka).
Obrázek 3: Indikátor vzorce a nápověda

Vzorce můžeme zadávat dvěma způsoby:
Pomocí Průvodce funkcemi nebo v části Funkce na postranním liště.
Psaní přímo do buňky nebo do vstupního řádku.
Každý vzorec musí začínat symbolem =. Při přímém psaní obvykle začínáme vzorec znakem =. Pokud však vzorec začíná znakem + nebo – (například –2*A1), Calc automaticky doplní symbol =.
Mějme na paměti:
Pokud zadáme pouze číslo (například –2 nebo +3), nebude se považovat za vzorec.
Pokud zadání začíná jinak než =, + nebo –, Calc jej interpretuje jako text, nikoli jako vzorec.
Každá buňka v listu může být použita jako nositel dat nebo místo pro výpočet dat. Chceme-li zadat data, jednoduše píšeme do buňky a přesuneme se na další buňku nebo stiskneme Enter. U vzorců znaménko rovná se znamená, že buňka bude použita pro výpočet. Příklad matematického výpočtu typu 15 + 46 je uveden na 4.
Zatímco výpočet vlevo používal pouze jednu buňku, ukázka možností je zobrazena vpravo, kde jsou data umístěna do buněk a výpočet je prováděn pomocí odkazů na buňky. V tomto případě byly buňky B3 a B4 nositeli dat, s buňkou B5, kde byl výpočet proveden. Všimneme si, že vzorec byl zobrazen jako =B3+B4. Znaménko plus znamená, že obsah buněk B3 a B4 se sečte a výsledek je v buňce, kde je zapsán vzorec. Všechny vzorce vycházejí z této koncepce. Další způsoby použití vzorců jsou uvedeny v 1.
Tyto odkazy na buňky umožňují vzorcům používat data odkudkoli na zpracovávaném listu nebo z jakéhokoli jiného listu v otevřeném dokumentu. Pokud by byla potřebná data v různých listech, odkazovala by se na název listu, například =$Sheet2.B12+$Sheet3.A11.
Poznámka
Chceme-li zadat symbol = za jiným účelem, než je vytvoření vzorce, jak je popsáno v této kapitole, zadáme před znak = apostrof nebo jednoduchou uvozovku. Například položka '= znamená různé věci pro různé lidi, Calc považuje za text vše po apostrofu včetně znaménka =.
Obrázek 4: Jednoduchý výpočet

Tabulka 1: Běžné způsoby použití vzorců
|
Vzorec |
Popis |
|
=A1+10 |
Zobrazuje obsah buňky A1 plus 10. |
|
=A1*16% |
Zobrazuje 16 % obsahu A1. |
|
=A1*A2 |
Zobrazuje výsledek vynásobení obsahu A1 a A2. |
|
=ROUND(A1;1) |
Zobrazuje obsah buňky A1 zaokrouhlený na jedno desetinné místo. |
|
=EFFECT(5%;12) |
Vypočítá efektivní úrok pro 5% roční nominální úrok s 12 platbami ročně. |
|
=B8-SUM(B10:B14) |
Vypočítá B8 mínus součet buněk B10 až B14. |
|
=SUM(B8;SUM(B10:B14)) |
Vypočítá součet buněk B10 až B14 a připočte hodnotu B8. |
|
=SUM(B1:B1048576) |
Sečte všechna čísla ve sloupci B. |
|
=AVERAGE(BloodSugar) |
Zobrazuje průměr pojmenované oblasti definované pod názvem BloodSugar. Je také možné stanovit oblasti pro zahrnutí jejich pojmenováním pomocí List > Pojmenované rozsahy a výrazy > Definovat, například BloodSugar představující rozsah B3:B10. |
|
=IF(C31>140, “HIGH”, “OK”) |
Logické funkce mohou být také prováděny tak, jak jsou reprezentovány příkazem IF, který má za následek podmíněnou odpověď na základě dat v identifikované buňce. Pokud je obsah C31 větší než 140, zobrazí se HIGH, jinak se zobrazí OK. |
Lze použít následující typy operátorů:
aritmetické
srovnávací
textu
odkaz
Každý z těchto typů je popsán v následujících kapitolách.
Operátory sčítání, odčítání, násobení a dělení vracejí číselné výsledky. Operátory negace a procenta identifikují charakteristiku čísla nalezeného v buňce, například -37. Příklad pro umocnění ilustruje, jak zadat číslo, které je samo o sobě násobeno, například 2^3 = 2*2*2.
Tabulka 2: Aritmetické operátory
|
Operátor |
Název |
Příklad |
|
+ (plus) |
Sčítání |
=1+1 |
|
– (mínus) |
Odčítání |
=2–1 |
|
– (mínus) |
Negace |
–5 |
|
* (hvězdička) |
Násobení |
=2*2 |
|
/ (lomítko) |
Dělení |
=10/5 |
|
% (procento) |
Procento |
15% |
|
^ (stříška) |
Umocnění |
=2^3 |
Srovnávací operátory se nacházejí ve vzorcích, které používají funkci IF a vracejí buď pravdivou nebo falešnou odpověď; například, =IF(B6>G12;127;0) což, volně přeloženo, znamená, pokud je obsah buňky B6 větší než obsah buňky G12, pak vraťte číslo 127, jinak vraťte číslo 0.
Přímou odpověď PRAVDA nebo NEPRAVDA lze získat zadáním vzorce jako =B6>B12. Pokud jsou čísla nalezená v odkazovaných buňkách přesně reprezentována, je vrácena odpověď PRAVDA, jinak je vrácena NEPRAVDA.
Tabulka 3: Porovnávací operátory
|
Operátor |
Název |
Příklad |
Výsledek (A=4, B=5) |
|
= |
Rovno |
A1=B1 |
FALSE |
|
> |
Větší než |
A1>B1 |
FALSE |
|
< |
Méně než |
A1<B1 |
TRUE |
|
>= |
Větší nebo rovno |
A1>=B1 |
FALSE |
|
<= |
Menší nebo rovno |
A1<=B1 |
TRUE |
|
<> |
Nerovnost |
A1<>B1 |
TRUE |
Pokud buňka A1 obsahuje číselnou hodnotu 4 a buňka B1 obsahuje číselnou hodnotu 5, výše uvedené příklady by přinesly výsledky NEPRAVDA, NEPRAVDA, PRAVDA, NEPRAVDA, PRAVDA a PRAVDA.
Tabulky často obsahují textová data. Aby bylo možné flexibilně zobrazit tato data, lze text z různých buněk nebo zdrojů zkombinovat do jednoho řetězce. Tento proces se nazývá spojení. Můžeme například spojit části textu z různých buněk a vytvořit jednu zprávu nebo popisek. Tento koncept ilustruje 5 .
Obrázek 5: Spojování textu

V tomto příkladu byly konkrétní části textu nalezeny ve třech různých buňkách. Pro spojení těchto segmentů vzorec také obsahuje požadované mezery a interpunkci uzavřenou v uvozovkách, což má za následek vzorec =B2 & " " & C2 & ", " & D2. Výsledkem je zřetězení na datum naformátované v konkrétní posloupnosti.
Všimněme si, že funkci CONCATENATE lze použít ke stejné operaci jako vzorec.
Jednotlivé buňky v tabulkovém procesoru jsou označeny písmenem sloupce (nachází se v horní části sloupců) a číslem řádku (nachází se na levé straně řádků). U tabulkových procesorů, které se čtou zleva doprava, se na levou horní buňku odkazuje jako na A1.
Ačkoli odkaz obvykle ukazuje na jednu buňku, může se také vztahovat na rozsah buněk v obdélníku (např. A1:B5) nebo dokonce na rozsah krychlí v 3D referencích napříč listy. Odkazy mohou zahrnovat také seznamy nesouvislých buněk nebo rozsahů. Pro vytvoření těchto složitějších odkazů se používají operátory odkazů.
Operátor oblasti je zapsán jako dvojtečka. Výraz používající operátor rozsahu má následující syntaxi:
referenční horní levý: referenční dolní pravý
Operátor oblasti sestavuje odkaz na nejmenší oblast zahrnující jak buňky odkazované na levý odkaz, tak buňky odkazované na pravý odkaz.
V levém horním rohu 6 je zobrazen odkaz A1:D12, který odpovídá buňkám zahrnutým do operace tažení myší pro zvýraznění rozsahu.
Obrázek 6: Referenční operátor oblasti

Tabulka 4: Příklady operátoru referenčního rozsahu
|
Příklad |
Popis |
|
A2:B4 |
Odkaz na obdélníkovou oblast se 6 buňkami, širokou 2 sloupce × 3 řádky na výšku. Pokud klepneme ve vstupním řádku na referenci ve vzorci, ohraničení označuje obdélník. |
|
(A2:B4):C9 |
Odkaz na oblast tvaru obdélníku s buňkou A2 vlevo nahoře a buňkou C9 vpravo dole. Oblast tedy obsahuje 24 buněk, 3 sloupce širokou × 8 řádků vysokou. Tento způsob adresování rozšiřuje počáteční rozsah z A2:B4 na A2:C9. |
|
Sheet1.A3:Sheet3.D4 |
Odkaz na kvádrovou oblast s 24 buňkami, o šířce 4 sloupců × 2 řádky × hloubkou 3 listů. (Předpokládáme, že se listy Sheet1, Sheet2 a Sheet3 zobrazují v tomto pořadí v oblasti Karty listů.) |
|
B:B |
Odkaz na všechny buňky sloupce B. |
|
A:D |
Odkaz na všechny buňky sloupců A až D. |
|
20:20 |
Odkaz na všechny buňky v řádku 20. |
|
1:20 |
Odkaz na všechny buňky z řádků 1 až 20. |
Pokud přímo vložíme B4:A2, B2:A4 nebo A4:B2, Calc změní rozsah na A2:B4. Levá horní buňka oblasti je tedy vlevo od dvojtečky a pravá dolní buňka vpravo od dvojtečky. Pokud ale pojmenujeme buňku B4 například pomocí _start a A2 názvem _end, můžeme použít _start: _end bez jakékoli chyby. Další informace o pojmenování buněk najdeme v části „Pojmenované oblasti“. below.
Operátor zřetězení je psán jako vlnovka. Výraz používající operátor zřetězení má následující syntaxi:
levá reference ~ pravá reference
Výsledkem takového výrazu je seznam referencí, který je uspořádaným seznamem odkazů. Některé funkce mohou vzít referenční seznam jako argument, například SUM, MAX nebo INDEX.
Referenční zřetězení se někdy nazývá 'union'. Nejedná se však o spojení těchto dvou sad 'levá reference' a 'pravá reference', jak je obvykle chápáno v teorii množin. COUNT(A1:C3~B2:D2) vrátí 12 (= 9+3), ale má pouze 10 buněk, pokud je považováno za spojení dvou sad buněk.
Všimněme si, že SUM(A1:C3,B2:D2) se liší od SUM(A1:C3~B2:D2) ačkoli dávají stejný výsledek. První je volání funkce se 2 parametry, z nichž každý je odkazem na oblast. Druhý je volání funkce s 1 parametrem, což je seznam referencí.
Referenční zřetězení platí také pro celé řádky a celé sloupce. Například SUM(A:B~D:D) je součet všech buněk ve sloupcích A a B a sloupci D.
Operátor průniku je psán jako vykřičník. Výraz používající operátor průniku má následující syntaxi:
reference vlevo ! reference vpravo
Pokud reference odkazují na jednotlivé oblasti, výsledkem je odkaz na jedinou oblast obsahující všechny buňky, které jsou jak v levé referenci, tak v pravé referenci.
Pokud jsou referencí seznamy odkazů, je každá položka z levého seznamu protnuta s každou z pravého seznamu (průnik) a tyto výsledky jsou spojeny do seznamu referencí. Pořadí je první průnik první položky zleva se všemi položkami zprava, poté průnik druhé položky zleva se všemi položkami zprava a tak dále.
Příklady
A2:B4 ! B3:D6
Výsledek je reference na oblast B3:B4, protože tyto buňky jsou uvnitř A2:B4 a uvnitř B3:D6. To je znázorněno na 7, kde buňky v rozsahu A2:B4 mají oranžové pozadí a buňky v rozsahu B3:D6 mají silné černé okraje. Buňky, které mají oranžové pozadí i tlustý černý okraj (B3:B4), tvoří průnik těchto dvou oblastí.
Obrázek 7: Jednoduchý příklad operátoru průniku referencí

(A2:B4~B1:C2) ! (B2:C6~C1:D3)
Nejprve jsou počítány průniky A2:B4!B2:C6, A2:B4!C1:D3, B1:C2!B2:C6, a B1:C2!C1:D3. Výsledkem je B2:B4, prázdný, B2:C2, a C1:C2. Poté jsou tyto výsledky zřetězeny, zahodí se prázdné části. Konečným výsledkem je tedy referenční seznam B2:B4 ~ B2:C2 ~ C1:C2.
A:B ! 10:10
Tím se vypočítá průsečík sloupců A a B s řádkem 10, tedy se vyberou A10 a B10.
Operátor průniku můžeme použít k odkazu na buňku v křížení sloupce a řádku. Pokud máme sloupce označené 'Teplota' a 'Srážky' a řádky označené 'leden', 'únor', 'březen' atd., poté následující výraz
'únor' ! 'Teplota'
bude odkazovat na buňku obsahující teplotu v únoru. Správné fungování tohoto výrazu předpokládá, že je povolena volba Automaticky najít popisky sloupců a řádků v dialogovém okně Nástroje > Možnosti > LibreOffice Calc > Vypočítat. Výraz je ekvivalentní výrazu 3:3 ! B:B za předpokladu, že údaje za únor jsou v řádku 3, zatímco údaje o teplotě jsou ve sloupci B.
Operátor průniku (!) má vyšší prioritu než operátor zřetězení (~), ale nespoléhejme se na to.
Tip
Část, která má být vypočtena jako první, vždy uvádíme v závorce.
Odkazy jsou způsob, jakým odkazujeme na umístění konkrétní buňky v Calc a mohou být buď relativní (k aktuální buňce) nebo absolutní (pevná oblast).
Na příkladu relativního odkazu si ukážeme rozdíl mezi relativním a absolutním odkazem pomocí tabulky z 8.
Zadáme čísla 4 a 11 do buněk C3 a C4 tabulky.
Zkopírujeme vzorec v buňce B5 (=B3+B4) do buňky C5. To lze provést pomocí jednoduché kopie a vložení nebo klepnutím a přetažením B5 na C5, jak je ukázáno níže. Vzorec v B5 vypočítá součet hodnot ve dvou buňkách B3 a B4.
Klepneme do buňky C5. Lišta vzorců ukazuje =C3+C4 místo =B3+B4 a hodnota v C5 je 15, součet 4 a 11, což jsou hodnoty v C3 a C4.
V buňce B5 jsou odkazy na buňky B3 a B4 relativní odkazy. To znamená, že program Calc interpretuje vzorec v B5, aplikuje jej na buňky ve sloupci B a výsledek umístí do buňky, ve kterém je vzorec. Když jsme zkopírovali vzorec do jiné buňky, byl stejný postup použit pro výpočet hodnoty, která se má do dané buňky vložit. Tentokrát se vzorec v buňce C5 odkazoval na buňky C3 a C4.
Obrázek 8: Relativní odkazy

Relativní adresu můžeme považovat za dvojici odchylek k aktuální buňce. Buňka B1 je 1 sloupec nalevo od buňky C5 a 4 řádky výše. Adresa může být zapsána jako R[-4]C[-1].
Kdykoli zkopírujeme tento vzorec z buňky B5 do jiné buňky, výsledkem bude vždy součet dvou čísel ze dvou buněk, které jsou jeden a dva řádky nad buňkou obsahující vzorec.
Relativní adresování je výchozí metoda odkazování na adresy v programu Calc.
Možná budeme chtít znásobit sloupec čísel pevnou částkou. Sloupec čísel může zobrazovat částky v amerických dolarech. Pro převod těchto částek na eura je nutné vynásobit každou částku dolaru směnným kurzem. USD 10,00 se vynásobí 0,75 a převede na eura, v tomto případě EUR 7,50. Následující příklad ukazuje, jak zadat směnný kurz a použít tento kurz k převodu částek ve sloupci z USD na eura.
Zadáme směnný kurz EUR:USD (0,75) do buňky D1. Zadáme částky (v USD) do buněk D2, D3 a D4, například 10, 20 a 30.
Do buňky E2 zadáme vzorec =D2*D1. Výsledek je 7,5, zobrazen správně.
Zkopírujeme vzorec v buňce E2 do buňky E3. Výsledek je 200, zcela špatně! Program Calc zkopíroval vzorec pomocí relativního adresování: vzorec v E3 je =D3*D2 a ne to, co chceme, což je =D3*D1.
V buňce E2 upravíme vzorec na =D2*$D$1. Zkopírujeme jej do buněk E3 a E4. Výsledky jsou nyní správně 15 a 22,5.
Znaky $ před D a 1 převádějí odkaz na buňku D1 z relativního na absolutní nebo pevný. Pokud je vzorec zkopírován do jiné buňky, druhá část bude vždy zobrazovat $D$1. Interpretace tohoto vzorce je „vezměte hodnotu v buňce jeden sloupec doleva ve stejném řádku a vynásobte ji hodnotou v buňce D1“.
Obrázek 9: Absolutní odkazy

Odkazy na buňky lze zobrazit čtyřmi způsoby, které jsou zobrazeny v 5.
Tabulka 5: Typy odkazu na buňku
|
Odkaz |
Vysvětlení |
|
D1 |
Relativní, od buňky E3 je to buňka o jeden sloupec vlevo a dva řádky nad ní |
|
$D$1 |
Absolutní, je to buňka D1 |
|
$D1 |
Částečně absolutní, z buňky E3 je to buňka ve sloupci D a o dva řádky výše |
|
D$1 |
Částečně absolutní, z buňky E3 je to buňka o jeden sloupec vlevo a v řádku 1 |
Tip
Chceme-li změnit odkazy ve vzorcích, zvýrazníme buňku a stiskneme F4 pro změnu mezi čtyřmi typy odkazů. Chceme-li měnit pouze část vzorce, vybereme buňky a v pruhu vzorců provádíme změnu pomocí F4. Výběr možnosti nabídky List > Měnit typ odkazu na buňku je ekvivalentní stisknutí klávesy F4.
Znalost použití relativních a absolutních odkazů je nezbytná, pokud chceme kopírovat a vkládat vzorce a propojovat tabulky.
Jednotlivým buňkám nebo oblastem buněk můžeme přiřadit názvy, abychom zlepšili čitelnost vzorců a zjednodušili správu tabulek. Například místo vzorce =SUM(B1:B10) pro součet vah v oblasti B1:B10 můžeme tento rozsah pojmenovat "Váha" a vzorec zapsat jako =SUM(Váha). Vzorce jsou tak intuitivnější a srozumitelnější.
Další výhodou pojmenovaných oblastí je, že se dynamicky aktualizují ve všech přidružených vzorcích, když se změní umístění nebo velikost oblasti. Pokud se například oblast "Hmotnost" přesune na P10:P30, stačí aktualizovat definici pojmenované oblasti. Vzorce odkazující na "Hmotnost" se automaticky upraví bez dalších změn.
Definování pojmenované buňky nebo oblasti:
Vybereme buňku nebo oblast.
V nabídce přejdeme na List > Pojmenované oblasti a výrazy > Definovat.
V dialogovém okně (jak je znázorněno na obrázku 9) zadáme název a rozsah pojmenované oblasti.
Obrázek 10: Dialogové okno Definovat název

Tip
Pojmenovanou oblast můžeme definovat také přímo v listu tak, že vybereme oblast a zadáme jeho název do pole Název v levé části panelu vzorců (11).
Obrázek 11: Vložení názvu do pole oblast pro definování pojmenované oblasti

Chceme-li rychle získat přístup k pojmenované oblasti, vybereme pojmenovanou oblast v rozevíracím seznamu Pole názvu. Pojmenovaná oblast se zobrazí na obrazovce a je vybrána.
Obrázek 12: Dialogové okno Správa názvů

Chceme-li upravit pojmenovaný rozsah, použijeme dialogové okno Správa názvů (12). K tomuto dialogu se dostaneme výběrem List > Pojmenované oblasti a výrazy > Spravovat z hlavní nabídky nebo stisknutím Ctrl + F3.
Dlouhý nebo složitý vzorec můžeme také pojmenovat. Chceme-li vzorec pojmenovat, otevřeme dialogové okno Definovat název (10) a do pole Oblast nebo vzorec zadáme výraz vzorce. Pojmenujeme výraz a klepneme na Přidat.
Předpokládejme například, že v buňkách C1 až C10 musíme spočítat obvod sady kruhů a jejich poloměr je uveden v B1 až B10. Definujeme pojmenovaný výraz OBVODKRUHU, s výrazem =2*PI()*B1 a klepneme na Přidat, čímž zavřeme dialog. Do buňky C1 zadáme =OBVODKRUHU a stiskneme Enter. Vzorec je aplikován na buňku C1. Zkopírujeme buňku C1 a vložíme ji do zbývajících buněk od C2 do C10 a máme obvody všech kruhů. Všechny buňky v rozsahu C1:C10 mají výraz =OBVODKRUHU.
Pojmenovaný výraz používá stejná pravidla pro adresování buněk, tj. absolutní a relativní odkazy.
Pořadí výpočtu označuje pořadí, v jakém jsou operace ve vzorci prováděny. Přehled těchto pravidel najdeme v článku o operačních řádech na Wikipedii na adrese https://en.wikipedia.org/wiki/Order_of_operations .
V tabulkových procesorech se dělení a násobení provádí před sčítáním a odčítáním. Častým omylem je představa, že výpočty probíhají striktně zleva doprava, jako když čteme rovnici v angličtině. Calc však vyhodnocuje celý vzorec na základě zavedených pravidel priority a upřednostňuje násobení a dělení před sčítáním a odčítáním.
Abychom se ujistili, že váš vzorec poskytuje očekávaný výsledek, je dobré jej důkladně otestovat. V případě potřeby použijeme závorky, abychom objasnili pořadí operací a vyjádřili svůj záměr. Následující příklad ukazuje, jak se pořadí výpočtu uplatňuje v praxi.
Tabulka 6: Pořadí výpočtu
|
Výpočet zleva doprava |
Pořadí výpočtu |
|
1+3*2+3 = 11 1+3 = 4, poté 4×2 = 8, poté 8+3 = 11 |
=1+3*2+3 výsledek 10 3*2 = 6, poté 1+6+3 = 10 |
|
Dalším možným záměrem by mohlo být: 1+3*2+3 = 20 1+3 = 4, poté 2+3 = 5, poté 4×5=20 |
Program řeší násobení 3 × 2 před zpracováním dalších čísel. |
Pokud chceme, aby výsledek byl jedním z dvou možných řešení vlevo, zadáme vzorec takto:
|
((1+3) * 2)+3 = 11 |
(1+3) * (2+3) = 20 |
Poznámka
pro seskupení operací v pořadí, které zamýšlíme použijeme závorky. Například =B4+G12*C4/M12 se může stát =((B4+G12)*C4)/M12.
Calc umožňuje propojit data na více listech v rámci tabulky, což z něj činí výkonný nástroj pro organizaci a odkazování na informace. Abychom usnadnili orientaci v tabulce, přiřadíme listům smysluplné názvy, například "Mzdy" nebo "Prodej v Boise", namísto výchozích názvů, jako je "List1".
Funkci SHEET() lze použít k vrácení pozice aktuálního listu v pořadí listů. Pokud máme například více listů s názvy List1, List2 atd., číslovaných zleva doprava, přetažením listu na nové místo se aktualizuje jeho pozice a funkce SHEET() zohlední nové pořadí.
Ve výchozím nastavení obsahuje nová instance aplikace Calc pouze jeden list, ale pro efektivní uspořádání dat můžeme listy přidávat, přejmenovávat a měnit jejich uspořádání.
Pokud je například vzorec =SHEET() vložen do A1 na List1, vrátí hodnotu 1. Pokud přetáhneme List1 na umístění mezi listy 2 a 3, hodnota se změní na 2. Nyní je to druhý list v pořadí.
Příklad výpočtů získávajících data z jiné oblasti lze vidět v podnikovém prostředí, kde podnik kombinuje výnosy a náklady každé ze svých poboček do jediného kombinovaného listu. Viz 13 16.
Obrázek 13: List obsahující údaje pro pobočku 1

Obrázek 14: List obsahující údaje pro pobočku 2

Obrázek 15: List obsahující údaje pro pobočku 3

Obrázek 16: List obsahující kombinovaná data pro všechny pobočky

Listy byly vytvořeny se stejnými strukturami. Nejjednodušší způsob, jak toho dosáhnout, je otevřít novou tabulku, nastavit první list pobočky, zadat data, naformátovat buňky a připravit vzorce pro různé součty řádků a sloupců. Poté vytvoříme kopie prvního listu následujícím způsobem:
Klepneme pravým tlačítkem na název listu a vybereme Přejmenovat list. Zadáme Filiálka 1. Klepneme pravým tlačítkem myši znovu na list a vybereme Přesunout nebo kopírovat list.
V dialogovém okně Přesunout/kopírovat list (17) vybereme volbu Kopírovat (je automaticky vybrána, pokud je v tabulce pouze jeden list) a zvolíme -přesunout na konec- v sekci Vložit před. Změníme název v poli Nový název na Filiálka 2. Klikneme na tlačítko Kopírovat. Stejným způsobem vytvoříme listy Filiálka 3 a Souhrn.
Obrázek 17: Kopírování listu

Do příslušných listů zadáme údaje pro filiálku 2 a filiálku 3. Každý samostatný list uvádí výsledky pro jednotlivé pobočky.
V listu Souhrn klepneme na buňku K7. Zadáme =, klepneme na list Filiálka 1, klepneme na buňku K7, zmáčkneme +, opakujeme to pro listy Filiálka 2 a Filiálka 3 a poté stiskneme Enter. Nyní máme vzorec v buňce K7, který obsahuje příjmy z prodeje zeleně pro tři filiálky.
Obrázek 18: List Souhrn zobrazující propojení mezi listy poboček

Zkopírujeme vzorec, vybereme oblast K7:N17, v hlavní nabídce zvolíme Úpravy > Vložit jinak > Vložit jinak nebo klepneme pravým tlačítkem a z místní nabídky vybereme Vložit jinak > Vložit jinak nebo zmáčkneme Ctrl + Shift + V. V dialogu zrušíme výběr voleb Vložit vše a Formáty v části Vložit, zaškrtneme v ní všechny ostatní volby a klepneme na OK. Zobrazí se následující zpráva:
Obrázek 19: Propojení listů: vložení vzorce do oblasti buněk

Klepneme na Ano. Nyní jsme zkopírovali vzorce do každé buňky při zachování formátu nastaveného v původním listu. V tomto příkladu bychom samozřejmě měli upravit list odstraněním nul v řádcích bez formátování.
Obrázek 20: Propojení listů: Kopírovat / Vložit jinak z K7:N17

K provedení propojení lze také použít Průvodce funkcí. Použití tohoto průvodce je podrobně popsáno v části „Používání Průvodce funkcí“ na straně 1.
Calc obsahuje více než 500 vestavěných funkcí, které vám pomohou analyzovat data a odkazovat na ně. Mnoho z těchto funkcí se používá s čísly, ale jiné se používají s datumy a časy nebo dokonce s textem. Funkce může být stejně jednoduchá jako sčítání dvou čísel nebo nalezení průměru seznamu čísel, nebo může být stejně složitá jako výpočet standardní odchylky vzorku nebo hyperbolického tangens čísla.
Název funkce je obvykle zkrácený popis toho, co funkce dělá. Například funkce FV dává budoucí hodnotu investice (angl. future value), zatímco BIN2HEX převádí binární číslo na hexadecimální číslo. V programu Calc lze názvy funkcí zadávat velkými či malými písmeny nebo je kombinovat.
Několik základních funkcí je poněkud podobných operátorům. Příklady:
|
+ (plus) |
Tento operátor sčítá dvě čísla dohromady. SUM() na druhé straně sčítá skupiny sousedících oblastí čísel. |
|
* (hvězda) |
Tento operátor vynásobí dvě čísla dohromady. PRODUCT() dělá totéž pro násobení, jako SUM() pro sčítání. |
Každá funkce má řadu argumentů použitých ve výpočtech. Tyto argumenty mohou nebo nemusí mít svůj vlastní název. Vaším úkolem je zadat argumenty potřebné ke spuštění funkce. V některých případech mají argumenty předdefinované volby a možná je budeme muset najít v popiscích Průvodce funkcí, na kartě funkcí nebo v nápovědě. Častěji je však argumentem hodnota, kterou zadáme ručně, nebo hodnota již zadaná v buňce nebo rozsahu buněk v tabulce. V programu Calc můžeme zadat hodnoty z jiných buněk zadáním jejich názvu nebo oblasti, nebo – na rozdíl od některých tabulkových procesorů – výběrem buněk myší. Pokud se hodnoty v buňkách změní, bude výsledek funkce automaticky aktualizován.
Tip
Další podrobnosti o jednotlivých dostupných funkcích najdeme v oblasti Calc Functions na The Document Foundation Wiki na adrese https://wiki.documentfoundation.org/Documentation/Calc_Functions. Tyto stránky wiki nedávno rozšířily dostupnou dokumentaci a jsou neustále vylepšovány.
Pro mnoho funkcí Calc následuje standard OpenFormula definovaný v části 2 (Recalculated Formula (OpenFormula) Format) formátu Open Document Format for Office Applications (OpenDocument) verze 1.2. Tento standard je přístupný na webu OASIS (https://www.oasis-open.org/) nebo webové stránce ISO (https://www.iso.org/standard/66375.html). Obecná podpora OpenFormula v programu Calc poskytuje kompatibilitu s funkční sadou jakéhokoli jiného tabulkového procesoru, který dodržuje stejný standard. (V programu Calc jsou některé funkce, které nejsou v souladu s OpenFormula, ale mnoho z nich je zahrnuto především pro zlepšení výměny souborů mezi Calc a Microsoft Excel.)
Calc dokáže otevřít tabulky vytvořené pomocí mnoha různých aplikací a navzdory rozdílům v aplikacích dokáže tabulky ukládat v mnoha různých formátech.
Například volání funkce CEILING aplikace Excel se po otevření souboru aplikace Excel v aplikaci Calc převede na funkci CEILING.XCL. Podobně se volání funkce FLOOR programu Calc automaticky převede na funkci FLOOR.MATH programu Excel, když je soubor uložen v programu Calc.
Wiki nadace Document Foundation nabízí srovnání funkcí LibreOffice a Microsoft Office, které si můžeme prohlédnout zde. Podle tohoto srovnání nabízí Calc v současné době 508 diskrétních funkcí. Pouze 30 z nich je jedinečných pro Calc, zatímco ostatní mají obdobu v aplikaci Microsoft Excel. To naznačuje vysokou míru shody mezi sadami funkcí Calcu a Excelu, což umožňuje zaměnitelnost mnoha funkcí, a tím i lepší interoperabilitu.
V některých případech může funkce Calc poskytnout výsledek, který je v souladu s mezinárodními standardy, ale liší se od výsledku poskytnutého ekvivalentní funkcí aplikace Excel. V takových případech Calc často obsahuje podobně pojmenovanou funkci s modifikátorem (například „_ADD“ nebo „_EXCEL2003“), která poskytuje stejný výsledek jako funkce Excelu.
Všechny funkce tabulkového procesoru mají podobnou strukturu. Použití nástrojů, jako je Průvodce funkcí, může zjednodušit zadávání funkcí, ale pochopení jejich struktury je cenné pro řešení problémů.
Zde je příklad funkce pro počítání buněk odpovídajících určitým kritériím:
=DCOUNT(Databáze, Pole databáze, Kritéria hledání)
Klíčové body týkající se funkční struktury:
Funkce jsou součástí vzorců: Funkce nemůže být samostatná. Vždy musí být součástí vzorce, který začíná znaménkem =. I když je funkce celým vzorcem, je vyžadováno znaménko =.
Název funkce: Funkce začíná svým názvem, například DCOUNT ve výše uvedeném příkladu.
Argumenty: Za názvem funkce jsou v závorkách umístěny požadované vstupy (argumenty) oddělené čárkami.
O argumentech:
Funkce mohou přijímat až 255 argumentů.
Argumenty mohou být:
Čísla
Jednotlivé buňky
Pojmenované oblasti, oblasti nebo pole (obsahující více nebo dokonce stovky buněk).
Typ a formát argumentů závisí na konkrétní funkci. Podrobnosti o zadávání argumentů podle požadavků funkce najdeme v 7 .
Tabulka 7: Zadávání argumentů funkce
|
Argument |
Popis |
|
"textová data" |
Uvozovky označují, že se zadává text nebo řetězcová data. |
|
9 |
Číslo devět zadáno jako číslo. |
|
"9" |
Číslo devět zadáno jako text. |
|
A1 |
Adresa čehokoliv, co je zadáno v buňce A1. |
|
B2:D9 |
Zadána oblast buněk. |
|
EMEA_Sales |
Pojmenovaná oblast, předem definovaná. |
Funkce lze také použít jako argumenty v rámci jiných funkcí. Tyto funkce se nazývají vnořené funkce.
=SUM(2;PRODUCT(5;7))
Chceme-li získat představu o tom, co mohou vnořené funkce dělat, představme si, že navrhujeme samořízený výukový modul. Během modulu studenti dělají tři kvízy a výsledky zadávají do buněk A1, A2 a A3. V A4 můžeme vytvořit vnořený vzorec, který začíná průměrováním výsledků kvízů s vzorcem =AVERAGE(A1:A3). Vzorec poté pomocí funkce IF dává studentovi zpětnou vazbu, která závisí na průměrném ohodnocení kvízů. Celý vzorec by zněl:
=IF(AVERAGE(A1:A3)>85, „Gratulujeme! Jste připraveni postoupit k dalšímu modulu ";" Neúspěšně. Zkontrolujte prosím materiál znovu. V případě potřeby kontaktujte svého instruktora.“)
V závislosti na průměru obdrží student zprávu s blahopřáním nebo vyjádřením neúspěchu.
Všimněme si, že vnořený vzorec pro průměr nevyžaduje své vlastní znaménko rovnosti. Jeden na začátku rovnice je dostačující pro oba vzorce.
Pokud jsme v tabulkových procesorech nováčkem, nejlepší způsob, jak přemýšlet o funkcích, je skriptovací jazyk. Pro snadné vysvětlení konceptu jsme použili jednoduché příklady, ale pomocí vnoření funkcí se může vzorec v Calcu rychle stát složitým.
Poznámka
Calc zobrazuje syntaxi vzorce v bublinové nápovědě vedle buňky jako užitečnou paměťovou pomůcku při psaní.
Spolehlivější metodou je použití karty Funkce na postranní liště (21), přístupné volbou Zobrazit > Seznam funkcí nebo, pokud je postranní lišta zobrazena, klepnutím na ikonu Funkce v seznamu záložek na pravé straně lišty.
Calc nabízí mnoho funkcí a balíček Funkce umožňuje vyhledávání. Při psaní do vyhledávacího pole v horní části balíčku se seznam funkcí zužuje po každém vloženém znaku.
Obrázek 21: Karta Funkce v postranní liště

Karta Funkce obsahuje stručný popis každé funkce a jejích argumentů. Pro zobrazení popisu vybereme funkci a podíváme se do dolní části panelu. V případě potřeby najedeme ukazatelem myši na rozdělení mezi seznamem a popisem; jakmile se z ukazatele stane dvouhlavá šipka, táhneme ji nahoru, abychom zvětšili prostor pro popis. Poklepáním na název funkce ji přidáme do aktuální buňky spolu se zástupnými symboly pro každý z argumentů funkce.
Použití karty Funkce je téměř stejně rychlé jako ruční zadání a její výhodou je, že si nemusíme pamatovat vzorec, který chceme použít. Teoreticky by to mělo být také méně náchylné k chybám. V praxi však může být pro některé uživatele obtížné nahrazovat zástupné symboly hodnotami. Další funkcí je schopnost zobrazit poslední použité vzorce.
Nejčastěji používaným způsobem zadávání je Průvodce funkcí (22). Chceme-li jej otevřít, zvolíme Vložit > Funkce nebo klepneme na ikonu Průvodce funkcemi na liště funkcí, nebo stiskneme Ctrl + F2. Průvodce funkcemi poskytuje stejné funkce nápovědy jako karta Funkce, ale přidává pole, ve kterých můžeme vidět výsledek dokončené funkce, jakož i výsledek jakéhokoli většího vzorce, jehož je součástí.
Obrázek 22: Karta Funkce v Průvodci funkcemi

Chceme-li vybrat funkci podle názvu, zadáme název do vyhledávacího pole. Zaškrtnutím políčka Podobné se zobrazí funkce s názvy, které se částečně shodují s hledaným výrazem (22). Chceme-li procházet, vybereme kategorii funkcí, aby se seznam zkrátil, pak procházíme pojmenované funkce a vybereme jednu z nich dvojklikem. Dostupné kategorie v Průvodci funkcemi a počet funkcí dostupných v každé kategorii jsou uvedeny v 8. Po výběru funkce se na pravé straně dialogu zobrazí její popis.
Tabulka 8: Kategorie funkcí v Průvodci funkcí
|
Kategorie |
Počet funkcí podle kategorií |
|
Doplňky |
48 |
|
Matice |
15 |
|
Databáze |
12 |
|
Datum a čas |
36 |
|
Finanční |
63 |
|
Informace |
21 |
|
Logické |
11 |
|
Matematické |
82 |
|
Sešit |
22 |
|
Statistické |
151 |
|
Text |
47 |
Průvodce nyní zobrazí oblast vpravo, kde můžeme ručně zadat data do textových polí nebo kliknout na tlačítko Zmenšit, čímž se zmenší průvodce a můžeme vybrat buňky z listu.
Obrázek 23: Průvodce funkcí po zmenšení

Chceme-li vybrat buňky, klepneme buď přímo na buňku, nebo podržíme levé tlačítko myši a tažením vybereme požadovanou oblast.
Po výběru oblasti klepneme na ikonu Rozvinout a znovu se vrátíme do průvodce.
Pokud potřebujeme více argumentů, klepneme do dalšího textového pole a zopakujeme proces výběru pro další buňku nebo oblast buněk. Tento postup opakujeme podle potřeby. Průvodce umožní až 255 oblastí nebo argumentů ve funkci SUM.
Klepnutím na tlačítko OK potvrdíme funkci, vložíme ji do buňky a dostaneme výsledek.
Poznámka
Pokud vybereme funkci dvojitým klepnutím v seznamu a poté změníme názor a vybereme jinou dvojitým kliknutím znovu, přidá se vzorec druhé volby do vzorce první volby v textovém poli Vzorec. Musíte vymazat textové pole Vzorec a potom poklepáním na funkci přidat do pole.
Toto doplňování vzorců umožňuje vytvářet složité vzorce jejich sestavováním v textovém poli Vzorec.
Můžeme také vybrat kartu Struktura, kde uvidíme stromové zobrazení částí vzorce. Hlavní výhoda oproti kartě Funkce je, že každý argument se vkládá do svého vlastního pole, což usnadňuje správu. Cena této spolehlivosti je pomalejší zadávání, ale při vytváření sešitu je přesnost obecně důležitější než rychlost.
Zobrazení struktury vzorce v průvodci je důležité pro ladění a opravu velmi dlouhých, vnořených a složitých vzorců. V tomto pohledu je vzorec analyzován a každá složka vzorce je vypočítána jednodušším vyvoláním funkce nebo aritmetickou operací a poté je zkombinována podle pravidel výpočtu. Je možné vizualizovat každý analyzovaný prvek vzorce a zkontrolovat, zda jsou mezilehlé výsledky správné, dokud není nalezena chyba.
Funkce lze zadat do vstupního řádku. Po zadání funkce na vstupní řádce stiskneme klávesu Enter nebo klepneme na tlačítko Přijmout na liště vzorců. Tím se funkce přidá do buňky a získáme její výsledek.
Obrázek 24: Lišta vzorců

|
1 |
Pole Název zobrazující seznam běžných funkcí |
|
||
|
2 |
Průvodce funkcí |
4 |
Přijmout |
|
|
3 |
Zrušit |
5 |
Vstupní řádek |
|
Pokud vidíme v buňce místo výsledku vzorec, pak je vybrána volba Vzorce v sekci Zobrazení dialogového okna Nástroje > Možnosti > LibreOffice Calc > Zobrazit. Zrušíme výběr Vzorce a zobrazí se výsledek. Stále však můžeme vidět vzorec ve vstupním řádku.
Tip
Možnost nabídky Zobrazit > Zobrazit vzorec a klávesová zkratka v Linuxu/Windows Ctrl + ` (obrácená čárka) také zapíná a vypíná zobrazení vzorce.
Vzorec, ve kterém se vyhodnocují jednotlivé hodnoty v oblasti buněk, se označuje jako maticový vzorec. Rozdíl mezi maticovým vzorcem a jinými vzorci je v tom, že maticový vzorec pracuje s několika hodnotami najednou namísto pouze jedné.
Nejenže maticový vzorec zpracovává několik hodnot najednou, ale také může vícero hodnot najednou vrátit Výsledek maticového vzorce je také matice.
Když program Calc aktualizuje vzorce, každá ovlivněná buňka se načte a její vzorec se přepočítá. Pokud máme ve sloupci se stejným vzorcem tisíc buněk (výraz vzorce pouze změní data, která se mají vypočítat), znamená to interpretaci a provedení tisíce stejných vzorců.
Maticové vzorce vyhodnotí vzorec jednou a provedou výpočty tolikrát, kolikrát je velikost pole, čímž se ušetří čas potřebný k interpretaci každého vzorce v buňce. A protože program Calc ukládá pouze jeden vzorec pro celé pole datových buněk, šetří také místo v souboru sešitu.
Obrázek 25: Zdrojové pole (žlutá), výsledné pole (zelená), se vzorcem pole v Liště vzorců

Chceme-li ve výše uvedeném poli vynásobit hodnoty v jednotlivých buňkách 10 (25), nemusíme na každou buňku nebo hodnotu použít vzorec. Místo toho stačí použít jeden maticový vzorec. Vybereme rozsah 3 x 5 buněk v jiné části tabulky, zadáme vzorec =10*A1:C5 a tento zápis potvrdíme kombinací kláves Ctrl + Shift + Enter. Výsledkem je pole 3 × 5, ve kterém jsou jednotlivé hodnoty v rozsahu buněk (A1:C5) vynásobeny číslem 10.
Kromě násobení můžeme v referenční oblasti (pole) použít také další operátory. Můžeme sčítat (+), odečítat (-), násobit (*), dělit (/), použít exponenty (^), zřetězení (&) a porovnání (=, <>, <, >, <=, >=). Pokud byl zadán maticový vzorec lze použít operátory pro každou jednotlivou hodnotu v oblasti buněk a vrátit výsledek jako pole.
Operátory porovnání v maticovém vzorci zpracovávají prázdné buňky stejným způsobem jako v normálním vzorci, tj. buď jako nula, nebo jako prázdný řetězec. Pokud jsou například buňky A1 a A2 prázdné, maticové vzorce {=A1:A2=""} a {=A1:A2=0} vrátí oba pole o velikosti 1 sloupec a 2 řádky s hodnotami PRAVDA.
Pokud musíme opakovat výpočty pomocí různých hodnot, použijeme maticové vzorce. Pokud se rozhodneme později změnit metodu výpočtu, musíme aktualizovat pouze maticový vzorec. Chceme-li přidat maticový vzorec, vybereme celou oblast pole a potom provedeme požadovanou změnu maticového vzorce.
Pole jsou nezbytným nástrojem pro provádění složitých výpočtů, protože do výpočtů můžeme zahrnout několik oblastí buněk. Program Calc má různé matematické funkce pro pole, jako je funkce MMULT pro vynásobení dvou polí.
Pokud vytváříme vzorec pro pole pomocí Průvodce funkcí, musíme pokaždé zaškrtnout volbu Pole, aby se výsledky vracely v poli (22). Jinak bude vrácena pouze hodnota v levé horní buňce vypočítaného pole.
Maticový vzorec lze také zadat přímo do buňky. Výsledkem bude automaticky vytvořené pole buněk.
Poznámka
Maticové vzorce se v programu Calc zobrazují v závorkách (složených závorkách). Maticové vzorce nelze vytvořit ručně zadáním složených závorek.
Poznámka
Buňky v poli výsledků jsou automaticky chráněny proti změnám. Maticový vzorec však můžeme upravit nebo zkopírovat výběrem celé oblasti maticového vzorce.
Můžeme také vytvořit "normální" vzorec, ve kterém odkazovaná oblast, například parametry, označuje vzorec pole. Tento vzorec je také známý jako "implicitní průnik" vzorce pole. Výsledek se získá z průsečíku odkazované oblasti a řádků nebo sloupců, ve kterých se vzorec nachází. Pokud neexistuje žádný průsečík nebo pokud oblast v průsečíku pokrývá několik řádků nebo sloupců, zobrazí se #VALUE! zobrazí se chybová zpráva. Tento koncept ilustruje následující příklad.
Obrázek 26: Implicitní průnik vzorců pole

Následující kroky využívají hodnoty v buňkách A1:C3 na 26.
Do buňky D1 vložíme vzorec pole {=A1:A3 + 100}. Ověříme, zda buňky D1, D2 a D3 obsahují hodnoty 107, 195 a 105.
Do buňky D2 vložíme vzorec =A1:A3 + 100. Ověříme, že buňky D1 a D3 zůstávají prázdné, zatímco buňka D2 obsahuje hodnotu 195. To demonstruje implicitní průnik vzorců pole. Přestože zadaný vzorec vrací interně tři hodnoty, zobrazí se pouze druhá z nich.
Do buňky D4 vložíme vzorec =A1:A3 + 100. Všimněme si, že buňka D4 zobrazuje #VALUE! a to proto, že řádek 4 je mimo oblast A1:A3 vzorce.
Vzorce, které provádějí více než jednoduchý výpočet, součet řádků nebo sloupců hodnot, obvykle obsahují řadu argumentů. Zvažme například následující rovnici:
|
|
Tato rovnice modeluje polohu objektu, který vykonává lineární translační pohyb s konstantním zrychlením. Poloha (x) závisí na čase (t) a rovnice také obsahuje konstantní hodnoty pro počáteční polohu (xi), počáteční rychlost (vi) a zrychlení (a).
Pro snadnou prezentaci je vhodné sestavit tabulku podobně jako na 27. V tomto příkladu jsou jednotlivé proměnné vkládány do buněk na listu a není nutná žádná úprava vzorce.
Při vytváření vzorce můžeme použít několik přístupů. Při rozhodování, jaký přístup zvolit, vezmeme v úvahu, kolik dalších lidí bude muset listy používat, životnost listů a variace, s nimiž by se mohli při použití vzorce setkat.
Pokud budou sešit používat jiní lidé než my, ujistíme se, že je snadné zjistit, jaký vstup je vyžadován a kde. Na prvním listu je často umístěno vysvětlení účelu sešitu, základu pro výpočet, požadovaného vstupu a generovaného výstupu.
Obrázek 27: Nastavení vzorce s argumenty

U sešitu s mnoha komplikovanými vzorci, který vytvoříme dnes, nemusí být zcela za 6 nebo 12 měsíců zřejmé, jak měl fungovat. Pro zdokumentování je vhodné používat komentáře a poznámky. Je také dobré zachytit chyby, protože ostatní uživatelé tabulky si nemusí být vědomi například omezení vstupu pro určitý argument. Pokud použijeme nějakou formu logických příkazů nebo podmíněného formátování k zachycení chyb, nebudou ostatní uživatelé vystaveni nejasným standardním chybovým zprávám.
Základní strategií je považovat všechny potřebné vzorce za jednoduché a s omezenou životností. Strategií je pak umístit jedinečný vzorec do každé vhodné buňky. To se doporučuje pouze u velmi jednoduchých nebo „vyhozených“ (jednorázových) tabulek.
Druhá strategie je podobná té první s tím rozdílem, že delší vzorce rozdělíme na menší části a ty pak spojíme do celku. Mnoho příkladů tohoto typu existuje ve složitých vědeckých a technických výpočtech, kde se prozatímní výsledky používají na řadě míst v listu. Například vypočtenou rychlost proudění vody v potrubí lze použít k odhadu ztrát způsobených třením, objemu vody v potrubí a optimálního průměru potrubí pro daný režim proudění.
Ve všech případech bychom měli přijmout základní principy tvorby vzorců popsané výše.
Tabulky se často používají ke zpracování nezpracovaných dat, vytváření smysluplných souhrnů, konsolidaci informací a jejich prezentaci ve formátu, který pomáhá při rozhodování nebo slouží jako podklad pro zprávy. Surová data mohou pocházet z různých zdrojů, například z fyzických měření nebo obchodních transakcí.
Velké tabulky s tisíci nebo dokonce stovkami tisíc řádků a mnoha sloupci jsou běžné v oborech, jako jsou finance a výzkum. Provádění výpočtů na takových souborech dat může být časově náročné, může trvat minuty, hodiny nebo dokonce dny.
Jednou z častých chyb je vkládání vzorců do každé buňky, což vede k tisícům interpretací vzorců a výpočtů. To výrazně zpomaluje zpracování. Chceme-li zvýšit výkon, zvažme níže uvedená doporučení pro zrychlení výpočtů.
Maticové vzorce mají jeden vzorec aplikovaný na množství dat. Pro velké datové sady může být významná úspora výpočtů.
Konsolidační funkce provádějí výpočty na souborech dat. SUM, SUMIF, SUMIFS, SUMPRODUCT jsou příklady konsolidačních funkcí. Například, pokud máme velmi dlouhý seznam materiálu, kde množství musí být vynásobeno jednotkovou cenou a pak sečteno, aby se vytvořila hodnota nákladů, pak místo použití vzorce na každý záznam kusovníku a pak sečtení, můžeme použít vzorec SUMPRODUCT(množství; jednotková cena), kde množství a jednotková cena jsou pojmenované oblasti představující kusovník. SUMPRODUCT násobí každou buňku množství její odpovídající buňkou jednotkové ceny a sečte všechny produkty.
Podobné situace nastávají, když musíme sčítat podmnožinu původní sady dat, kde musíme použít test na každý záznam, aby bylo možné jej použít do součtu. Například když je hodnota pouze kladná. Použijeme SUMIF(data_pro_test;”>0”;data_pro_součet), kde data_pro_test je sada dat, ve které testujeme kladné hodnoty, data_pro_součet je sloupec, kde mají být hodnoty součtu v závislosti na testu, a „>0“ je samotný test.
Dalšími konsolidačními funkcemi jsou AVERAGEIF, COUNTIF, MINIFS, MAXIFS a další.
Vytváření vlastních funkcí a maker může být účinnou strategií pro zefektivnění používání tabulkového procesoru a zjednodušení vzorců. Tento přístup je užitečný zejména tehdy, když koncovým uživatelům usnadňuje práci s tabulkou a snižuje pravděpodobnost výskytu chyb. Navíc je údržba takového nastavení efektivnější, protože aktualizace nebo opravy lze spravovat na jednom centrálním místě.
Přílišné spoléhání na makra a vlastní funkce má však své nevýhody. Základní logika a principy tabulky mohou být obtížněji pochopitelné, zejména pro někoho jiného než pro původního tvůrce – nebo dokonce pro tvůrce po nějaké době.
Makra jsou specializovaným tématem a jejich použití je podrobně popsáno v kapitole 14.
Ve výchozím nastavení je povoleno vícevláknové zpracování, které využívá paralelní výpočetní výkon moderních počítačů. Vypnutí vícevláknového výpočtu se sice nedoporučuje, ale nastavení (Povolit vícevláknový výpočet) nalezneme v části Nastavení vláken CPU dialogového okna Nástroje > Možnosti > LibreOffice Calc > Vypočítat. Pokud je tato funkce povolena, Calc automaticky rozpozná, kde by vaše tabulka mohla využít vícevláknové zpracování, a podle toho ji zpracuje. Vlákna se obecně používají pro skupiny vzorců, kde dostatek sousedních buněk ve sloupci používá stejný vzorec, ale z různými výsledky kvůli relativnímu adresování buněk. Jedním z důsledků tohoto přístupu je to, že optimalizace je založena na sloupcích, takže rozložení na řádcích může být méně efektivní. Další metody řízení vícevláknových funkcí Calcu, jako je například nastavení proměnné prostředí MAX_CONCURRENCY, jsou mimo rozsah tohoto dokumentu.
Chyby ve vzorcích jsou v tabulkových procesorech častým jevem, a to i s pomocí mnoha nástrojů, které Calc při zadávání vzorců nabízí. K chybám může dojít při zadávání čísel nebo při použití nesprávných typů argumentů funkce. Kromě opravy těchto chyb může být nutné identifikovat buňky použité ve vzorci a upravit jejich hodnoty nebo ověřit výsledky.
Calc nabízí tři klíčové nástroje pro zkoumání vzorců a buněk, na které odkazují:
Chybová hlášení: Poskytují informace o problémech ve vzorcích.
Barevné kódování: Zvýrazní odkazované buňky pro snadnější identifikaci.
Nástroj Detektiv: Pomáhá sledovat vztahy mezi buňkami a identifikovat chyby.
Nejzákladnějším nástrojem jsou chybové zprávy. Chybové zprávy se zobrazují v buňce vzorce, na stavovém řádku nebo v Průvodci funkcí místo výsledku.
Chybová zpráva pro vzorec je obvykle trojmístné číslo od 501 do 540 nebo někdy neurčitý text, například #NAME?, #REF! nebo #VALUE!. V buňce se zobrazí chybová zpráva a na pravé straně stavového řádku se zobrazí krátké vysvětlení chyby.
Většina chybových zpráv hlásí problém v zadání vzorce, několik pak oznamuje, že jsme narazili na omezení programu Calc nebo jeho aktuálního nastavení.
Chybová hlášení sice nejsou intuitivní, ale poskytují vodítka, která mohou uživateli pomoci opravit chyby. Jejich podrobné vysvětlení najdeme v dodatku B – Kódy chyb, v nápovědě a hledáním „chybových kódů" v Calc. Některé z nejčastějších jsou uvedeny v 9.
Tabulka 9: Běžné chybové zprávy
|
Kód |
Význam |
|
#NAME? |
Místo zobrazení Err:525. Pro argument neexistuje platný odkaz. |
|
#REF! |
Místo zobrazení Err:524. Chybí sloupec, řádek nebo list pro odkazovanou buňku. |
|
#VALUE! |
Místo zobrazení Err:519. Hodnota jednoho z argumentů není typu, který argument vyžaduje. Hodnota může být zadána nesprávně; například kolem hodnoty mohou chybět uvozovky. Jindy může mít použitá buňka nebo oblast nesprávný formát, například text namísto čísel. |
|
#DIV/0! |
Místo zobrazení Err:532. Dělení nulou. |
|
#NUM! |
Místo zobrazení Err:503. Výsledkem výpočtu je přetečení definovaného rozsahu hodnot. |
|
509 |
Ve vzorci chybí operátor, například znaménko rovnosti. |
|
510 |
Ve vzorci chybí proměnná. |
K této chybě dochází při dělení čísla nulou (0) nebo prázdnou buňkou. Chceme-li se tomuto problému vyhnout, můžeme použít podmíněnou funkci pro případy, kdy se objeví nula nebo prázdná buňka. Například 28 zobrazuje dělení hodnot ve sloupci B hodnotami ve sloupci C, což vede ke dvěma chybám způsobeným nulou a prázdnou buňkou ve sloupci C.
Takovéto chyby jsou běžné, pokud chybí údaje nebo jsou nesprávně vykázány. Správné řešení těchto případů může zajistit funkce **IF**. Můžeme například použít vzorec:
=IF(C3>0, B3/C3, "Žádná zpráva")
Tento vzorec znamená: "Pokud je hodnota v C3 větší než 0, vydělíme B3 hodnotou C3, jinak zobrazíme 'Žádná zpráva'." Po zadání vzorce do prvního řádku sloupce D jej zkopírujeme do zbývající části sloupce. Příklad je uveden na 29.
Případně lze vzorec upravit tak, aby vrátil prázdnou buňku (pomocí dvojitých uvozovek `""`) nebo aby nahradil chybějící nebo neplatnou hodnotu konkrétním standardizovaným číslem.
Obrázek 28: Příklady #DIV/0!, chyba dělení nulou

Obrázek 29: Řešení dělení nulou

Chyba #VALUE! je také velmi častá.
Obvyklý výskyt této chyby nastane, když buňka obsahuje nesprávný typ hodnoty. V příkladu na 30 byl do pole C8 zadán text „None“, přičemž náš vzorec ve sloupci D očekává číslo.
Obrázek 30: Chybný záznam způsobující #VALUE! chybu

Chyba #REF! je způsobena chybějícím odkazem. V příkladu na 31 se vzorec odkazuje na list, který byl odstraněn.
Obrázek 31: Odstraněný list způsobuje #REF! chybu

Dalším užitečným nástrojem při kontrole vzorce je barevné kódování vstupu. Když vybereme vzorec, který již byl zadán, jsou buňky nebo oblasti použité pro každý argument ve vzorci se barevně zvýrazní.
Obrázek 32: Barevné kódování vstupu

Program Calc používá osm barev pro zvýraznění referenčních buněk, počínaje modrou pro první buňku, a pokračující červenou, purpurovou, zelenou, tmavě modrou, hnědou, fialovou a žlutou, což se cyklicky opakuje v sekvenci.
Existují situace, kdy je zobrazení obsahu buněk stejné, i když je datový typ odlišný. Například textový a číselný obsah mohou vypadat stejně, ale při použití obou v některých výpočtech může dojít k chybě. Pro ilustraci lze řetězec „10,35“ zarovnaný doprava v buňce zaměnit s hodnotou 10,35. Když je buňka použita ve vzorci, řetězec může mít hodnotu nula a může dojít k chybě.
Pokud povolíme zvýraznění hodnot (Zobrazit > Zvýrazňování hodnot nebo Ctrl + F8), program Calc rozlišuje textové a číselné datové typy barvou. Ve výchozím nastavení je text černými znaky a čísla modře. Další informace o zvýrazňování hodnot najdeme v kapitole 2, Zadávání a úpravy dat.
V dlouhé nebo komplikované tabulce je barevné zvýraznění méně užitečné. V těchto případech můžeme použit podnabídky pod položkou Nástroje > Detektiv. Detektiv je nástroj pro kontrolu, které buňky jsou použity jako argumenty vzorce (předchůdci) a které další vzorce jsou vnořeny (následníci), a chyb závislostí. Lze jej také použít pro trasování chyb, označování neplatných dat (to je informace v buňkách, která není ve správném formátu pro argument funkce), nebo dokonce pro odstranění předchůdců a následníků.
Chceme-li použít nástroj Detektiv, vybereme buňku se vzorcem a poté vybereme požadovanou možnost v nabídce Nástroje > Detektiv. V tabulce uvidíme čáry končící tečkami, které označují předchůdce, a čáry končící šipkami pro následníky. Řádky ukazují tok informací.
Nástroj Detektiv použijeme při sledování předchůdců uvedených ve vzorci v buňce. Sledováním těchto předchůdců můžeme často najít zdroj chyb. Kurzor umístíme do příslušné buňky a poté na panelu nabídek zvolíme Nástroje > Detektiv > Sledovat předchůdce nebo stiskneme Shift + F9. 33 ukazuje jednoduchý příklad sledování předchůdců pro buňku B4.
To nám umožňuje zkontrolovat, zda zdrojové buňky (což může být i oblast) nevykazují chyby. Pokud je zdrojem oblast, je tento rozsah zvýrazněn modře.
Obrázek 33: Sledování předchůdců pomocí nástroje Detektiv

V jiných případech bude možná nutné vyhledat závislosti chyby. K tomu používáme funkci Vyhledat závislosti chyby v Nástroje > Detektiv > Vyhledat závislosti chyby a vyhledáme buňky, které chybu způsobily.
Další informace vyhledáme v rejstříku systému nápovědy pod heslem „Detektiv“.
Pro začátečníky mohou být funkce jedním z nejobávanějších aspektů aplikace LibreOffice Calc. Noví uživatelé sice rychle poznají, že funkce jsou klíčovou vlastností tabulkových procesorů, ale množství dostupných funkcí – z nichž mnohé vyžadují specializované znalosti nebo specifické vstupy – může být ohromující. Calc naštěstí nabízí širokou škálu funkcí, které jsou jednoduché a přístupné i pro začínající uživatele.
Nejzákladnější funkce vytvářejí vzorce pro základní aritmetiku nebo pro vyhodnocení čísel v oblasti buněk.
Mezi jednoduché aritmetické funkce patří sčítání, odčítání, násobení a dělení. S výjimkou odčítání má každá z těchto operací svou vlastní funkci:
SUM pro sčítání
PRODUKT pro násobení
QUOTIENT pro dělení
SUM, PRODUCT a QUOTIENT jsou užitečné pro zadávání oblastí buněk stejným způsobem jako u jakékoli jiné funkce, s argumenty v závorce za názvem funkce.
U základních rovnic však mnoho uživatelů dává přednost počítačovým symbolům pomocí znaménka plus (+) pro sčítání, pomlčky (-) pro odčítání, hvězdičky (*) pro násobení a lomítka (/) pro dělení. Tyto symboly se rychle zadávají a jsou jednoduše dostupné na klávesnici.
Podobná volba je také k dispozici pro umocnění čísla jiným číslem. Místo zadání =POWER(A1;2) můžeme zadat =A1^2.
Kromě toho mají tu výhodu, že s nimi zadáváme vzorce v pořadí, které se blíží lidsky čitelnému formátu více než formát čitelný tabulkovým procesorem používaný ekvivalentní funkcí. Například místo zadávání =SUM(A1:A2) nebo případně =SUM(A1;A2) zadáme =A1+A2. Tento téměř lidsky čitelný formát je zvláště užitečný pro složené operace, kde zápis =A1*(A2+A3) je kratší a snáze čitelný než =PRODUCT(A1;SUM(A2:A3)).
Hlavní nevýhoda použití aritmetických operátorů spočívá v tom, že nemůžeme přímo použít oblast buněk. Jinými slovy, pro zadání ekvivalentu =SUM(A1:A3) je třeba zadat =A1+A2+A3.
Zda používáme funkci nebo operátor, je z velké části na nás – samozřejmě s výjimkou odčítání. Pokud však tabulky používáme pravidelně ve skupině, například ve třídě nebo kanceláři, možná budeme chtít standardizovat vstupní formát, aby si každý, kdo tabulku zpracovává, zvykl na standardní vstup.
Dalším běžným využitím funkcí tabulkového procesoru je vytažení užitečných informací ze seznamu, například série testů ve třídě nebo souhrn výdělků za čtvrtletí pro společnost.
Samozřejmě můžeme prohledat seznam čísel, pokud chceme základní informace, jako je nejvyšší nebo nejnižší položka nebo průměr. Jediným problémem je, že čím delší je seznam, tím více času ztrácíme a tím je pravděpodobnější, že vynecháme to, co hledáme. Místo toho je obvykle rychlejší a efektivnější zadat funkci. Takové důvody vysvětlují existenci funkce, jako je COUNT, která vrací pouze celkový počet záznamů v určené oblasti buněk.
Podobně pro nalezení nejvyšší nebo nejnižší položky můžeme použít MIN nebo MAX. Pro každý z těchto vzorců jsou všechny argumenty buď oblast buněk, nebo řada buněk zadaných jednotlivě.
Každá má také související funkci MINA nebo MAXA, která vykonává stejnou funkci, ale také zachází s buňku formátovanou jako text jako s hodnotu 0. Stejné zacházení s textem se vyskytuje v jakékoli variantě jiné funkce, která na konec přidá „A“. Každá funkce poskytuje stejný výsledek a může být užitečná, pokud jsme například pomocí textového zápisu uvedli, že v době, kdy byl psán test, byli studenti nepřítomní a chtěli jsme zkontrolovat, zda naplánovat náhradní zkoušku.
Pro větší flexibilitu při podobných operacích bychom mohli použít LARGE nebo SMALL, které přidávají specializovaný argument pořadí. Pokud je s LARGE použito pořadí 1, dostaneme stejný výsledek jako s MAX. Pokud je však pořadí 2, je výsledkem druhý největší výsledek. Podobně, pořadí 2 použité se SMALL nám dává druhé nejmenší číslo. LARGE i SMALL jsou vhodné jako trvalá kontrola, protože změnou argumentu pořadí můžeme rychle prohledat více výsledků.
Museli bychom být odborníkem, abychom našli Poissonovu distribuci vzorku, nebo našli zkosenou nebo negativní binomii distribuce (a pokud jsme, v programu Calc pro takové věci najdeme funkce). Pro nás ostatní však existují jednodušší statistické funkce, které se můžeme rychle naučit používat.
Zejména pokud potřebujeme průměr, musíme si vybrat z několika funkcí. Aritmetický průměr, tj. výsledek, který získáme sečtením všech položek v seznamu a následným vydělením počtem položek, můžeme zjistit zadáním rozsahu čísel při použití příkazu AVERAGE nebo AVERAGEA, pokud chceme zahrnout textové položky a přiřadit jim nulovou hodnotu.
Kromě toho můžeme získat další informace o sadě dat:
MEDIAN: Logicky řadí čísla (od nejnižší k nejvyšší) pro vyhodnocení střední hodnoty. V sadě, která obsahuje nerovnoměrný počet hodnot, bude mediánem číslo uprostřed seznamu. V sadě, která obsahuje sudý počet hodnot, bude střední hodnota průměrem ze dvou hodnot uprostřed seřazeného seznamu.
MODE: Nejběžnější položka v seznamu čísel.
QUARTILE: Záznam na nastavené pozici v poli čísel. Kromě rozsahu buněk zadáte typ kvartilu: 0 pro nejnižší položku, 1 pro hodnotu 25 %, 2 pro hodnotu 50 %, 3 pro 75 % a 4 pro nejvyšší položku. Výsledek u typů 1 až 3 nemusí představovat skutečně zadanou položku.
RANK: Pozice dané položky v celém seznamu, měřená shora dolů nebo zdola nahoru. Je třeba zadat adresu buňky pro položku, rozsah položek a typ pořadí (0 pro pořadí od nejvyššího nebo jakoukoli jinou hodnotu pro pořadí od nejnižšího).
Některé z těchto funkcí se překrývají; například MIN a MAX jsou obě pokryty QUARTILE. V jiných případech může vlastní řazení nebo filtr poskytnout téměř stejný výsledek. Někteří uživatelé raději používají MIN a MAX, protože si je snadno zapamatují, zatímco jiní dávají přednost QUARTILE, protože je univerzálnější.
V některých případech můžeme dosáhnout podobných výsledků jako u některých funkcí pomocí filtrů nebo vlastního třídění. Funkce jsou však obecně flexibilnější a snadněji nastavitelné a nabízejí širší škálu možností.
Někdy můžeme chtít dočasně zadat jeden nebo více vzorců do prázdné buňky pro rychlé výpočty a poté je odstranit. Pokud však často používáme stejné funkce, zvážíme vytvoření šablony s vyhrazenými místy pro tyto funkce. Pro přehlednost přidáme do buněk vlevo od každého vzorce popisky. Po nastavení šablony můžeme snadno aktualizovat vzorce podle toho, jak se mění data – buď automaticky, nebo stisknutím klávesy F9 pro obnovení všech vybraných buněk.
Ať už funkce používáme jakkoli, pravděpodobně zjistíme, že jsou jednoduché a přizpůsobitelné pro mnoho úkolů. Jakmile se seznámíme s těmito základními funkcemi, budeme připraveni prozkoumat pokročilejší možnosti.
Pro statistické a matematické účely obsahuje program Calc různé způsoby zaokrouhlení čísel. Některé z těchto metod jsou známé programátorům. Nemusíme však být specialistou, abychom používali některé z těchto užitečných metod. Možná budeme chtít zaokrouhlovat pro účely fakturace nebo proto, že desetinná místa se ve fyzickém světě špatně převádějí. Například pokud jsou díly, které potřebujeme, dodávány v baleních po 100 kusech, pak je pro vás skutečnost, že potřebujeme pouze 66 dílů, irelevantní; při objednávání je třeba zaokrouhlovat nahoru. Naučíme-li se možnosti zaokrouhlení nahoru nebo dolů, můžeme naše tabulky učinit užitečnějšími.
Při použití funkce zaokrouhlování máme dvě možnosti, jak nastavit vzorce. Pokud se rozhodneme, můžeme vnořit výpočet do jedné z funkcí zaokrouhlování. Například vzorec =ROUND((SUM(A1;A2)) přidá čísla do buněk A1 a A2 a zaokrouhlí je na nejbližší celé číslo. I když nemusíme pracovat s přesnými údaji každý den, můžeme se na ně občas odkazovat. Pokud je tomu tak, pak je pravděpodobně lepší oddělit obě funkce, umístit =SUM(A1;A2) do buňky A3 a =ROUND(A3) do A4 a jasně označit každou funkci.
Podrobnosti o metodách zaokrouhlování nalezneme v nápovědě.
Formát Open Document Format for Office Applications (OpenDocument) verze 1.3 obsahuje následující definici: „Funkce, které jsou vždy přepočítávány, kdykoli dojde k přepočtu, se označují jako volatilní funkce.“
Abychom pochopili některá chování volatilní funkce v programu Calc, zvažme jednoduchý příklad, ve kterém jsme vytvořili prázdnou tabulku a zadali vzorec =RAND() do buňky A1 (RAND je jedna z volatilních funkcí programu Calc). Program Calc zobrazí v buňce A1 náhodné číslo mezi 0 a 1. Pokud pak zadáme libovolnou hodnotu do jiné buňky (pro účely této diskuse řekněme do buňky B2) a stiskneme klávesu Enter, zjistíme, že hodnota zobrazená v buňce A1 se aktualizovala a je v ní jiné náhodné číslo. Calc přepočítá náhodné číslo v A1, navzdory tomu, že uživatel nezměnil vzorec v A1 a navzdory tomu, že aktualizované B2 nemá žádný odkaz na A1. Stručně řečeno funkce RAND generuje novou hodnotu při aktualizaci libovolné buňky výběrem Data > Vypočítat > Přepočítat nebo stisknutím F9, případně při jakékoli vstupní události.
Pochopení volatilních funkcí je důležité, zejména pokud vytváříme velkou tabulku, kde časté přepočty mohou nepříznivě ovlivnit výkon. Ujistíme se, že jsme sešit navrhli tak, aby správně používal volatilní funkce.
Následující funkce programu Calc jsou volatilní:
FORMULA
INDIRECT
INFO
NOW
OFFSET
RAND
RANDBETWEEN
TODAY
Pro funkce RAND a RANDBETWEEN nabízí program Calc nevolatilní náhrady – RAND.NV a RANDBETWEEN.NV. Mohou být užitečné, když nepotřebujeme tak často aktualizovat hodnoty funkcí. Nevolatilní funkce se při nových vstupních událostech nepřepočítá a znovu se nepočítá při výběru Data > Spočítat > přepočítat nebo zmáčknutí F9, s výjimkou pokud není buňka obsahující funkci vybrána. Při otevření souboru jsou nevolatilní funkce přepočítány.
Calc podporuje použití zástupných znaků nebo regulárních výrazů v argumentech mnoha svých funkcí.
Regulární výrazy nabízejí výkonné metody hledání textových řetězců. Další informace o regulárních výrazech včetně příkladů najdeme v části „Vyhledávání a filtrování pomocí regulárních výrazů“ v kapitole 2, Zadávání a úpravy dat.
Pokud je pro naši tabulku důležité zachovat kompatibilitu s programem Microsoft Excel, bude možná nutné omezit používání funkcí regulárních výrazů v aplikaci Calc, protože Excel nepodporuje ekvivalentní funkce. Při exportu tabulky Calc do formátu aplikace Excel nebudou v aplikaci Excel fungovat žádná data založená na regulárních výrazech.
Chceme-li zajistit kompatibilitu, můžeme místo toho použít méně výkonnou funkci zástupných znaků aplikace Calc. Zástupné znaky jsou speciální znaky, které zastupují jeden nebo více neurčených znaků a umožňují flexibilnější, ale často méně přesné vyhledávání textu. Tabulky se zástupnými znaky lze exportovat do formátu aplikace Excel bez ztráty funkčnosti.
K dispozici jsou tyto zástupné znaky:
? (otazník) pro vyjádření jednoho znaku.
* (hvězdička) pro vyjádření libovolného počtu znaků.
~ (tilda) k vynechání zástupných znaků, pokud jsou součástí skutečného textu.
Použití těchto zástupných znaků je stejné, jako je popsáno v dialogovém okně Najít a nahradit v kapitole 2, Zadávání, úpravy a formátování dat.
Následující funkce programu Calc povolují používání zástupných znaků nebo regulární výrazů ve vyhledávacích kritériích.
Databázové funkce (DAVERAGE, DCOUNT, DCOUNTA, DGET, DMAX, DMIN, DPRODUCT, DSTDEV, DSTDEVP, DSUM, DVAR, DVARP)
AVERAGEIF, AVERAGEIFS, COUNTIF, COUNTIFS, MAXIFS, MINIFS, SUMIF, SUMIFS
HLOOKUP, LOOKUP, VLOOKUP
MATCH
REGEX (neplatí pro zástupné znaky)
SEARCH
Možnosti konfigurace jsou dostupné v sekci Zástupné znaky ve vzorcích dialogového okna Nástroje > Možnosti > LibreOffice Calc > Výpočty (34). Zde lze nastavit používání zástupných znaků a regulárních výrazů ve funkcích programu Calc. Jsou tři vzájemně se vylučující možnosti, které nepotřebují vysvětlení:
Povolit zástupné znaky ve vzorcích. Jde o výchozí nastavení po instalaci program Calc.
Povolit regulární výrazy ve vzorcích.
Vzorce bez zástupných znaků a regulárních výrazů.
Další související volba v oblasti Obecné výpočty stejného dialogového okna Vyhledávací kritéria = a <> musí platit pro celé buňky, určuje, zda se kritéria vyhledávání musí přesně shodovat s celou buňkou.
Tip
Pokud jsou vybrány obě volby Vyhledávací kritéria = a <> musí platit pro celé buňky a Povolit zástupné znaky ve vzorcích, program Calc se při vyhledávání buněk v databázových funkcích chová přesně jako Microsoft Excel.
Ve výchozím nastavení se při hledání regulárních výrazů v rámci funkcí Calc nerozlišují velká a malá písmena, a to bez ohledu na nastavení zaškrtávacího políčka Rozlišovat velikost písmen. U některých funkcí však regulární výrazy mohou obsahovat volbu příznaku „?-i)“ pro přepnutí na shodu malých a velkých písmen. Funkce, které to podporují jsou: AVERAGEIF, AVERAGEIFS, COUNTIF, COUNTIFS, HLOOKUP, LOOKUP, MATCH, SEARCH, SUMIF, SUMIFS, and VLOOKUP.
Obrázek 34: Nástroje > Možnosti > LibreOffice Calc > Dialogové okno Výpočet

Pro ilustraci některých vlastností regulárních výrazů uvažujme jednoduchou tabulku na 35 a předpokládejme, že je vybrána volba Povolit regulární výrazy ve vzorcích.
Obrázek 35: Použití funkce COUNTIF

Se vzorcem =COUNTIF(A1:A6,”r.d”) zadaným do buňky A7 a odškrtnutou volbou Vyhledávací kritéria = a <> musí platit pro celé buňky, je v buňce A7 zobrazena hodnota 5, což je zobrazeno na 35. Vzorec sčítá buňky v oblasti A1:A6, které obsahují “Fred”, “red”, “ROD”, “bride” a “Ridge”.
Se vzorcem =COUNTIF(A1:A6,”(?-i)r.d”) zadaným do buňky A7 a odškrtnutou volbou Vyhledávací kritéria = a <> musí platit pro celé buňky, je v buňce A7 zobrazena hodnota 3. Vzorec sčítá buňky v oblasti A1:A6, které obsahují “Fred”, “red” a “bride”. Tento regulární výraz využívá možnost příznaku „(?-i)“ k provedení vyhledávání malých a velkých písmen.
Se vzorcem =COUNTIF(A1:A6,”r.d”) zadaným do buňky A7 a vybranou volbou Vyhledávací kritéria = a <> musí platit pro celé buňky, je v buňce A7 zobrazena hodnota 2. Vzorec sčítá buňky v oblasti A1:A6, které obsahují “red” a “ROD”.
Se vzorcem =COUNTIF(A1:A6,”(?-i)r.d”) zadaným do buňky A7 a vybranou volbou Vyhledávací kritéria = a <> musí platit pro celé buňky, je v buňce A7 zobrazena hodnota 1. Vzorec sčítá buňky v oblasti A1:A6, které obsahují “red”. Tento regulární výraz využívá možnost příznaku „(?-i)“ k provedení vyhledávání malých a velkých písmen.
Se vzorcem =COUNTIF(A1:A6,".*r.d.*") zadaným do buňky A7 a vybranou volbou Vyhledávací kritéria = a <> musí platit pro celé buňky, je v buňce A7 zobrazena znovu hodnota 5. Srovnejme to s příkladem 6)) above – regulární výraz v tomto příkladu umožňuje 0 nebo více znaků před „r“ i za „d“.
Regulární výrazy nelze použít přímo při jednoduchém porovnávání. Například vzorec A1="r.d" vždy vrátí hodnotu FALSE, pokud buňka A1 obsahuje "red", i když jsou regulární výrazy povoleny. Vrátí hodnotu TRUE pouze v případě, že A1 obsahuje "r.d" (s "r", tečkou a "d").
Chceme-li testovat regulární výrazy, použijeme místo toho funkci COUNTIF. Například:
COUNTIF(A1, "r.d")
Pokud je nalezena shoda, vrátí se 1, pokud ne, vrátí se 0, což lze ve vzorcích interpretovat jako TRUE nebo FALSE. Například:
=IF(COUNTIF(A1, "r.d"), "hurá", "bú")`
Je-li aktivována volba Povolit regulární výrazy ve vzorcích, budou všechny funkce vyžadovat, aby speciální znaky regulárních výrazů (jako jsou závorky) v řetězcích byly uvozeny zpětným lomítkem (`\`), i když nejsou součástí regulárního výrazu. Pokud toto nastavení později deaktivujeme, bude třeba zpětná lomítka odstranit, aby nedocházelo k chybám.
Stejně jako u jiných tabulkových procesorů lze program Calc vylepšit uživatelsky definovanými funkcemi nebo doplňky. Nastavení uživatelsky definovaných funkcí lze provést buď pomocí maker, nebo napsáním samostatných doplňků nebo rozšíření.
Základy psaní a spouštění maker jsou popsány v kapitole 13, Makra. Makra lze snadno propojit s nabídkami nebo panely nástrojů nebo je uložit do modulů šablon, aby byly funkce dostupné v jiných dokumentech. Makra programu Calc lze psát v jazycích Basic, BeanShell, JavaScript nebo Python.