Funkce v OpenOffice.org Calc – síla, kterou je obtížné zkrotit

calc.png Tabulkové kalkulátory umožňují kromě zapisování textu a čísel do buněk a vytváření více či méně přehledných tabulek také různé výpočty s vloženými údaji. V sérii článků si ukážeme, jaké funkce Calc svým uživatelům nabízí a jak s nimi efektivně pracovat.    

Funkci si můžete představit jako nějaký naprogramovaný úkon, který má tabulkový kalkulátor v buňce provést. Funkce obvykle vyžadují parametry - vstupní údaje, se kterými má být daný úkon proveden. Funkcí je například součet (symbol „+") a parametry jsou alespoň dvě čísla - sčítance.

Vzorec pak představuje zápis použití funkce a jejích parametrů do dané buňky. Jeden vzorec přitom může obsahovat více funkcí. Výsledek vzorce se pak zobrazuje přímo v buňce, ve které je zapsán. Vzorce mohou využívat výsledky jiných vzorců.

Práce se vzorci

Vzorce se do buněk vkládají/zapisují tak, že psaní začnete znakem rovnítko („=") a dále pokračujete v zápisu vzorce. Zápis ukončíte stiskem klávesy [Enter], čímž dojde ke kontrole a vyhodnocení vzorce a v buňce se zobrazí výsledek.

Zobrazení výsledku a vzorceZobrazení výsledku a vzorce

V buňce B2 je nyní číslo 666, které však není vloženo jako pevná hodnota, ale jako výsledek vzorce =555+111, který je zobrazen v řádku nad záhlavím sloupců (tzv. vstupní řádka). Občas se stane, že se v buňce nezobrazí výsledek, ale nějaká chybová hodnota, oznamující, že něco ve vzorci není v pořádku - např. pokud použijete funkci, kterou Calc nezná, v buňce se zobrazí chybová hodnota #NAME? (např. po zápise =ahoj).

Vzorce by však byly velice těžkopádné, kdyby umožňovaly použití jen fixních hodnot. Je tedy možné používat hodnoty i jiných buněk. Tak např. vzorec =A1+B1 zapsaný do buňky C1 vrátí hodnotu, jež je součtem buněk A1 a B1. Použili jsme odkazy na buňky.

Součet odkazem na buňkySoučet odkazem na buňky

Odkazy na buňky

Velká výhoda je v tom, že v buňkách A1 a B1 opět nemusí být fixní hodnota (např. číslo), ale opět nějaký vzorec. Po vložení můžete vzorec upravovat/editovat buď přímo v buňce (editační režim zapnete klávesou [F2] či dvojklikem na buňku) nebo ve vstupním řádku (kliknutím do něj).

Někdy se ovšem můžete dostat doslova do bludného kruhu, tzv. cyklických odkazů, kdy jeden vzorec počítá s výsledkem druhého a druhý s výsledkem prvního. Občas je toto chování žádoucí a záměrné, ale většinou se jedná o chybu v rozsáhlých tabulkách.

Odkazy a kopírování buněk

Dostáváme se k problematice tzv. relativních a absolutních odkazů. Jak jsme si již řekli, ve vzorcích lze používat odkazy na jiné buňky. Tyto odkazy se pak při kopírování vzorců přizpůsobují (v případě tzv. relativních odkazů), nebo nepřizpůsobují (absolutní odkazy).

Relativním odkazem je např. =A1. Pokud takový vzorec zkopírujete ve stejném řádku o jeden sloupec směrem doprava, změní se na =B1, o dva sloupce pak na =C1, ve stejném sloupci o jeden řádek níže na =A2 atd. Odkaz je tedy relativní, podle toho, kam ho zkopírujete.

Kopírování vzorců je velkou výhodou, není potřeba je stále znovu vkládat ručně. Vzorec má samozřejmě smysl kopírovat tehdy, pokud ho požadujete na jiném místě. Kopírování vzorců se provádí obvyklým způsobem pomocí [Ctrl+c] a [Ctrl+v], případně pomocí myši (viz ukázka níže).

Vzorce lze kopírovat velmi efektivně také pomocí myši - označte buňku nebo oblast, kterou chcete kopírovat, a kurzorem myši najeďte na pravý dolní roh buňky či oblasti. V pravém dolním rohu je malý černý čtvereček, kurzor myši se na něm změní na malý křížek. Stiskněte levé tlačítko myši a táhněte směrem, kam chcete buňku či oblast kopírovat. Poté levé tlačítko myši uvolněte. Celý proces je názorně vidět na následující ukázce, všimněte si také změny relativních odkazů v buňkách.

Příkladem absolutního odkazu je =$A$1. Pomocí symbolu dolar „$" u odkazu takzvaně zafixujete tu součást, která se nemá měnit. V případě =$A$1 je zafixovaná jak pozice sloupce, tak pozice řádku. Při kopírování odkazu tak nebude docházet k jeho automatickému přizpůsobení.

Lze využít i kombinace čistého relativního a čistého absolutního odkazu - v tom případě je zafixován jen sloupec, nebo jen řádek, tedy =$A1 (fixován sloupec), resp. =A$1 (fixován řádek). Praktický důsledek si nejlépe ukážeme opět ve video ukázce.

Symbol „$" není nutné doplňovat ručně, cyklicky přepínat lze způsob zafixování pomocí klávesové kombinace [Shift+F4] u právě editovaného odkazu.

Při kopírování relativních odkazů musíte dávat pozor, abyste se nedostali mimo oblast pracovního sešitu. Co tím myslím? Jestliže máte v buňce D1 vzorec =A1+B1 a překopírujete jej do buňky C1, vyrobíte chybu typu #REF!, která znamená, že vzorec obsahuje odkaz mimo pracovní oblast buněk. V buňce C1 bude vzorec =#REF!1+A1, protože při kopírování se relativní odkaz B1 změnil na A1, ale původní odkaz A1 by se změnil na odkaz mimo pracovní prostor (sloupec nalevo od sloupce A neexistuje).

Odkazovat se lze i na buňky v jiných listech, základní syntaxe je List1.A1, List2.B3.

Důležitá nastavení Calcu pro funkce a výpočty

Calc obsahuje různá nastavení, která se týkají vzorců a výpočtů. Podívejme se na nejdůležitější z nich - v nabídce Nástroje | Volby..., v rozbalovacím stromu nalevo pak položka OpenOffice.org Calc; bývají dostupné pouze tehdy, pracujete-li se sešitem v Calcu (tzn. např. z Writeru tuto sekci vůbec neuvidíte).

Nastavit zobrazeníNastavit zobrazení

  • sekce Obecné - zde je z tohoto pohledu zajímavá položka Aktualizace, jež určuje způsob aktualizování odkazů, které směřují mimo sešit (odkazy na jiné ODS soubory);
  • sekce Zobrazit - pokud u Zobrazení zaškrtnete Vzorce, pak se v buňkách nebudou zobrazovat výsledky, ale vložené vzorce; zaškrtnutím Zobrazit odkazy barevně docílíte toho, že při editaci vzorců s odkazy budou barevně korespondovat textové odkazy (A1 apod.) s označením příslušných buněk;
  • sekce Spočítat - zde jsou klíčová nastavení pro výpočty:
    • položku Iterace je důležité aktivovat v případě, že hodláte používat cyklické odkazy (jako jsme učinili v tomto článku);
    • Přesnost podle zobrazení - tato položka je velmi ošidná a pokud je aktivní, znamená, že Calc počítá s čísly tak přesně, jak jsou zobrazena v buňkách, tj. pokud máte v buňce např. vzorec =1/3 a zobrazení na 0 desetinných míst, bude zobrazena nula a s nulou budou také počítat ostatní vzorce(!), ačkoli interně je v buňce hodnota 0,333333;
    • Povolit regulární výrazy ve vzorcích - tato volba rozšiřuje možnosti některých funkcí pro manipulaci s textem.

      Nastavení výpočtůNastavení výpočtů

Pak tu máme ještě jedno, pro výpočty asi nejdůležitější nastavení, pomocí Nástroje | Obsah buňky | Automatický výpočet, které, pokud je aktivní, zajistí automatické a okamžité přepočítávání všech vzorců po jakékoli změně v sešitu (jeho vypnutí má smysl jen pro velmi specifické situace).

Aktivovat automatický výpočetAktivovat automatický výpočet

(Jako ve škole) Průměr: 1.47 | Hodnotilo: 34
 

Komentáře

user avatar ondra
Odpovědět
Doplňování dolaru
27. 03. 2009, 09:02:22
Super, o Shift-F4 jsem neměl vůbec tušení. Ušetří to docela dost času.
user avatar Jiri Machac
Odpovědět
Efektivní vyplnění bloku buněk vzorcem
10. 01. 2010, 20:27:36
Efektivní vyplnění bloku buněk vzorcem:

1. nejprve označit blok buněk budoucích vzorců
2. napsat vzorec do aktivní buňky (její adresa je v poli jména)
3. Alt+Enter pro ukončení vkládání (alternativa v Excelu Crtl+Enter)

nebo další metoda:

1. napsat první vzorec
2. označit sloupec (blok) buněk včetně buňky se vzorcem
3. Ctrl+D pro vyplnění označeného sloupce
user avatar Vít
Odpovědět
Funkce v OpenOffice.org Calc – síla, kterou je obtížné zkrotit
10. 09. 2012, 12:56:53
Zdravím Vás, použil jsem funkci násobení včetně symbolu dolaru a namísto hodnoty se objeví ve výsledné buňce #VALUE! U celých čísel není problém, ale s buňkami, kde je desetinné číslo, nedostanu konkrétní výsledek. Zkoušel jsem různé obměny nastavení v záložce Volby, ale stále nic. Nevíte, kde je zakopaný pes? Děkuji za radu.
user avatar Kolemjdoucí
Odpovědět
Re:Funkce v OpenOffice.org Calc – síla, kterou je obtížné zkrotit
11. 09. 2012, 03:03:39
Pravděpodobn se pokoušíte počítat s textem. Vinou by mohl být špatný desetinný oddělovač (tečka místo čárky)
user avatar Maruška
Odpovědět
Funkce v OpenOffice.org Calc – síla, kterou je obtížné zkrotit
24. 04. 2019, 15:30:57
pomozte mi prosím zjistit, zda je možné v open officu calc zadat do vzorce př. =1*1,3 a použít toto do celého sloupce, s tím, že v nižších buňkách jsou jiná čísla???
Děkuji
user avatar neutr
Odpovědět
Re:Funkce v OpenOffice.org Calc – síla, kterou je obtížné zkrotit
24. 04. 2019, 19:09:41
Ten Váš vzorec lze normálně rozkopírovat. Jenom netuším co myslíte tímto "že v nižších buňkách jsou jiná čísla". Například v prvním řádku =1*1,3, ve druhém řádku =2*1,3, a ve třetím i dalších =3*1,3?

Například pro výše uvedené stoupání použijeme vzorec =ROW()*1,3. Když bychom začínali například od 5. řádku tak uvedeme =(ROW()-4)*1,3.

Možné je postavit libovolné posloupnosti. Pokud chcete skutečně něco konkrétního použijte dotaz na našem fóru.

Přidat názor

 

Nejsou podporovány žádné značky, komentáře jsou jen čistě textové. Více o diskuzích najdete v nápovědě. Diskuzi můžete sledovat pomocí RSS kanálu.

 
 
 
woo jaw demo hz