Marian Králik Práca s tabuľkovým procesorom EXCEL 2003

1

Autor: doc. Ing. Marian Králik, CSc.

Recenzent: ISBN

2

3

4

1 Úvod
Tabuľkový procesor Microsoft Excel 2003 je súčasťou kancelárskeho systému Microsoft Office System 2003. Excel sa vyznačuje pohodlným a intuitívnym ovládaním a preto si nachádza veľkú obľubu medzi pracovníkmi v ktorejkoľvek profesionálnej oblasti a niekedy až po ženy v domácnosti. Patrí do špičky medzi tabuľkovými procesormi a umožňuje používateľovi vytvárať, upravovať množstvá tabuliek so vzorcami, vykonávať najrôznejšie matematické, štatistické, finančné i časové výpočty a zobrazovať údaje graficky. S pomocou Excelu možno naviac vykonávať s údajmi aj jednoduché databázové operácie, ako aj riešiť mnohé matematické problémy. Tabuľkové procesory majú za sebou asi pätnásťročnú históriu a prešli veľkým vývojom, niektoré princípy však zostali zachované. Pracovná plocha je tvorená bunkami, do ktorých sa zapisujú čísla, text, dátum, vstavané funkcie a vzorce. Tabuľka by však nebola tabuľkou bez obrysových čiar, čo možno taktiež zakresľovať a tvorba grafov patrila vždy k zlatým klincom každého tabuľkového procesora. Na počiatku mal každý súbor len jeden hárok (worksheet), ktorý obsahoval bunky s adresou stĺpca a riadku. Koncepcia jedného listu bola neskôr nahradená niekoľkými listami tabuliek za sebou, vznikol tak zošit (workbook). S koncepciou 256 listov v zošite s 257. listom pre grafy, dialógy a diapozitívy prišlo Quattro for Windows v.1. Táto štruktúra viacerých listov za sebou sa stala štandardom. V priebehu rokov sa vyskytli snahy riešiť tabuľky iným spôsobom, napr. Lotus Improve s dynamickou tabuľkou, SuperCalc s max. 12 dimenzionálnym pohľadom na dáta, Excel s hierarchickou koncepciou – ako kniha s kapitolami. Ako životaschopná a jednoducho pochopiteľná sa však ukázala koncepcia listov resp. hárkov za sebou, pričom najčastejšie jeden zošit (súbor) tvorí 256 listov. Je podružné, či nový zošit obsahuje priamo plný počet listov (Quattro), alebo len 16, prípadne len 3, tak ako je to pri posledných verziách Excelu, a ktoré možno podľa potrieb pridávať alebo vymazávať. V nasledujúcich kapitolách sa čitateľ postupne zoznámi s prostredím Excelu, že orientácia v ňom je pomerne jednoduchá, ako rýchlo a efektívne možno vkladať údaje do tabuľky a ako prinútiť Excel, aby vypočítal to, čo je práve potrebné. Taktiež sa možno dozvedieť, že grafom možno vyjadriť viac ako tabuľkou, prípadne ako pracovať so zoznamami údajov a ako potrebné údaje vytlačiť. Cieľom tejto publikácie bolo vytvorenie jednoduchej a zrozumiteľnej príručky, ktorá by bola vhodným pomocníkom pri štúdiu a práci s Excelom. Autor pri jej koncipovaní čerpal z dlhoročných skúseností lektora vo Volkswagen Slovakia, a.s. a potrieb jeho pracovníkov pri používaní Excelu pri každodennej práci. Často je potrebné sa dostať k niektorým riešeniam rýchlejšie, vytvárať varianty riešení, optimalizovať dosahované výsledky riešení a v neposlednom rade urýchľovať našu prácu s Excelom. Aj týmto nástrojom je venovaná časť predloženej publikácie. Záverečná časť tejto publikácie sa zaoberá makrami a vytváraním programov pomocou jazyka „Visual Basic for Applications“ (VBA), ktorý umožňuje vytváranie nielen vlastných funkcií, ale aj integrovaných aplikácií, ktoré môžu manipulovať s tabuľkami a grafmi Excelu, môžu obsahovať vlastné ponuky, dialógové okná a nástrojové lišty s tlačidlami na spúšťanie programov. Tieto aplikácie sú ochraňované potom pred bežným užívateľom, ktorý má k vašim tabuľkám len taký prístup, aký mu pridelíte. Keď začnete v Exceli písať makrá, budete musieť v skutočnosti zvládnuť dve rôzne problematiky. Po prvé sa musíte naučiť, ako sa pracuje s Visual Basicom. Všetko, čo sa o Visual Basicu naučíte, bude platiť nielen pre Excel, ale tiež pre ostatné aplikácie, ktoré 5

Visual Basic taktiež obsahujú. Po druhé sa ale budete musieť naučiť ovládať samotný Excel. Čím viac budete vedieť o Exceli ako o tabuľkovom procesore, tým efektívnejší budete pri vývoji makier, ktoré budú Excel riadiť. Príklady, ktoré sú v publikácii uvedené, boli odskúšané a po zápise sú funkčné. V jednotlivých príkladoch je postupne opísaný problém a za tým je predložené jedno z možných riešení. Ako autor sa domnievam, že uvedené riešenia príkladov možno zlepšovať a predložené algoritmy optimalizovať. Ak máte nejaké poznámky alebo návrhy zlepšení týkajúce sa tejto publikácie, upovedomte ma. Všetkým vopred ďakujem. Autor

6

2 Spustenie a základné pojmy
2.1 Spustenie a ukončenie programu

Predpokladom je, že Excel je nainštalovaný. Najlepšie ho spustíme: z ponuky Štart → Programy → Microsoft Office → Microsoft Excel dvojitým stlačením na zástupcu Excelu na pracovnej ploche Windows, ak je tam nainštalovaný, priamym spustením programového súboru Excel.exe. Pred ukončením práce s Excelom je nutné uloženie súborov, resp. pracovného priestoru. Pre zábudlivých je ale poistka – ak bola v súbore uskutočnená zmena, musí sa pred ukončením práce potvrdiť otázka, či má byť zošit aj so zmenami uložený. Prácu s Excelom možno ukončiť: príkazom Súbor – Skončiť skráteným klávesovým povelom Alt – F4. stlačením tlačidla x ľavým tlačidlom myši v pravom hornom rohu okna aplikácie.

2.2

Opis obrazovky Excelu

Po spustení Excelu sa zobrazí okno aplikácie s otvoreným novým prázdnym zošitom. Ten má implicitne 3 hárky. Pracovnú plochu obrazovky (okna dokumentu) Excelu možno rozdeliť na niekoľko častí a možno ju prispôsobiť tak, aby čo najlepšie vyhovovala pracovným požiadavkám. Okno obsahuje postupne zhora nadol nasledujúce časti (obr. 1.1): Záhlavie aplikácie – Obsahuje systémové menu, názov aplikácie „Microsoft Excel“, názov zošitu a tlačidlá pre minimalizáciu, maximalizáciu okna a uzatvorenie aplikácie. Excel ponúka implicitné meno pre nepomenované dokumenty – Zošit1, čiže výraz plus poradové číslo. Hlavné menu aplikácie – Obsahuje deväť ponúk – roletové menu, obsahujúcich ďalšie ponuky (príkazy), potrebných pre prácu s Excelom. Tieto ponuky budú v našom texte postupne uvádzané s celou cestou od príslušnej hlavnej ponuky. Panely s nástrojmi ( nástrojové lišty, lišty symbolov) – Využívajú sa na rýchle uskutočňovanie príkazov pomocou ľavého tlačidla na myši. Bez dodatočných úprav obrazovka obsahuje štandardný panel a panel na formátovanie. Panely nástrojov môžu byť umiestnené na všetkých štyroch stranách pracovnej plochy aplikácie alebo ako plávajúce na ľubovoľnom mieste. Vzorcový panel – Má niekoľko častí a podôb. V pravom poli naľavo je adresa bunky, jej názov (ak je pomenovaná), názov oblasti alebo zoznam funkcií. nasleduje tlačidlo, ktorým sa zobrazia všetky pomenované bunky v zošite. Po stlačení „fx“ sa vyvolá zoznam funkcií. V časti riadku vzorcov vpravo sa zobrazí obsah bunky. Možno do tejto časti myšou ukázať na príslušný znak a upravovať obsah bunky (obr. 1.2). Pracovná tabla (Podokno úloh) – Je samostatným ovládacím prvkom a môže nadobudnúť viac podôb podľa určenia, napr. Nový zošit, Schránka (sada Office), Klipart. Ďalej je pracovná tabla (podokno úloh) využité pri tvorení kontingenčnej tabuľky, pri obnove dokumentu po havárii systému. Podokno úloh môže byť umiestnené aj mimo aplikácie (mimo Excel). 7

Hlavné menu aplikácie

Vzorcový panel

Panely s nástrojmi

Aktívna bunka

Pracovná tabla

Pracovné hárky Stavový riadok

Obr. 1.1 Hlavné časti okna Excelu

Obr. 1.2 Riadok vzorcov po stlačení tlačidla „=“ . Pracovná plocha – Obsahuje jednotlivé bunky. Na jednoznačné určenie pozície buniek sa používajú súradnice buniek. Bunka, ktorá je zvýraznená, je aktívna a možno do nej vkladať údaje. Môžeme pracovať aj s množinou buniek a potom hovoríme označeným bunkám oblasť. Oblasť je pravouhlá množina buniek, ktorá je zvýraznená a možno s ňou pracovať ako s celkom. Stavový riadok – Je na dolnej strane okna a obsahuje správu o režime práce s Excelom: Pripravený, Úpravy... príp. upozornenie, že v zošite existuje cyklický odkaz. Po vyznačení oblasti buniek sa zobrazí políčko s vybranou funkciou zo šiestich funkcií „Automatického výpočtu“. Napravo sú identifikátory stavov prepínačov.

8

2.3

Základné pojmy

Bunky – Pracovná plocha okna dokumentu je rozdelená mriežkou na jednotlivé prvky, ktoré sa nazývajú bunky. A práve do týchto buniek sa vkladajú údaje a odohráva sa v nich to, čo od Excelu požadujeme. Informácie sa do buniek vkladajú jednoduchým písaním na klávesnici a následným stlačením klávesu Enter. Mriežka je pravouhlá, bunky sú zostavené do riadkov a stĺpcov. Stĺpce sú označené písmenom anglickej abecedy a každý riadok je označený číslom. Každú bunku možno potom jednoznačne určiť podľa stĺpca a riadku, napr. A1, D10, K123. Tomuto spôsobu označovania hovoríme adresovanie. Hárok – Je vytvorený bunkami usporiadanými do názvov a stĺpcov. Zjednodušene možno povedať, že list to isté, čo jedna tabuľka. Každý hárok má svoj názov. Pokým nie je premenovaný, pridelí mu Excel implicitný názov Hárok, s poradovým číslom. Názvy listov sú vľavo v okne dolu a každú list má svoju záložku, resp. uško so svojim názvom. Prepínanie medzi viacerými listami možno pomocou symbolov šípok a biele uško znamená práve otvorený a aktívny list. Zošit – Bolo by veľmi nepraktické ukladať samostatný list. Preto býva dokument vytvorený z niekoľkých listov, teda z niekoľkých tabuliek, ktorému hovoríme rovnako ako obľúbenej školskej pomôcke – zošit, ktorý má predsa niekoľko hárkov. Údaje v bunkách jednotlivých listov môžu byť vzájomne prepojené a môžu reagovať spoločne na každú zmenu. Excel vkladá implicitne do zošitu tri prázdne hárky. V zošite môže byť najviac 256 hárkov. Aktívna bunka – V liste je práve aktívna len jedna bunka, ktorá sa aktivuje kliknutím ľavého tlačidla myši nad ňou. Vznikne rámček okolo jednej bunky. Ak je takto bunka orámovaná, je aktívna a operácie, ktoré sa budú vykonávať, sa týkajú len práve jej. Po kliknutí na iné miesto na pracovnej ploche v zošite sa aktivuje iná bunka. Ukazovateľ myši (kurzor) – Najdôležitejším pomocníkom pri práci je myš. Na obrazovke je neustále prítomný ukazovateľ myši. Ukazovateľ na ploche má tvar kríža, mimo pracovnej plochy sa podobá na šípku, na záhlaví stĺpcov sa mení na dvojitú šípku a pod. Tvar ukazovateľa myši vždy napovedá, čo možno na danom mieste podniknúť. Výber (vybraná, vyznačená oblasť) – Je to oblasť buniek určená na zvláštne operácie, ktoré sa ostatných buniek netýkajú. Bunky vo výbere sa zobrazujú v bledomodrej farbe. Bunka, ktorá bola aktívna v okamihu, keď sa začal označovať výber, ostane naďalej v pôvodných farbách. Oblasť sa dáva do výberu hlavne pri úpravách vzhľadov tabuľky. Výber možno taktiež kopírovať, presúvať, vymazávať a pod. Výber oblasti je dôležitý pri tvorbe grafov. Niekedy je potrebné na získavanie údajov označiť nesúvislú oblasť. V tomto prípade sa označí ďalšia oblasť za súčasného držania klávesu Ctrl. Označenie celého riadku a stĺpca sa vykoná sa jednoduchým kliknutím ľavým tlačidlom myši na jeho záhlavie. Všetky bunky v zošite možno označiť kliknutím na políčko, kde sa pretínajú záhlavia riadkov a stĺpcov. Výber zrušíme jednoduchým kliknutím ľavým tlačidlom myši na pracovnej ploche.

2.4

Inteligentné značky a tlačidlá možností

Niektoré údaje vyvolávajú tzv. Inteligentné značky (v origináli Smart Tags). Inteligentné značky sú nielen v Exceli, ale aj v ďalších aplikáciách MS Office System 2003. Inteligentná značka je označenie výsledku činnosti aplikácie na pozadí, kedy zapísané údaje v bunke boli rozpoznané a označené ako určitý typ údajov a k tomuto typu údajov sú pripravené akcie. 9

Zapnutie inteligentných značiek. Zadáme príkaz Nástroje – Možnosti automatických opráv a vyberieme kartu Inteligentné značky. Ak označíme políčko Označiť údaje inteligentnými značkami, sprístupní sa zoznam inštalovaných funkcií (doplnkov inteligentných značiek), v ktorom môžeme označiť tie, ktoré majú byť aktívne (obr. 1.3).

Obr.1.3 Nastavenie inteligentných značiek Použitie inteligentných značiek. Po prejedení kurzorom myši na tlačidlo inteligentnej značky sa zobrazí na pravej strane tlačidla šípka s ponukou akcií na detekovaný typ údajov. Vyberieme vhodnú akciu (obr. 1.4).

Obr. 1.4 Postup pri výbere akcií pomocou inteligentnej značky V Exceli sú zavedení mnohí pomocníci vo forme tlačidiel, ktorí ponúkajú možnosti podľa operácie. Pri vybraných akciách sa zobrazí tlačidlo s ponukou možných pokračovaní. Použitie týchto značiek (obr. 1.5) nie je viazané na zapnutie alebo vypnutie značiek na karte Inteligentné značky.

10

Obr. 1.5 Značka upozorňuje na možný výskyt chyby Niektoré poznámky k používaniu inteligentných značiek: - Nastavenie na karte Inteligentné značky platí pre všetky zošity. - Indikátor inteligentnej značky (fialový trojuholníček sa netlačí) - Indikátory sa zobrazia pri otvorení zošita, u ktorého boli inteligentné značky uložené. - Inteligentné značky zväčšujú veľkosť súboru. Pokiaľ nemá dôjsť k zväčšeniu, musíme uloženie inteligentných značiek vypnúť. Na karte Inteligentné značky zrušíme označenie poľa Ukladať inteligentné značky spolu so zošitom. Zmena sa prejaví po zatvorení zošita. - Zmeny v nastaveniach inteligentných značiek sa prejaví po zatvorení a opätovnom otvorení zošita. - Ďalšie inteligentné značky možno získať z internetu stlačením tlačidla Ďalšie inteligentné značky, keď sa pripojíme na server spoločnosti Microsoft. Inteligentné značky slúžia na zistenie a následné odstránenie chýb pri zadávaní údajov do systému a pri operáciách s nimi. Ale bez zvládnutia začiatkov práce s Excelom nebudeme rozumieť pojmom, ktoré sa objavujú pri otvorení zoznamu ponúkaných akcií pri inteligentných značkách. Akcie môžu zefektívniť prácu s Excelom, rozširujú isté možnosti urýchlenia vstupných činností a operácií s údajmi. Skúsený užívateľ ich možnosti bude využívať v menšej miere.

11

12

3 Základné činnosti v tabuľke
3.1 Vyznačenie oblasti

Ak chceme pracovať s viac ako jednou bunkou, musíme označiť viaceré bunky naraz. Označenie oblasti sa vykonáva: - kurzor myši nastavíme na prvú bunku oblasti (odporúčame ľavú hornú bunku), ktorú chceme vybrať a stlačíme ľavé tlačidlo na myši a ťaháme na poslednú bunku oblasti - výber nesúvislých oblastí urobíme pomocou stlačenia klávesu Ctrl počas vyznačovania druhej a ďalších oblastí.

3.2

Presúvanie a kopírovanie buniek a oblastí

Ak sa kurzorom nastavíme na okraj bunky alebo vyznačenej oblasti (nie do pravého dolného rohu), kurzor sa zmení na bielu šípku. Ak stlačíme potom ľavé na myši a budeme ťahať, šedý obrys určuje novú polohu oblasti. Kopírovanie sa uskutoční za súčasného držania klávesu Ctrl. Iný spôsob presúvania alebo kopírovania buniek je možný pomocou hlavného menu príkazmi Úpravy – Vystrihnúť resp. Kopírovať s následným presunutím na cieľovú oblasť s vybraním položky Prilepiť alebo Prilepiť špeciálne z príkazu hlavného menu Úpravy.

3.3

Vkladanie údajov do buniek

V tabuľkovom procesore sa údaje vkladajú do buniek. Bunka je najmenší adresovateľný priestor v liste zošite. Jej poloha je jednoznačne určená adresou riadku a stĺpca. Bunka môže obsahovať číslo, text, dátum, funkciu, vzorec, komentár, logickú hodnotu, chybovú hodnotu alebo môže byť nevyplnená (prázdna). Z praxe možno odporučiť, že tabuľku treba začať zápisom údajov, doplnením vzorcami a funkciami a až potom po vytvorení kostry tabuľky ju začať graficky upravovať, t.j. formátovať: zobraziť čísla v požadovanom tvare a počte miest, časti tabuľky vyznačiť farebne, doplniť okraje tabuľky, ... . Po zapísaní prvého znaku z klávesnice sa v riadku vzorcov vytvoria dve nové tlačidlá (Esc resp. Zrušiť – červený krížik a Vstup (Enter) – zelená kvačka). Majú rovnakú funkciu ako príslušné klávesy na klávesnici (obr. 3.1).

Obr. 3.1 Zadávanie textu do bunky Stlačením klávesu Enter sa údaj zapíše do bunky a bunkový kurzor sa posunie v tom smere ako je to zadané v príkaze Nástroje – Možnosti na karte Úpravy.

13

Stlačením tlačidla „ = “ sa zobrazí okno vzorca, ktoré pomáha pri zápise vzorcov a funkcií. Ak teraz stlačíme myšou tlačidlo so šípkou nadol, otvorí sa nám ponuka funkcií, ktoré môžeme použiť pre požadované výpočty (obr. 3.2)

Obr. 3.2 Vkladanie vzorcov a funkcií

3.4

Úpravy údajov

Ak chceme upraviť údaje v bunke, máme niekoľko možností, ako to uskutočniť: - zapíšeme nové údaje, pôvodné budú prepísané - stlačením ľavým tlačidlom myši v priestore riadku vzorcov prejdeme do režimu úprav. Hodnoty môžeme priamo upravovať v tomto riadku. - stlačením klávesu F2 priamo prejdeme do režimu úprav - dvojitým stlačením ľavým tlačidlom myši priamo v bunke a tak môžeme v nej priamo upravovať údaje.

3.5

Mazanie údajov

Vyberieme bunku alebo oblasť, z ktorej chceme vymazať údaje. Ak stlačíme kláves Delete, vymažeme iba hodnoty resp. vzorce v bunke alebo oblasti. To isté dosiahneme z príkazu skráteného menu (objaví sa po stlačení pravého tlačidla na myši) Vymazať obsah. Ak chceme vymazať aj formát alebo poznámku, musíme použiť príkaz z hlavného menu Úpravy Vymazať. Následné bočné menu zobrazí položky: Všetko - vymaže sa všetko, t.j. formát, hodnota, vzorec aj poznámka. Formáty - vymaže iba formáty. Obsah Del - vymaže hodnotu aj vzorec. Komentáre - vymaže poznámku.

14

3.6

Mazanie buniek

V tomto prípade sa bunky vymažú a na prázdne miesta sa podľa istých pravidiel presunú iné bunky. Činnosť príkazu je zrejmá z nasledujúceho postupu. Vyberieme príkaz Odstrániť z hlavného menu Úpravy. Dialógové okno zobrazí nasledujúce možnosti: Posunúť bunky doľava - vymaže bunky a ostatné presunie na ich miesto sprava doľava. Posunúť bunky nahor - vymaže bunky a ostatné presunie na ich miesto zospodu hore. Celý riadok - vymaže celý riadok. Celý stĺpec - vymaže celý stĺpec.

3.7

Vkladanie buniek

Vkladanie buniek je prakticky inverznou činnosťou mazania buniek. Vykonáva sa cez hlavné menu položkou Vložiť a Bunky. Zobrazí sa dialógové okno s analogickými príkazmi ako v predchádzajúcom prípade. Racionálnejšie sa to dá dosiahnuť príkazom Vložiť... zo skráteného menu.

3.8

Anulovanie vykonaných operácií

Niekedy sa stane, že až po vykonaní operácie zistíme, že bola nesprávna. Excel nám umožňuje vrátiť posledných 16 krokov späť nasledujúcimi spôsobmi: - tlačidlom „Späť“ na štandardnej nástrojovej lište - príkazom hlavného menu Úpravy – Späť - skráteným klávesovým povelom Ctrl + Z. Ak stlačíme postrannú šípku pri tlačidle „Späť“ na štandardnej nástrojovej lište, zobrazí sa nám zoznam posledných operácií, ktoré možno ešte vrátiť späť.

3.9

Opakovanie poslednej operácie

Zopakovať možno posledných 16 operácií bez toho, aby sme ich museli znovu zadávať. Spôsoby, akými to možno uskutočniť sú: - tlačidlom „Znova“ na štandardnej nástrojovej lište - príkazom hlavného menu Úpravy – Znova - skráteným klávesovým povelom Ctrl + Y. Postranná šípka pri tlačidle Znova zobrazí zoznam operácií, ktoré možno opakovať.

3.10

Vytváranie postupností

V ľavom spodnom rohu bunkového kurzora alebo vyznačenej oblasti je tmavý štvorček (úchytný štvorec na vypĺňanie), ktorým možno vytvárať súvislé rady postupností alebo 15

dopĺňať štvorec na výpočet. Východisková môže byť jedna alebo viac buniek. Kurzorom možno pohybovať vodorovne (v jednom riadku) alebo zvisle (v jednom stĺpci) oboma smermi.

3.10.1

Vytvorenie postupnosti zo zoznamov

Excel má špeciálne funkcie, ktoré sú špecifické pre prácu s tabuľkovým procesorom. Jednou z týchto funkcií je automatické vypĺňanie. Sú preddefinované mená mesiacov a dní. Ak napíšeme niektoré z týchto mien do bunky a vloženie potvrdíme tlačidlom Enter, môžeme kurzorom za pravý dolný roh - úchytný štvorec (kurzor sa zmení na ) potiahnuť v smere riadku alebo stĺpca a vyznačená oblasť sa vyplní zadefinovanou postupnosťou. Užívateľ produktu si môže vytvoriť vlastné textové postupnosti, ktoré pozostávajú napr. z mien pracovníkov oddelení, názvov kooperujúcich firiem, neslovenských názvov mesiacov, dní a pod. Príklad vytvorenia postupnosti dní v slovenčine: - z hlavného menu Nástroje vyberme položku Možnosti - v zobrazenom dialógovom okne klepnime na názov kartičky Vlastné zoznamy - klepnime v okne Položky zoznamu a vložme postupnosť názvov, pričom názvy treba oddeľovať čiarkami - stlačme tlačidlo Pridať - v okne Položky zoznamu sa zobrazia príslušné názvy tak, ako bude s nimi Excel pracovať. - stlačme tlačidlo OK. Teraz stačí, aby sme do niektorej bunky vložili ľubovoľný názov zo zavedenej postupnosti a pomocou kríža v pravom dolnom rohu automaticky vyplnili takto vyznačenú oblasť. V prípade, že sme už vložili postupnosť názvov napr. do tabuľky a chceme s ňou pracovať aj v ďalších hárkoch, môžeme si ju vložiť aj dodatočne do zákazníckeho listu. Najprv musíme vyznačiť oblasť, ktorú chceme vložiť ako postupnosť a stlačiť tlačidlo Importovať zoznam z buniek na kartičke Vlastné zoznamy. Celkový postup je analogický ako v predchádzajúcom prípade.

3.10.2

Tvorba číselných postupností

Excel umožňuje vytvoriť viacero druhov postupností. Implicitne má nastavenú aritmetickú postupnosť. Ak do dvoch buniek napíšeme čísla napr. 3 a 7, vyznačíme ich a za úchytný štvorec vybranej oblasti (kurzor sa zmení na +) technikou drag and drop (ťahaj a pusti) vyznačíme ďalšie bunky, vypíšu sa hodnoty zväčšené o tzv. diferenciu. Iné druhy postupností môžeme vytvoriť pomocou hlavného menu výberom položiek Úpravy, Vyplniť a Rady. Zobrazí sa dialógové okno (obr. 3.3):

16

Postupnosť bude vytvorená v riadkoch alebo stĺpcoch

Druh postupnosti

Obr. 3.3 Dialógové okno na vytvorenie postupnosti Význam mnohých pojmov je zrejmý. Preto objasníme len nasledovné: Veľkosť kroku - ak zvolíme aritmetickú postupnosť, Lineárny, bude táto hodnota udávať diferenciu, ak geometrickú, Geometrický, bude uvedená hodnota udávať kvocient. Konečná hodnota - hodnota, ktorú neprevýši posledný člen postupnosti. Trend - zadanými údajmi preloží priamku metódou najmenších štvorcov, pričom zadané hodnoty zmení tak, aby ležali na priamke.

3.11

Automatické doplňovanie údajov

Excel umožňuje automatické doplnenie celého textu na základe zhody prvých zapísaných znakov s niektorou z položiek v tom istom stĺpci nad bunkou. Predpokladom je označené políčko „Umožniť Automatické dokončovanie pre hodnoty buniek“. Políčko nájdeme po zadaní príkazu hlavného menu Nástroje, Možnosti - Úpravy. Automaticky možno doplňovať len textové údaje. Doplnenie sa vykonáva len v prvej bunke pod posledným údajom, pričom sa hľadá zhoda vo všetkých údajoch v stĺpci. Nemusíme sa obávať, že zapíšeme iný údaj. Ak pokračujeme v zápise ďalej, zapíše sa text, ktorý požadujeme (obr. 3.4).

Obr. 3.4 Automatické doplnenie textu na základe zhody. Do bunky pod posledným údajom v stĺpci možno doplniť údaj, ktorý sa v stĺpci už raz vyskytuje. Ak vyberieme príkaz zo skráteného resp. kontextového menu Vybrať v rozbaľovacom zozname (skrátené kontextové menu bude sa objaví po stlačení pravého tlačidla na myši), zobrazí sa zoznam všetkých položiek bez opakovania. Položku vyberieme myšou alebo kurzorovými klávesmi (obr. 3.5).

17

Obr. 3.5 Ponuka už existujúcich položiek v zozname

3.12

Iné vkladanie údajov

Excel ponúka rôzne možnosti vkladania údajov. Najprv je potrebné údaje skopírovať do medzipamäte – schránky (príkaz Úpravy – Kopírovať resp. kombinácia kláves Ctrl + C) a potom zadať Úpravy – Prilepiť špeciálne. Otvorí sa dialógové okno Prilepiť špeciálne. V okne si možno vybrať, čo a ako sa má do listu vložiť. Prepínač Všetko znamená to isté ako príkaz Úpravy – Prilepiť resp. Ctrl + V, alebo len Vzorce, Hodnoty alebo Formáty. Možno takto upraviť aj šírky stĺpcov, alebo prekopírovať len Komentáre (obr. 3.6). Ak obsahuje medzipamäť resp. schránka číselné hodnoty, môže sa obsah cieľových buniek prepočítať prepnutím do niektorej polohy prepínača Operácie. Tak možno napr. ku všetkým hodnotám cieľovej oblasti pripočítať rovnaké číslo.

Obr. 3.6 Iné vkladanie údajov zo schránky

18

4 Tvorba tabuľky
Pod tabuľkou si môžeme predstaviť množinu buniek s údajmi, ktoré spolu súvisia. Tabuľkový procesor spracováva hodnoty v bunkách a tým reaguje na zmenu vstupných údajov. Vytvorme tabuľku čistých príjmov pracovníkov v 1. štvrťroku podľa obr. 4.1. (Firma nie je uvedená a podoba mien je čisto náhodná).

=SUM (C2:C5)

=C2+D2+E2

=F2/$C$7

Obr. 4.1 Tabuľka so vzorcami Niekoľko drobných rád pri zadávaní údajov do tabuľky: - pri výbere bunky, do ktorej chceme zadávať údaje, stačí nabehnúť kurzorom na požadovanú bunku a stisnúť ľavé tlačidlo na myši a začať zadávať údaje, - ukončenie zadávania možno potvrdiť myšou na riadku vzorcov, stlačením klávesu Enter alebo klávesom na pohyb kurzora (šípky), čím sa môžeme nastaviť na ďalšiu bunku a pokračovať v zadávaní údajov, - každý vzorec začíname písať znamienkom = . Teda do bunky F2 napíšeme =C2+D2+E2 , - adresy buniek môžeme zadávať z klávesnice. Jednoduchšie po napísaní = môžeme kliknúť na bunku, ktorú vkladáme do vzorca a Excel sám vloží adresu bunky do vzorca, - pri vkladaní vzorcov do riadkov 3, 4 a 5 treba využiť funkciu „automatické vypĺňanie“ t.j. ťahanie za pravý dolný roh bunky. Adresy sa vo vzorcoch menia (relatívna adresa), o čom sa možno presvedčiť v riadku vzorcov. Ak je adresa označená znakom $, táto sa nemení (viď ďalšiu kapitolu), - treba využívať preddefinované funkcie, v našom prípade funkciu súčtu. Nastavíme sa na bunku C6 a kliknime na tlačidlo nástrojovej lišty . Okolo buniek C2 a C5 začne „obtekať“ tenká prerušovaná čiara, ktorá indikuje výber oblasti pre sčítanie buniek. Opäť technikou drag and drop môžeme určiť inú plochu ako operandy do funkcie súčtu funkciou „automatické vypĺňanie“ doplníme ostatné bunky.

-

Výsledkom je tabuľka podľa obrázku. Vzorce môžeme vidieť v riadku vzorcov po kliknutí na príslušnú bunku. Takto vytvorenú tabuľku možno graficky upraviť, tzv. sformátovať.

19

4.1

Vzorce

Tabuľkový procesor je predovšetkým prostriedok na spracovanie vložených dát. Základom pre to je možnosť zadávať zložené výrazy - vzorce. Tieto vzorce umožňujú spočítať hodnotu určitej bunky na základe hodnôt iných buniek. Vzorce sa skladajú z operandov, čo sú adresy alebo mená buniek, funkcie, konštanty a z operátorov, ako je operátor sčítania, násobenia, delenia, rozsahu atď.
operand

= B12 + 236
adresa bunky operátor konštanta

Vzorec vždy začína znamienkom =. Použité operátory sa delia na aritmetické, textové, relačné a adresové. Aritmetické operátory: + - sčítanie - odčítanie * - násobenie / - delenie % - percento ( vydelí hodnotu číslom 100 ) ^ - umocnenie Textový operátor: & - spojenie textových reťazcov Relačné operátory: = - rovná sa < - menší ako > - väčší ako <= - menší alebo rovný ako >= - väčší alebo rovný ako <> - nerovná sa Adresové operátory: : - rozsah (A1: A10 predstavuje všetky bunky medzi A 1 až A 10 včítane) medzera - prienik (A1:D4 C3:E5 predstavuje bunky patriace súčasne do oboch oblastí, teda C3:D4) , - zjednotenie niekoľkých oblastí Dôležité je poradie, v ktorom sa operátory vyhodnocujú: : - rozsah medzera - prienik , - zjednotenie - negácia 20

% - percentá ^ - umocnenie */ - násobenie a delenie +- sčítanie a odčítanie & - spojenie textových reťazcov < > >= >= - porovnávanie Operátory s rovnakou prioritou sa vyhodnocujú zľava doprava.

4.2

Absolútne a relatívne adresy.

Výrazy s rôznym typom adresovania sa rôzne správajú pri kopírovaní a presúvaním obsahu buniek. V tvorbe tabuľky v predchádzajúcej časti sme si mohli všimnúť, že pri automatickom vyplňovaní (ťahanie za pravý dolný roh bunky) sa menili ako čísla riadkov tak písmená stĺpcov. Ak sa adresa bunky vo vzorci mení s polohou vzorca, hovoríme o relatívnej adrese. Niekedy však potrebujeme zachovať odkaz na bunky vo vzorci nezávisle od novej polohy vzorca. V prípade, ak adresa bunky je stále rovnaká, hovoríme o absolútnej adrese napr. pri násobení čísel koeficientmi. Spôsob zobrazenia relatívnej a absolútnej adresy: A1 - relatívna adresa $A$1 - absolútna adresa $A1 alebo A$1 - zmiešaná adresa Adresu buniek môžeme zadávať z klávesnice alebo pomocou klávesu F4. Postupným stláčaním F4 sa adresa bunky zmení z relatívnej na absolútnu, ďalej na zmiešanú s absolútnym riadkom, s absolútnym stĺpcom a tak stále dokola. V našom príklade na obr.4.1 si to môžeme vyskúšať v stĺpci G.

4.3

Funkcie

Na spracovanie vložených údajov môžeme používať funkcie. Funkcia v Exceli je rovnako ako vzorec uvádzaná =, za ňou nasleduje meno funkcie a nakoniec argumenty uzatvorené v okrúhlych zátvorkách. Funkcia vráti výsledok do bunky, v ktorej je umiestnená. V riadku vzorcov vidíme celú zadanú funkciu. Ako argumenty môžu byť: - adresy buniek alebo oblastí - názvy buniek alebo oblastí - konštanty: číslo, text, dátum (konštanta nezačína znakom = ) - funkcie (tzv. vnorené funkcie pričom sa znak = neuvádza - vzorce - logické hodnoty - chybové hodnoty - matice konštánt. Funkcie môžu mať až 30 argumentov. Každý z argumentov musí byť kratší ako 256 znakov a celá funkcia nemôže byť dlhšia ako 1024 znakov. 21

Možno rozlíšiť 3 hlavné skupiny funkcií: - základné (interné) funkcie Excelu, ktorých je 9 skupín - rozširujúce funkcie pre dátovú analýzu, ktoré možno pridať dodatočne príkazom Nástroje – Doplnky a označením položky „Analytické nástroje“ - vytvorené funkcie užívateľom pomocou programovacieho jazyka Microsoft Visual Basic for Applications (VBA) Funkcie je možné zadať niekoľkými spôsobmi: - stlačením tlačidla „Vložiť funkciu“ (fx) na vzorcovom paneli, vyvoláme dialógové okno „Vloženie funkcie“ (obr. 4.2). Vyberieme príslušnú funkciu. Funkcie sú rozdelené podľa kategórie a v dolnej časti okna sú názvy funkcií z vybranej kategórie. Takto sa pomerne jednoducho orientujeme pri vyberaní požadovaných funkcií.

Obr. 4.2 Výber funkcie zadaním príkazu z hlavného menu Vložiť – Funkcia . Znova sa vyvolá príslušné okno a postup je rovnaký ako v predchádzajúcom prípade. zápisom „=“ z klávesnice a následne stlačením tlačidla so šípkou v tomto riadku si vyberieme funkciu. Postup je analogický ako v predchádzajúcich prípadoch. priamym zápisom funkcie i argumentov do vzorcového panela.

Okno pre zadávanie argumentov zobrazuje aj opis funkcie, opis argumentov aj políčka na zadávanie argumentov. Argumenty možno do príslušných políčok doplniť : - vyznačením kurzorom myši (metódou ťahaj a pusti tzv. drag and drop), keď sa poloha myši vkladá ako argument. Okno sa skryje a zostane iba samotné políčko. - zápisom z klávesnice (obr. 4.3).

22

Tlačidlo na zmenšenie okna

Obr. 4.3 Okno na zadávanie argumentov Ak nám okno zavadzia pri vkladaní príslušných argumentov, možno ho uchopiť za hociktorú šedú oblasť a presunúť ho alebo zmenšiť na riadok, ak stlačíme tlačidlo vpravo v riadku. Jeho opätovným stlačením sa okno objaví.

4.4

Zobrazenie chybových hlásení

Funkcie a vzorce zobrazia v bunke výslednú hodnotu. V prípade, že zadaná funkcia alebo vzorec, príp. vstupné hodnoty nevyhovujú pravidlám zápisu, zobrazí sa v bunke namiesto výsledku chybové hlásenie. Jednotlivé chybové hlásenia a ich možnú príčinu vzniku ukazuje nasledujúca tabuľka 4.1:

4.4.1

Chybové hlásenie

4.4.2

Opis chyby

#NEPLATNÝ! #DELENIE NULOU! #HODNOTA! #ODKAZ! #NÁZOV? #ČÍSLO! #NEDOSTUPNÝ ######

prienik dvoch oblastí, ktoré sa neprekrývajú pokus deliť nulou nesprávny typ argumentu alebo operandu odkaz na bunku, ktorá neexistuje, použitie odkazu na aplikáciu, ktorá nie je spustená chybný názov funkcie nesprávne zadané číslo hodnota nie je funkcii alebo vzorcu dostupná, vynechanie povinného argumentu vo funkcii výsledok nemožno zobraziť pre malú šírku stĺpca Tab. 4.1 Chybové hlásenia

23

24

5 Grafická úprava buniek (formátovanie buniek)
V predchádzajúcej kapitole sme opísali základné spôsoby naplnenia tabuliek údajmi. Nemenej dôležitým aspektom je okrem obsahu aj grafická podoba tabuliek. Ak má tabuľka slúžiť ako kvalitný výstupný dokument, je dôležité, aby boli podstatné údaje oddelené od údajov menej podstatných, aby boli údaje zobrazené s dostatočným počtom desatinných miest a čitateľným písmom, ...čiže aby sme dostatočne kvalitne dokázali prezentovať výsledky našej práce. Skôr ako začneme formátovať, musíme vyznačiť oblasť buniek. Nemusí ísť o súvislú oblasť. Vyznačením nesúvislých oblastí možno urýchliť proces formátovania jednotlivých oblastí, pretože formátujeme vyznačené oblasti naraz. Nezávislú oblasť vytvoríme pri stlačenom klávese Ctrl. 3D súvislú oblasť (medzi hárkami) vytvoríme stlačením klávesu Shift a kliknutím kurzorom myši na záložke listu. 3D nesúvislú oblasť vytvoríme pri stlačenom klávese Ctrl a kliknutím na záložke listov. Po označení oblasti buniek zadáme príkaz Formát – Bunky. Otvorí sa nám dialógové okno, ktoré obsahuje 6 kariet, na ktorých možno súčasne sformátovať všetky atribúty buniek bez toho, aby sme okno museli viackrát vyvolávať.

5.1

Úprava zobrazenia čísel

Toto formátovanie sa prejaví iba v zobrazení čísel, na vnútornú presnosť nemá vplyv, čo je vždy 15 čísiel. Po postupnosti príkazov Formát – Bunky zvolíme si kartu Číslo. Implicitne je nastavený formát Všeobecný. Formáty čísel možno vyberať zo zoznamu druhov a u nich nastaviť jednotlivé druhy zobrazenia. Ak zvolíme druh Vlastné, môžeme si vybrať preddefinované formáty, alebo do políčka Typ zapísať vlastný formát čísel pomocou kódov. Doplnené vlastné formáty možno vymazať tlačidlom Odstrániť. (Obr. 5.1). Formáty od tvorcu aplikačného programu Excel odstrániť nemožno.

Obr. 5.1 Okno na formátovanie čísel 25

Niektoré kódy používané vo vlastnom formáte: # - na pozícii kódu sa zobrazí číslo rozdielne od nuly (nula sa nezobrazí) 0 - na pozícii sa zobrazí číslo (nula sa taktiež zobrazuje) ? - na pozícii sa zobrazí číslo rozdielne od nuly, používa sa pri zarovnávaní čísel s desatinnou časťou v bunkách pod sebou medzera - oddeľovač tisícok , - oddeľovač desatinnej časti @ - zadaná hodnota sa zobrazí ako text [farba] - farba textu (červené, modré, zelené, biele, žlté,...) [podmienka] - podmienka na použitie formátu (< , > , = , <= , >= , <>) ; - oddeľovač jednotlivých formátov \ - oddeľovací znak, napr. 000\ 00 pre zápis PSČ % - indikátor prepočtu na percentá Sk - znak pre zápis meny _ - medzera sa rovná šírke ďalšieho znaku , používa sa pre zarovnaní čísel d - deň sa zobrazí ako jednociferné alebo dvojciferné číslo dd - deň sa zobrazí ako dvojciferné číslo (01, 07, 28 ) ddd - dvojznaková skratka dňa v týždni dddd - plný názov dňa v týždni m - mesiac sa zobrazí ako jednociferné alebo dvojciferné číslo, mm - mesiac sa zobrazí ako dvojciferné číslo (01, 07, 12 ) mmm - mesiac sa zobrazí rímskymi číslicami mmmm - plný názov mesiaca rr - posledné dvojčíslie roka rrrr - celý rok (napr. 1999). Analogicky h (hh), m (mm), s (ss) pre hodiny, minúty a sekundy. Ak chceme rozlíšiť farebne výsledky v bunkách, môžeme do políčka typ zapísať takýto kód: [červené][>10000]# ##0;[modré][<=10000]# ##0 Z uvedeného príkladu je zrejmé, že čísla väčšie ako 10000 budú zobrazené červenou farbou a čísla menšie nanajvýš rovné ako 10000 budú modré. Excel možnosť podmieneného formátovania rozšíril, čím sa zaoberá samostatná kapitola. Poznámka: Požiadavka na zobrazenie oddeľovača tisícok i desatinnej časti sa nastavuje vo Windows Ovládacím paneli (Control Panel), ikona Miestne nastavenia (Regional and Language Options), v karte Regionálne nastavenia (Regional Options). Nastavený oddeľovač ovplyvňuje i zápis užívateľom definovaného formátu. Napr. ak je ako oddeľovač nastavená medzera, nemožno v tomto formáte použiť čiarku.

5.2

Zarovnanie textu a číslic v bunke

Text v bunkách je implicitne zarovnávaný doľava a čísla doprava, čo odpovedá typografickým konvenciám a navyše možno ľahko rozlíšiť textové a číselné údaje. Podľa potreby možno zarovnanie zmeniť. Komplexnú úpravu poskytuje karta „Zarovnanie“ podľa obr. 5.2. Poznámky k niektorým možnostiam, ktoré nám karta dialógového okna formátovania buniek ponúka: Vyplniť – zapísané znaky vyplnia bunku podľa aktuálnej šírky stĺpca Vľavo (so zarážkou) – odsadenie ľavého okraja bunky o zadaný počet znakov (Zarážka) 26

Zarovnať– obsah bunky sa rozdelí do viacerých riadkov v rámci jednej bunky. Medzery medzi slovami sa upravia tak, že riadok zaplní šírku bunky Centrovať na stred výberu – zarovná obsah ľavej bunky na stred vodorovne vybranej oblasti buniek. Obsah bunky zostane v ľavej bunke, aj keď je vizuálne strede. Toto je vhodné pre nadpisy tabuliek. Zalomiť text – text sa naskladá do viacerých riadkov v jednej bunke. Počet riadkov závisí na šírke stĺpca a dĺžke textu. Prispôsobiť bunke – zmenší sa veľkosť písma tak, aby sa text vmestil do bunky podľa jej šírky. Zlúčiť bunky – vybrané bunky sa zlúčia do jednej bunky. Adresa bunky ostane tá, ktorá bola ako ľavá horná vo vybranej oblasti. Orientácia – natočenie údajov v bunke možno uchopením ručičky v polkruhu alebo priamym zadaním stupňov v počítadle. Smer textu – uplatní sa v texte písanom sprava doľava. Implicitne je „Kontext“. Obmedzené možnosti zarovnávania údajov v bunkách ponúka aj nástrojová lišta pre formátovanie.

Obr. 5.2 Možnosti zarovnania údajov v bunkách

5.3

Úprava písma

Aby bola čitateľnosť tabuľky čo najlepšia, typ písma, jeho veľkosť a štýl by mali byť vyvážené. V celom súbore (zošite) sa po jeho otvorení používa pre zápis dát typ a veľkosť písma taký, ktorý je nastavený príkazom Nástroje – Možnosti v karte „Všeobecné“ v položkách „Štandardné písmo“ a „Veľkosť“. Ak chceme zmeniť vo vybranej oblasti alebo v aktívnej bunke písmo, vyberieme z hlavného menu Formát položku Bunky. V dialógovom okne si vyberieme kartu „Písmo“. Úprava textu 27

podľa dialógového okna nie je žiadny problém a poznáme ju aj z iných aplikácií pod Windows, a preto sa týmto príkazom nebudeme bližšie zaoberať.

5.4

Kreslenie rámčekov tabuliek

Z vložených údajov sa stane tabuľka až po zakreslení rámčekov ohraničujúcich vybrané bunky. Možnosti sú na obr. 5.3.

Obr. 5.3 Možnosti kreslenia rámčekov tabuľky. Postup pri kreslení rámčekov: - označíme oblasť, v ktorej chceme rámčeky kresliť - príkazom Formát – Bunky vyvoláme okno Formát buniek a vyberieme kartu „Orámovanie“ - kurzorom myši klepneme na „Štýl“ čiary . V ďalšom máme tri možnosti: - myšou klepneme na okraj obrázku, na vynášacie čiary , resp. na predpokladané uhlopriečky. Klepneme po prvý raz , čiara sa zakreslí. Po druhom klepnutí sa čiara zruší. - klepneme na tlačidlá po stranách obrázku. Opakované klepnutie čiary zruší. - na globálne úpravy používame horné tlačidlá „Žiadne“, Vonkajšie“ alebo „Vnútorné“. Nakoniec potvrdíme výber tlačidlom OK. Čiary okolo vybranej oblasti buniek možno zakresliť aj pomocou tlačidla „Orámovanie“ na paneli s nástrojmi „Formátovanie“. Nie sú ale ponúkané všetky možnosti, ktoré nám poskytuje už spomenuté dialógové okno. Ďalšou možnosťou je využitie panela s nástrojmi Orámovanie, ktorý ponúka rýchlejšie možnosti orámovania príp. vymazávania orámovania. 28

5.5

Úprava farebného pozadia buniek.

Pozadie buniek môže podstatne zlepšiť čitateľnosť tabuliek, príp. zvýrazniť niektoré údaje, na ktoré chceme čitateľa upozorniť. Príkazom Formát - Bunky sa dostaneme do karty „Vzorky“. V ponuke je 56 podkladových farieb. Poslednou možnosťou je zrušenie farby, podklad bude potom podľa nastavenia vo Windows. Ak klikneme na políčko „Vzorka“, zobrazí sa paleta 18 vzoriek a 56 farieb, ktoré môžeme priradiť vybranej oblasti. Na rýchlu zmenu možno použiť tlačidlo na paneli nástrojov na formátovanie. Tu je k dispozícii paleta 40 farieb a naviac políčko s názvom „Bez výplne“.

5.6

Uzamknutie buniek proti prepisu

Posledným atribútom, ktorým môžeme bunky formátovať, je ich ochrana proti prepisovaniu. Týmto možno zabrániť, aby ich prepísala nepovolaná osoba. Ochrana pozostáva z troch krokov: - označme tie bunky, do ktorých bude možné zapisovať alebo ich prepisovať - príkazom Formát – Bunky na karte „Ochrana“ zrušíme označenie pri položke „Zamknúť bunky“ - uzamkneme hárok príkazom Nástroje – Ochrana – Zabezpečiť hárok. Vložíme heslo, ktoré nám potom umožní aj zrušiť ochranu. Postup pri výbere možností nie je zložitý, je opísaný v príslušných dialógových oknách a preto ho nebudeme hlbšie analyzovať. Odomknutie buniek je analogické ako ich uzamknutie.

5.7

Podmienené formátovanie

Čitateľnosť tabuľky zlepšíme podmieneným formátovaním. Umožňuje nám zvýrazniť údaje, ktorým máme venovať zvýšenú pozornosť. V tabuľke sa aj lepšie orientujeme, keď údaje spĺňajúce zadané kritérium sú inak sformátované ako ostatné. Môžeme to uskutočniť dvoma spôsobmi: - vytvorením vlastného formátu, ktorý obsahuje relačné operátory. Viď kapitolu o úpravách zobrazenia čísel. - použitím príkazu Formát- Podmienené formátovanie. Tu máme možnosť podľa splnenej (nesplnenej) podmienky nastaviť písmo, ohraničenie buniek a vzorky. Pre každý atribút je samostatná karta, na ktorej možno formátovanie nastaviť. Po zadaní príkazu Formát – Podmienené formátovanie sa zobrazí príslušný panel. V ňom možno nastaviť až tri podmienky, a to pre hodnotu alebo vzorec (obr. 5.4 )

29

Obr. 5.4 Dialógové okno na podmienené formátovanie Postup pri podmienenom formátovaní: - vyberme bunky, ktoré chceme sformátovať - zadajme príkaz Formát – Podmienené formátovanie - vyberme položku, ktorú chceme formátovať. Častejšie to bude asi „Hodnota bunky“ - zo zoznamu vyberme reláciu - doplníme hodnoty alebo vzorce, ktoré určujú hranice pre reláciu - stlačíme tlačidlo „Formát“ - podľa potreby stlačíme tlačidlo „Pridať“ a posledné 3 kroky zopakujeme - nastavenie formátovania potvrdíme tlačidlom „OK“ . Poznámky pre použitie vzorcov: Ak na stanovenie hranice podmienky použijeme vzorec, tento musí začať znakom „=“ a vráti číslo. Ak použijeme znak relácie (<,>,=,<> a pod.) pri zápise podmienky, tento vzorec vráti hodnotu „PRAVDA“ alebo „NEPRAVDA“. Pri vzorcoch musíme uvažovať s absolútnou a relatívnou adresou. Pri absolútnej adrese (znak „$”) bude odkaz na rovnakú bunku a pri relatívnej adrese sa upraví podľa smeru ďalších buniek od východiskových buniek.

5.8

Štýl buniek

Pri práci s tabuľkami si každý časom vytvorí akýsi vlastný rukopis tvorby tabuliek. Napr. formát čísiel, ohraničenie, tvar písma a pod. bude autor tabuliek používať podľa vlastného vkusu. Bolo by určite veľmi zdĺhavé, keby sme každú oblasť tabuľky formátovali postupne pomocou príkazov, ktoré sme opísali v predchádzajúcich kapitolách. Excel umožňuje na zefektívnenie práce definovať a následne používať tzv. štýly. Treba si ale uvedomiť podstatnú okolnosť: štýl sa určuje podľa jednej bunky. To má dopad pri zakresľovaní čiar. Tu je rozdiel medzi kartou „Orámovanie“ v okne „Formát buniek“, kde nastavujeme formátovanie okrajov o vnútrajškov buniek. Štýly sa aplikujú a modifikujú príkazom Formát – Štýl. Je preddefinovaných 6 štýlov, každý z nich je pomenovaný (obr. 5.5).

30

Obr. 5.5 Okno na výber a úpravu štýlov Postup pri pridaní nového štýlu: - bunkový kurzor nastavíme na bunku, ktorej formát chceme opakovane využívať ako štýl - zadáme príkaz cez hlavné menu Formát – Štýl - do políčka Názov štýlu zapíšeme názov nového štýlu. Štýl bunky sa načíta do panelu Štýl a jednotlivé položky „Štýl obsahuje“ ukazujú prevzaté formáty. - pokračovanie je možné dvomi spôsobmi: 1. stlačíme tlačidlo „Upraviť“ a na kartách okna „Formát buniek“ si upravíme formátovanie podľa svojich predstáv. na záver stlačíme tlačidlo „OK“ 2. stlačíme tlačidlo „Pridať“ a spôsob formátovania bunky sa prevezme do zoznamu štýlov. - stlačíme tlačidlo „OK“.

5.9

Automatické formátovanie tabuliek

Excel obsahuje tzv. Automatický formát, ktorý nám umožní vopred označenú oblasť kompletne sformátovať podľa pripraveného vzoru, t.j. automatickým formátom možno upraviť naraz celú tabuľku (obr. 5.6). Postup pri automatickom formátovaní tabuľky: Vyznačíme oblasť a zadáme príkaz z hlavného menu „Formát – Automatický formát“. Môžeme si vybrať zo 16 preddefinovaných formátov tabuliek a „Žiadny“, ktorý slúži na zrušenie všetkých doterajších úprav. Buď stlačíme tlačidlo „OK“ a zmena sa zrealizuje alebo stlačíme tlačidlo „Možnosti“ a zobrazí sa 6 zaškrtávacích políčok na úpravu návrhu: - označenie ponecháme a všetky nastavené atribúty sa použijú na sformátovanie vyznačenej oblasti - zrušíme označenie niektorých políčok a zmena sa okamžite premietne do ukážky. Veľkou prednosťou je rýchlosť použitia a jednotnosť formátovania tabuliek.

31

Obr. 5.6 Automatický formát tabuliek

5.10

Overovanie vstupných údajov

Pre zápis údajov do bunky môžeme určiť podmienku, ktorú musí splniť. Môžeme tak zamedziť zápisu nesprávnych údajov. Postup pri nastavení overovania vstupných údajov: - vyberieme bunky, pri ktorých chceme vstupné hodnoty kontrolovať. Môže to byť i nesúvislá oblasť. - zadáme príkaz z hlavného menu Údaje – Overenie - vyberieme typ údajov, pre ktoré určíme podmienku na vstup údajov. Možnosti v karte „Nastavenia“ sa menia v závislosti na vybranom type údajov. - doplníme podmienku - napíšeme správu, ktorá sa má zobrazovať pri zadávaní údajov. Políčko „Zobraziť správu po vybratí bunky“ musí byť zaškrtnuté. - v karte „Chybové hlásenie“ napíšeme text, ktorý sa má zobrazovať pri zadaní údaja nespĺňajúceho podmienku. Políčko „Zobraziť chybové hlásenie pri zadaní neplatných údajov“ musí byť zaškrtnuté. - stlačíme tlačidlo „OK“ Overenie vstupu údajov umožňuje zobraziť hlásenie pri aktivácii bunky a zakázať zápis nesprávnych údajov alebo ho povoliť po predchádzajúcom upozornení.

5.11

Skrátené kontextové menu

Niektoré príkazy pri rôznych činnostiach používame častejšie, iné menej. Skrátené kontextové menu obsahuje najčastejšie používané príkazy a jeho obsah je závislý od 32

východzieho stavu pri jeho aktivovaní, t.j. iné príkazy bude obsahovať pre bunku, diagram, kopírovanie, presúvanie, automatické vyplňovanie atď. T.j. vždy po tom, ako stlačíme pravé tlačidlo myši, objaví sa v tesnej blízkosti miesta, kde sa nachádzame, skrátené kontextové menu. Ak klikneme pravým tlačidlom na bunku alebo vyznačenú oblasť, zobrazí sa skrátené menu podľa obr. 5.7. V skrátenom menu Excel ponúka najpoužívanejšie príkazy, z ktorých väčšinu už poznáme: Vložiť... - zobrazí sa dialógové okno pre vloženie bunky, resp. riadku alebo stĺpca Odstrániť - vymaže bunku podľa volieb v dialógovom okne Vymazať obsah - vymaže obsah bunky, resp. vybranej oblasti buniek Vložiť komentár – umožní vložiť do buniek ďalšie informácie, ktoré možno nechať zobraziť, označiť červeným bodom v pravom hornom rohu bunky, že bunka obsahuje komentár alebo všetky informácie skryť. K režimom zobrazenia sa dostaneme cez príkazy Nástroje – Možnosti - Zobrazenie . Formátovať bunky- zobrazí dialógové okno pre formátovanie buniek. Vybrať v rozbaľovacom zozname - zobrazenie všetkých položiek zo stĺpca nad aktívnou bunkou bez opakovania. Uvedené príkazy ako aj ďalšie Vystrihnúť, Kopírovať, Prilepiť, Prilepiť špeciálne... už boli objasnené v predchádzajúcich kapitolách.

Obr. 5.7 Skrátené kontextové menu pri vyznačenej oblasti (po stlačení pravého tlačidla na myši) Kopírovanie alebo presunutie bunky môžeme vykonať aj pomocou pravého tlačidla na myši. Nastavíme kurzor na okraj bunky (kurzor sa zmení na šípku) a technikou drag and drop (teraz pravým tlačidlom na myši) presunieme bunku na požadované miesto. Po uvoľnení tlačidla sa zobrazí nasledovné skrátené menu (obr.5.8).

33

Obr. 5.8 Skrátené kontextové menu pri ťahaní pravým tlačidlom na myši Rovnakým spôsobom (pravým tlačidlom na myši) možno aktivovať automatické vypĺňanie buniek. Pripomenieme len, že bunku alebo oblasť treba ťahať za úchytný štvorec, pričom kurzor sa zmení na +. Domnievame sa, že pojmy na obrázku sú z predchádzajúcich kapitol dostatočne známe a preto sa nimi nebudeme bližšie zaoberať.

5.12

Orientácia v liste

Vytvorená tabuľka často prekračuje plochu aktívneho okna a stráca sa prehľad v takto vytvorenej tabuľke. Často potrebujeme viacej nezávislých pohľadov na veľkú tabuľku. V pracovnom liste v ktorom je vytvorená naša tabuľka, sa možno lepšie orientovať, ak použijeme položku Rozdeliť z hlavného menu Okno (obr. 5.9).

Obr. 5.9 Možnosti na zlepšenie orientácie v pracovnom hárku

34

Rozdelenie okna na dve alebo štyri časti umožňuje nezávisle sledovať iný výrez dokumentu. Zrušiť rozdelenie možno použitím položky Odstrániť rozdelenie, ktorá sa nachádza pod príkazom hlavného menu Okno alebo dvojnásobným kliknutím na rozdeľovaciu čiaru. Rýchlejšou možnosťou ako dosiahnuť rozdelenie okna, je nabehnúť kurzorom na deliacu čiaru nad rolovacou lištou, stlačiť ľavé tlačidlo myši a pretiahnuť kurzor do plochy okna (obr.5.10). Kurzor sa premení na deliacu čiaru a tú umiestnime tam, kde ju potrebujeme a uvoľníme tlačidlo na myši. Obdobná deliaca čiara je i na vodorovnej deliacej lište.
Deliaca čiara

Obr. 5.10 Možnosť rozdelenia okna V hornom riadku a v ľavom krajnom stĺpci tabuľky sa obvykle objavujú titulky a názvy vkladaných údajov. Pri zadávaní veľkého množstva dát sa ale celá tabuľka posúva a preto je žiaduce, aby titulky boli fixované na svojom mieste. To dosiahneme výberom položky Ukotviť priečky z hlavného menu Okno. Bunky hore a vľavo od polohy aktívnej bunky budú zafixované. Opätovné uvoľnenie zafixovaných titulkov sa urobí príkazom Okno – Zrušiť priečky.

5.13

Kontrola pravopisu

Aj keď sa v tabuľkových procesoroch málokedy vyskytujú rozsiahlejšie texty, aj tak je existencia korektora pravopisu prínosom, pretože aj v relatívne krátkom texte možno urobiť chybu. Kontrola pravopisu sa spúšťa - položkou Pravopis z hlavného menu Nástroje. - stlačením klávesu F7 - stlačením tlačidla na paneli nástrojov. Kontrolujú sa ako obsahy buniek, tak aj text zapísaný ako komentár v bunke. Ak pred vykonaním kontroly pravopisu vyznačíme nejakú oblasť, bude iba táto kontrolovaná. V prípade, že nevyznačíme nič, bude kontrolovaný celý pracovný hárok včítane hlavičky a päty. Časť textu, v ktorom sa vyskytuje chyba, je uvedená v dialógovom okne „Kontrola pravopisu“. V dialógovom okne možno nastaviť jazyk slovníka, v ktorom má prebehnúť kontrola pravopisu.

35

36

6 Tvorba grafov
Jednou z veľmi užitočných funkcií Excelu je tvorba grafov. Pre grafy sa nachádza stále nové a nové uplatnenie a tým je spojené ich neustále vylepšovanie – nové možnosti a typy. Majú často lepšiu vypovedaciu schopnosť ako tabuľky. V Exceli možno vytvoriť celý rad najrôznejších grafov, ktoré možno použiť v rozličných oblastiach. Postup pri tvorbe grafov: - zápis údajov do hárka Excelu, t.j. slov, položiek, písmen, znakov a čísel, ktoré chceme mať v grafe. Potom si označíme zadané údaje a klepneme na tlačidlo predstavujúce graf resp. vyberieme príkaz z hlavného menu Vložiť – Graf. - otvorí sa okno „Sprievodca grafom“ (obr.6.1), ktoré má 4 časti a musíme nimi postupne prejsť. Môžeme si vybrať zo 14 typov grafov a okrem toho má každý typ 2 až 7 podtypov. Navyše si môžeme vytvoriť vlastné užívateľské typy grafov, pričom 20 už je vytvorených ( sú preddefinované). - v ďalšom kroku môžeme znova zvoliť pôvod zdrojových dát. Ak sme mali oblasť už vyznačenú, toto nastavenie ponechajme. - tretí krok („Sprievodca grafom“) je dôležitý. Možno si nastavovať vlastnosti grafu, ktorými ovplyvníme celkový vzhľad výsledného produktu (názov grafu, zobrazenie osí, mriežku, umiestnenie legendy, menovky údajov, zobrazenie tabuľky údajov). - v poslednom kroku si iba zvolíme, či daný graf bude na liste s tabuľkou alebo sa vytvorí ako nový hárok Excelu. Graf vložený k údajom má charakter plávajúceho objektu, s ktorým možno tak ako s akýmkoľvek objektom pohybovať, meniť jeho rozmery... .Implicitne sa graf vytvára uprostred okna hárka, v ktorom sa nachádza tabuľka.

Obr. 6.1 Prvý krok pri tvorbe grafu

37

6.1

Formátovanie grafu

Graf môže mať nekonečné množstvo podôb. V zásade ide o grafy dvojrozmerné alebo trojrozmerné, kde tretí rozmer, hĺbku, tvorí počet údajových radov. Môže byť samostatný alebo s pripojenými údajmi pod grafom. Do grafu môžeme doplniť trendy, kĺzavý priemer alebo chybové úsečky. Zmeny uskutočnené v zdrojových dátach sa okamžite premietnu do grafu. Graf umiestnený na liste s údajmi možno tlačiť samostatne alebo spolu s tabuľkou. Graf umiestnený v samostatnom liste môže byť zobrazený dvomi spôsobmi : v automatickej veľkosti (dodržujú sa pomery strán) alebo vo veľkosti okna, kedy graf zaplní celé okno (pomery strán sa nedodržia). Pri prechádzaní kurzorom myši cez vytvorený graf, kde sa nachádza kurzor, sa zobrazujú názvy oblastí a prvkov grafu (spoločný názov objekty), a pri dátových bodoch taktiež ich umiestnenie v zdrojovej tabuľke a ich hodnota. Vzhľadom k tomu, že pri editovaní grafu sa používa množstvo termínov, ukážeme si na obr. 6.2 jednotlivé názvy objektov.
Zobrazovaná oblasť Názov grafu

Platy

Hlavná mriežka osi kategórií

Hlavná mriežka osi hodnôt
21000

21500 21000 21000 20800 20800

Os hodnôt
SKK

20500 20000 19500 19000 18900 19000 Martin Klingáč Adam Šangala

Názov osi hodnôt

18500 18000 17500 Martin Klingáč Adam Šangala Január 18900 21000 Február 19000 20800 Mesiace 2005 Marec 21000 20800

Legenda

Menovky údajov

Tabuľka dát

Názov osi kategórií

Obr. 6.2 Názvy oblastí a prvkov grafu Ak sa nám niečo nepáči na type grafu, veľkosti písma nadpisu, názve osí, čísiel, stačí ľavým tlačidlom myši označiť daný objekt grafu, s ktorým nie sme spokojní a pravým tlačidlom vyvoláme skrátené kontextové menu. V kontextovom menu je napr. ponuka „Formát osi“ , kde môžeme nastaviť vlastnosti osi, mierku, písmo, zarovnať popisy osí a pod. V kontextovom menu celého grafu môžeme od základu graf zmeniť a pomocou ponuky „Možnosti grafu“ vstúpime do počiatočného sprievodcu tvorby grafom, takže možno znova graf doplniť alebo odstrániť nedostatky, ktoré sme urobili pri prvom vytváraní grafu (obr. 38

6.3). Šikovnejší a zbehlejší používatelia Excelu formátujú objekt grafu nasledovným spôsobom: nabehnú na ten objekt grafu, ktorý chcú editovať pričom sa zobrazí názov príslušného objektu a následným dvojkliknutím ľavým tlačidlom na myši sa zobrazí príslušné dialógové okno, ktoré priamo slúži na editáciu príslušného objektu.

Obr. 6.3 Postup pri editovaní grafu a možný výsledok

6.2

Spojnica trendu

Do grafu môžeme pre vybraný dátový rad doplniť krivku, ktorá zobrazuje jeho priebeh – spojnicu trendu. Trend potom umožňuje dáta analyzovať aj pomocou odhadu budúceho vývoja. Postup: - najprv si označíme vybraný dátový rad, pre ktorý má byť trend doplnený. v našom prípade máme na výber len jeden rad. - zadaním príkazu Graf – Pridať trendovú čiaru alebo príkazom z kontextového menu Pridať trendovú čiaru získame príslušné okno - na karte Typ zvoľme niektorú krivku. Pri polynóme máme k dispozícii stupeň. Rovnice kriviek sú nasledovné: lineárna : y = ax + b logaritmická: y = aln(x) + b polynomická: y = b + a1x + a2x2 + ... + anxn , kde 2 <= n <= 6 mocninná: y = axb exponenciálna: y = aebx a kĺzavý priemer. 39

v karte Možnosti možno nastaviť ďalšie vlastnosti krivky ako názov trendovej čiary, prognózu, hodnotu Y, t.j. ktorý bod bude východzím, zobrazenie v grafe rovnicu regresiu a regresný koeficient (Zobraziť v grafe rovnicu spoľahlivosti R na druhú), ktorý určuje, ako daná rovnica vystihuje vybrané diskrétne hodnoty. Mal by byť čo najbližšie k číslu 1. Ak chceme zmeniť vzhľad spojnice trendu, môžeme na ňu kliknúť pravý tlačidlom na myši a z kontextového menu vybrať „Formátovať trendovú čiaru“ (alebo na ňu dvokliknúť ) a vybrať kartu „Vzorky“, kde možno nastaviť farbu a šírku krivky (obr. 6.4) Pri spojniciach trendov je treba experimentovať a hľadať taký priebeh, ktorý najlepšie opisuje daný dej. Univerzálnym trendom pre „rozhádzané“ údaje je polynomický priebeh najvyššieho stupňa.

-

Obr. 6.4 Graf s vloženou spojnicou trendu Údaje, ktoré sú rozhádzané, možno vyhladiť použitím kĺzavého priemeru, ktorý priebeh vyhladí a pomôže určiť základné tendencie. Jedná sa o postupnosť priemerov, pri ktorej dochádza k vyhladeniu krivky o krátkodobé výchylky. Poskytuje potom predstavu o globálnom vývoji priebehu zisťovanej premennej. Kĺzavý priemer resp. taktiež plávajúci priemer sa počíta zo vzorca: Ft = (At + At-1 + ... + At-n+1)/n kde n počet členov (zadáva sa na karte „Typ“), z ktorých sa priemer počíta t – počítaný člen nového radu. Po výpočte prvého člena sa indexy posunú o jeden údaj a znovu sa počíta priemer atď., z toho názov kĺzavý priemer. Prvá hodnota pre kĺzavý priemer je teda prvých n členov. Vzhľadom na obmedzený rozsah príručky nebudeme sa zaoberať ďalšími možnosťami editácie a vkladania parametrov do grafu. Boli vybrané len tie, ktoré umožňujú najzákladnejšie činnosti s grafom. Ďalšie si treba vyskúšať najlepšie kliknutím na určitú časť grafu a následným kliknutím pravého tlačidla na myši, čím sa otvorí skrátené kontextové menu s najpoužívanejšími príkazmi.

40

6.3

Chybové úsečky

Ak chceme zistiť, ako sa niektoré údaje odchyľujú od požadovaného priebehu, je vhodné do grafu zakresliť chybové úsečky. Do grafu možno zakresliť chybové úsečky, ktoré vyjadrujú graficky možné hodnoty chyby ku každému dátovému bodu radu. To nám môže napomôcť pri rozbore údajov, keď vidíme, ktoré údaje prekročili zadané hranice. Postup pri zakreslení chybových úsečiek: 1. Označíme rad , do ktorého majú byť chybové úsečky pridané. 2. Zadáme príkaz Formát – Vybratý rad údajov alebo cez skrátené kontextové menu Formátovať rady údajov. 3. V okne Formátovať rady údajov vyberieme kartu „Chybové úsečky Y“. 4. Doplníme parametre, ktoré určujú obsah chybových úsečiek. 5. Nastavenie potvrdíme tlačidlom OK. Chybové úsečky možno pridať k radom údajov, ktoré boli vykreslené plošným, stĺpcovým, pruhovým, spojnicovým, XY bodovým a bublinovým grafom. Nie je možné ich pridať k výsečovému, prstencovému, lúčovému grafu a k 3D grafom. Pri XY bodovom grafe sa chybové úsečky môžu určiť pre X – ové alebo Y – ové hodnoty oddelene alebo súčasne. chybová hodnota môže byť určená ako : pevná, zadaná percentom, smerodajnou odchýlkou, štandardnou chybou alebo + alebo – odchýlkou od hodnoty v bode. Dialógové okno na určovanie chybových úsečiek je na obr. 6.5.

Obr. 6.5 Dialógové okno (karta chybové úsečky) na určenie chybových úsečiek Na ďalšom obr. 6.6 vidíme zobrazené chybové úsečky s hodnotou plus a mínus 10 %. Z výsledkov meraní potom vidíme, ako priebeh nameraných hodnôt osciluje od teoreticky vypočítaných hodnôt. 41

Namerané hodnoty
50 45 40 35 30 25 20 15 10 5 0 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 y = 1,5214x + 18,895 R2 = 0,9408

Obr. 6.6 Vyhodnotenie výsledkov meraní použitím chybových úsečiek Zároveň treba poznamenať, že chybové úsečky možno formátovať a dodatočne zadávať iné požiadavky na ich vykreslenie. Rovnako je možné vytvoriť efektný graf, ktorý obsahuje obrázky a ilustruje podstatu hodnôt uvádzaných v grafe. Na prezentáciu údajov možno potom využívať farebné prechodové plochy, textúry, vzorky, obrázky. Vyberieme istý objekt grafu, napr. zobrazovanú oblasť a zadáme príkaz Vložiť – Obrázok – Zo súboru. Takto možno vkladať dopredu pripravené obrázky (napr. nakreslené v rôznych grafických editoroch) alebo obrázky stiahnuté z internetu. Typov grafov má Excel dostatočné množstvo, ale v zásade však platí, že grafy sa delia na 2D – čiže dvojrozmerné a 3D – trojrozmerné, priestorové. Priestorové grafy majú svoju vlastnú mechaniku. Ak napr. sa zmení nejaký graf na 3D graf (je jedno, či na valcový, stĺpcový, kužeľový, ihlanový). Potom z ponuky skráteného menu možno vybrať príkaz 3-D zobrazenie . Otvorí sa dialógové okno Priestorové zobrazenie. Možno tu nastaviť eleváciu, čo je natočenie grafu okolo vodorovnej osi, rotáciu, čo je otáčanie okolo zvislej osi a perspektívu, čím sa mení uhol pohľadu. Ak by došlo až k nevydareným zmenám, možno urobiť nápravu po stlačení tlačidla v tomto okne Predvolený. Pri uchopení 3D grafu za vrchol pomysleného kvádra, ktorý opisuje priestor grafu, možno ním ľubovoľne natáčať. Pri súčasnom stlačení klávesu Ctrl, sa natáčaný graf zobrazí ako drôtový model, čo umožňuje vizuálne sledovať jeho natočenie.

42

7 Práca s tabuľkou ako databázou
V ďalšom si ukážeme príkazy, ktoré robia z Excelu excelentný tabuľkový procesor. Ide o príkazy so zoznamami údajov. Jednoducho možno povedať, že na tabuľku so záhlavím sa pozerať ako na zoznam, ktorý má znaky databázy. Potom v ďalšom opísané postupy majú všeobecnú využiteľnosť. Prvý riadok obsahuje záhlavie stĺpcov (názvy polí) a ďalšie riadky sú potom položky zoznamu (záznamy databázy). V každom stĺpci zoznamu sú údaje rovnakého typu . Sú to čísla, texty, dátumy, logické hodnoty alebo vzorce (resp. funkcie), ktoré vracajú niektoré z predchádzajúcich typov poľa.

Názov poľa

Pole

Hodnota poľa

Záznam

Obr. 7.1 Základné databázové pojmy

7.1

Formulár

Často tvar tabuľky napísaný v Exceli nevyhovuje papierovej podobe agendy, ktorá je všeobecne známa. Nastavme sa s aktívnou bunkou hocikde do tabuľky, ktorá predstavuje pre nás databázu. Z hlavného menu Údaje vyberme položku Formulár. Zjaví sa formulár vybavený tlačidlami a editovacími okienkami. Delí sa na tri časti. V ľavej sú názvy polí , v strede sa objavujú vlastné dáta (údaje) a pravá časť obsahuje ovládacie prvky. Medzi jednotlivými poliami sa presúvame myšou alebo pomocou klávesu TAB. Zospodu nahor a sprava doľava sa presúvame pomocou kombinácie klávesov SHIFT + TAB alebo myšou (obr. 7.2).

Obr. 7.2 Prehliadanie záznamov, vstupný formulár 43

K niektorým tlačidlám vo formulári: Nové - umožňuje vloženie nového záznamu do databázy Odstrániť- vymazanie aktuálneho záznamu z databázy Obnoviť - obnova modifikovaného záznamu do predchádzajúceho okna Hľadať predošlé - prechod na predchádzajúci záznam Hľadať ďalej - prechod na nasledujúci záznam Kritériá - umožňuje zadať kritéria pre výber z databázy. Na vyhľadanie záznamov pomocou Kritériá, ktoré vyhovujú určitým podmienkam, slúžia tlačidlá Hľadať predošlé a Hľadať ďalej. Kritéria zadávame do okienok pre hodnoty polí podľa nasledovných pravidiel: Textový reťazec - pre vyhľadanie textu totožného s reťazcom, je treba vložiť znamienko =. Možno použiť známu konvenciu " * " alebo " ? " . Číslo - pri zadávaní číselných kritérií možno využívať relačné operátory: =,>, <, >=, <=, <>. Podmienky sú vo vzájomnom vzťahu ako logický súčin. Do jedného poľa nemožno zapísať zložené kritérium. V okna formulára možno maximálne zobraziť 32 polí. Ak je polí viac, príkaz sa jednoducho nezrealizuje.

7.2

Usporiadanie údajov v tabuľke.

Usporiadanie je preorganizovanie tabuľky podľa kľúčov. Kľúč je vybrané pole, v ktorom sa dáta podľa zvoleného kritéria usporiadajú. Usporiadať možno texty, čísla, dátumy i vzorce (funkcie) podľa výsledku, ktorý vypočítajú (obr. 7.3).

Obr. 7.3 Určenie usporiadania tabuľky podľa kľúčov. 44

Záznamy v tabuľke možno usporiadať podľa ľubovoľného poľa databázy (tzv. kľúča). Postup je nasledovný: - z hlavného menu Údaje vyberme položku Zoradiť, - zobrazí sa dialógové okno Zoradiť, pričom sa predpokladá, že prvý riadok databázy obsahuje názvy polí. Ak tomu tak nie je, zaškrtneme v skupine Rozsah údajov políčko Nemá hlavičku, - v skupine Zoradiť podľa vyberieme názov stĺpca resp. poľa, ktorý bude prvým kľúčom. Určíme aj smer usporiadania: Vzostupne alebo Zostupne, - rozbaľovacie záznamy v skupinách (Ďalej podľa, Ďalej podľa) slúžia na nastavenie druhého a tretieho kľúča, - upresnenie podmienok usporiadania možno tlačidlom Možnosti... V zobrazenom dialógovom okne Zoradenie – možnosti možno potom upresniť: - Hlavný kľúč zoraďovania - voľba Normálne znamená, že číselné a textové polia sú štandardne usporiadané. Inak možno usporiadať podľa tzv. zjednodušeného vkladania údajov - Rozlišovať malé a veľké písmená - v usporiadavaní sa rozoznávajú veľké a malé písmená. Napr. PODNIK, Podnik, podnik. V políčku Orientácia možno vyznačiť Zoradiť zhora nadol usporiada riadky podľa stĺpca a Zoradiť zľava doprava, keď sa stĺpce usporiadajú podľa riadku. Rýchle usporiadanie dát v tabuľke podľa jedného kľúča možno vykonať stlačením tlačidiel na paneli s nástrojmi Štandardný. Pred takýmto usporiadaním musíme nastaviť aktívnu bunku do stĺpca, podľa ktorého chceme záznamy v tabuľke usporiadať.

7.3

Filtrovanie databázy

Pomocou filtra možno vybrať len tie záznamy, ktoré sú pre daný prípad potrebné. Filter pozostáva len z jedného poľa (jednoduchý) alebo z viacerých hodnôt poľa operátorov a konštánt (kombinovaný). Postup pri tvorbe filtra: - z hlavného menu Údaje vyberme položku Filter a v bočnom menu položku Automatický filter - pri záznamoch polí sa zobrazia rozbaľovacie tlačidlá. Po kliknutí na tlačidlo sa ukáže zoznam všetkých hodnôt v poli. Vybraná hodnota poľa bude kritérium filtrovania databázy.

Obr. 7.4 Filtrovanie záznamov podľa automatického filtra Farba rozbaľovacej šípky sa zmení na modrú, aby sme vedeli, podľa ktorej hodnoty poľa sa filter vytvoril. Ďalšie voľby v rozbaľovacom zozname hodnôt polí sú (obr.7.4): Všetko - zobrazia sa všetky záznamy, 45

Vlastné - možnosť vytvorenia kombinovaného filtra. Po výbere tejto položky sa zobrazí dialógové okno. Práca s ním nie je zložitá ,a preto sa s ním nebudeme bližšie zaoberať, Prázdne - zobrazia sa všetky záznamy, ktoré v danom poli obsahujú prázdne bunky, Nie sú prázdne - zobrazené budú všetky záznamy, ktoré obsahujú neprázdne bunky. Ak chceme opäť zobraziť všetky záznamy, musíme vybrať položku Zobraziť všetko z Filter a z hlavného menu Údaje. Aktivovanú položku Automatický filter vypneme, čím zmiznú aj rozbaľovacie tlačidlá pri názvoch polí. Niekoľko poznámok k Prvých 10 (obr. 7.5). Algoritmus výberu funguje tak, že sa najprv vyberú všetky položky s najvyššou hodnotou. Ak je počet položiek s najvyššou hodnotou väčší ako zadaný počet položiek, vyberú sa všetky. Ak je týchto položiek menej, je výber doplňovaný všetkými položkami s rovnakou nižšou hodnotou a to tak dlho, pokým vybraný počet položiek nedosiahne alebo nepresiahne zadaný počet položiek.

Obr. 7.5 Výber prvých 10 položiek zo zoznamu.

7.4

Tvorba podzostáv

Často potrebujeme vytvoriť podzostavu z tabuľky, ktorá obsahuje záznamy a polia vyhovujúce určitým kritériam. Pred vytvorením definujeme oblasť kritérií, ktoré s výhodou umiestnime nad databázu alebo vedľa databázy. V kritériach sa budú vyskytovať len tie názvy polí, podľa ktorých sa záznamy budú vyberať. Podmienky, ktoré majú byť splnené súčasne, musia byť v jednom riadku (logický súčin). Podmienky z ktorých má byť splnená aspoň jedna, musia ležať v jednom stĺpci (logický súčet). Oblasť kritérií je opísaná v nasledujúcom obr. 7.6:

Oblasť kritérií Tabuľka ako databáza

Podzostava iba s vybranými poliami

Obr. 7.6 Výber záznamov podľa rozšíreného filtra Ak máme zadané kritéria výberu, môžeme zobraziť požadované údaje z databázy: 46

- nastavme aktívnu bunku do databázy - z hlavného menu Údaje vyberme Filter a Rozšírený filter. Zobrazí sa nasledovné dialógové okno (obr. 7.7):

Obr. 7.7 Dialógové okno na určenie oblastí rozšíreného filtra Použitie filtra: Filtrovať priamo v zozname - vybrané záznamy budú na tom istom mieste ako pôvodná tabuľka a ostatne budú skryté Kopírovať na iné miesto - záznamy budú zobrazené do oblasti pod vyznačenými názvami polí Kopírovať do Rozsah zoznamu - do okienka sa vložia adresy celej tabuľky ako databázy Rozsah kritérií - adresa oblasti kritérií. Po kliknutí do tohto okienka myšou vyberieme oblasť, v ktorej sa nachádzajú kritériá aj s názvami polí. Iba jedinečné záznamy - iba tie záznamy, ktorých hodnoty polí nie sú rovnaké. Je výhodné adresy v dialógovom okne zadávať pomocou myši, t.j. umiestnime kurzor do príslušného políčka a myšou vyznačujeme bunky.

7.5

Medzisúčty

Príkaz Údaje – Medzisúčty... umožní zoskupiť usporiadané zoznamy podľa vybraného poľa (stĺpca tabuľky) a pre každú skupinu zvlášť takto vybraného poľa zistiť hodnoty iného číselného poľa ako súčet, priemer, počet prvkov a pod. Budeme sa zaujímať napr. o to, koľko peňazí sme vynaložili na jednotlivé položky v sledovanom období pri nákupe tovarov ( t.j. HDD, klávesnica, monitor, myš a pod.). Najprv je nutné usporiadať záznamy podľa toho stĺpca, ktorý použijeme pri vytváraní súhrnov ( v našom prípade je to stĺpec „tovar“ ). Využijeme na to príkaz Údaje - Zoradiť. Tento krok je nutnou podmienkou na to, aby príkaz Údaje – Medzisúčty... mohol správne fungovať. Potom v editovacích okienkach Pri každej zmene v stĺpci: vyberieme stĺpec, ktorého zmeny hodnôt budeme sledovať, Použiť funkciu: (obr.7.8) vyberieme matematickú funkciu, ktorá nás pri vyhodnotení zaujíma a v okienku Medzisúčet pridať do stĺpca: vyberieme pole, ktorého výsledky, v našom prípade „Celková cena v SKK“, budú vyhodnotené. Ak deaktivujenme 47

voľbu Nahradiť aktuálne medzisúčty, tak sa staré skupinové výsledky nenahradia, ale sa vložia ďalšie výsledky. Voľba Zlom strany medzi skupiny vloží pred každú skupinu čiaru „ koniec stránky “, takže pri tlači dokumentu by sa každá skupina objavila vytlačená na samostatnej stránke.

Obr. 7.8 Tvorba súhrnov zoznamoch. Ak vypneme voľbu Súhrn pod údajmi, tak sa výsledky skupín neobjavia pod jednotlivými skupinami, ale nad nimi. Na odstránenie výsledkov stačí jednoducho vyvolať príkaz Údaje – Medzisúčty... a stlačiť Odstrániť všetky.

7.6

Osnova tabuľky

Tabuľku možno sprehľadniť potlačením riadkov a stĺpcov, ktoré obsahujú v danej chvíli nezaujímavé detailné informácie. Toto potlačenie možno realizovať v 8 úrovniach zvlášť pre stĺpce a zvlášť pre riadky, takže v extrémnom prípade možno zložitú tabuľku zobraziť 64 - mi celkom rôznymi spôsobmi s rôznou vypovedacou hodnotou. Z hlavného menu Údaje vyberme položku Zoskupiť a sprehľadniť a z bočného menu položku Automatický prehľad. Excel tabuľku prehľadá a na základe funkcie súčtu (= SUM) vytvorí osnovu. Vytvorená osnova umožňuje skrývať oblasť buniek, ktorá je argumentom funkcie súčtu. Vytvorenú osnovu možno zrušiť príkazom Vymazať prehľad cez hlavné menu Údaje Zoskupiť a sprehľadniť. Niekedy potrebujeme použiť osnovy podľa vlastného vkusu a nie podľa funkcie SUM. V takom to prípade použijeme položku Zoskupiť..., pričom predtým označíme oblasti, ktoré chceme potlačiť.

48

8 Použitie vybraných tabuľkových funkcií a iné možnosti Excelu
8.1 Funkcie dátumu a času

Pomocou funkcií dátumu a času možno vykonávať výpočty a prevody dátumov, časov a ich kombinácií. Excel vykonáva výpočty tak, že dátum konvertuje na poradové číslo od 1. januára 1900 ( alebo 1904 pre Excel na počítači Macintosh ). Všetky dátumy sú potom uložené ako poradové čísla. Ak chceme vidieť správny dátum, ktorý takéto číslo vyjadruje, je nutné pre bunku vybrať dátumový formát. Čas je taktiež uložený ako poradové číslo. Excel počíta čas ako čas dňa tak, že polnoc má čas 0, poludnie 0,5 atď. Všetky časy sú uložené ako takéto zlomky. Aby sme zobrazili čas spojený týmto zlomkom, musíme naformátovať bunku ako čas. Pretože dátumy a časy sú vyjadrené v počtoch dní, možno rozdiely medzi dvoma časmi alebo dátumami zistiť jednoducho odčítaním. Výsledok je v dňoch alebo zlomkoch dňa. Ak chceme ešte zistiť, koľko dní máme do zaplatenia faktúr, využijeme dátumovú funkciu na určovanie aktuálneho dátumu, ako je uvedená na nasledujúcom obr. 8.1:

Obr. 8.1 Použitie dátumovej funkcie na určovanie počtov dní

8.2

Logické funkcie.

Všetky logické funkcie sú založené na testovaní výrokov. Výrok môže byť buď pravdivý alebo nepravdivý. Excel používa pre označenie výsledkov takého testu výroku odpovedajúce pravdivostné hodnoty TRUE a FALSE (pravda, nepravda). Výrok je porovnanie dvoch údajov toho istého typu, napr. dvoch čísel alebo dvoch textov pomocou tzv. „ relačných operátorov“. Má vo všeobecnosti tvar: [ údaj 1 ] [ relačný operátor ] [ údaj 2 ] Druhy relačných operátorov: >, <,>=, >=, =, <>. Asi najpoužívanejšou logickou funkciou je funkcia IF. Toto funkciou možno uskutočňovať „rozhodovanie“. Všeobecný zápis takejto funkcie je: 49

=IF ( test pravdivosti; potom hodnota; inak hodnota). Ak je výrok „test pravdivosti“ pravdivý ( hodnota TRUE), funkcia IF nám vráti hodnotu „ Value if true“. Ak je výrok nepravdivý, vráti nám hodnotu „ Value if false“. Uvedenú logickú funkciu si zasa overíme na príklade. Úlohou bude vyhodnotiť stav platby k dnešnému aktuálnemu dátumu TODAY(). Ak sú vypočítané hodnoty menšie ako 0 nám dajú hodnoty „po termíne“, hodnoty väčšie alebo rovné 2 nám dajú hodnoty „je čas“ a ostatné hodnoty, t.j. (0,1) nám dajú na výstupe text „platiť“. Využijeme pritom tzv. vnorené funkcie, t.j. v samotnej logickej funkcii nebudeme udávať adresu bunky, v ktorom sa nachádza aktuálny dnešný dátum, ale vľavo v riadku vzorcov vyberieme príslušnú funkciu a vrátime sa kliknutím na pôvodnú funkciu (v našom prípade IF). Príslušná tabuľka aj so stĺpcom, kto nakúpil príslušný tovar je na obr. 8.2.

Obr. 8.2 Použitie logickej funkcie

8.3

Generovanie náhodných čísiel

Jedným z prostriedkov simulovania reálnych procesov pomocou modelu, je využitie generátora náhodných čísiel (presnejšie pseudonáhodných). Funkcia =RAND() vracia náhodné číslo intervalu <0;1), pričom hodnotu 1 nikdy nedosiahne. Pri každom novom prepočítaní tabuľky (stlačením klávesu F9) generuje nové náhodné číslo. Pomocou tejto funkcie môžeme napríklad urobiť ťah lota. Predtým ako si urobíme príslušnú tabuľku s výslednými hodnotami , uvedieme niekoľko úvah. Funkcia =RAND() dodá najväčšie číslo vždy o málo menšie ako 1, napr. 0,9999. Ak toto číslo násobíme číslom 49, dostaneme hodnotu 48,9999. Funkcia =INT() z neho urobí celé číslo, t.j. 48 a po pričítaní 1 dostaneme najvyššie možné číslo 49. Losované čísla sú potom na obr. 8.3

Obr. 8.3 Použitie generátora náhodných čísiel 50

Pomocou funkčného klávesu F9 prepočítame pracovný list Excelu, pretože funkcia =RAND() nám generuje nové náhodné čísla. Je nutné ale urobiť test na rovnaké vytiahnuté čísla a to buď vizuálne alebo pomocou makra.

8.4

Vyhľadávacie funkcie

Často môžu byť v tabuľke zoradené údaje, ktoré nejako spolu súvisia a ktoré možno podľa určitých kritérií vyberať. Príkladom takejto tabuľky môže byť prehľad cien tovaru, ktoré sú závislé od počtu kupovaných kusov (obr. 8.4).

Obr. 8.4 Príklad použitia jednej z funkcií Excelu - vyhľadávacej funkcie Vlastná tabuľka je vytvorená v oblasti C2:H3. Jej horný riadok obsahuje parameter, podľa ktorého sa tabuľka prehľadáva, v tomto prípade je to počet kusov a dolný riadok určuje cenu tovaru podľa počtu kusov. Tabuľky môžu byť prehľadávané pomocou funkcie HLOOKUP buď horizontálne, ako je to v našom prípade, alebo pomocou funkcie VLOOKUP vertikálne. Na údaje, ktoré nie sú usporiadané do susediacich riadkov alebo stĺpcov, možno použiť prehľadávajúcu funkciu LOOKUP. Opíšeme vlastnosti funkcie HLOOKUP. Po vytvorení tabuľky nastavíme aktívnu bunku na miesto C6, na ktoré bude vložená vyhľadávacia funkcia. Klikneme na tlačidlo sprievodcu funkcie Vložiť funkciu a vyhľadáme v kategóriach funkcií vyhľadávacie - HLOOKUP. V druhom kroku zadáme potrebné adresy buniek (obr. 8.5 )

Obr. 8.5 Vyhľadávacia funkcia HLOOKUP – zadávanie parametrov 51

Lookup_value - adresa bunky alebo hodnota, podľa ktorej bude z tabuľky vybraná odpovedajúca hodnota C5 Table_array - adresa oblasti určujúca závislosť medzi odoberaným množstvom a cenou za jeden kus C2:H3 Row_index_num - číslo riadku, z ktorého bude vyberaný údaj 2 Range_lookup - bližšie určenie spôsobu výberu údajov: TRUE alebo 1 - pri vyhľadávaní sa použije aproximácia t.j. vyberú sa aj hodnoty, ktoré nie sú priamo zadané v tabuľke FALSE alebo 0 - vypíše iba údaje, ktoré odpovedajú hodnote riadku 2. Ak vložíme ľubovoľnú hodnotu do bunky C5, vyhľadávacia funkcia prehľadá zadanú oblasť a do bunky C6 vloží odpovedajúcu hodnotu. V bunke C7 je súčin buniek C5 a C6.

8.5

Kreslenie v tabuľke alebo v grafe

Na zvýšenie efektov v grafe alebo tabuľke, na zvýšenie ich vypovedacej schopnosti, možno v Exceli dokresliť rôzne grafické objekty. Na ich vytváranie sa používa panel nástrojov s názvom Kreslenie, ktorý vyvoláme tlačidlom Kreslene zo štandardnej lišty alebo príkazom Zobraziť – Panely s nástrojmi označením položky Kreslenie. Po stlačení tlačidla so symbolom príslušného objektu (napr. obdĺžnika) možno začať kresliť. Kurzor sa zmení na nitkový kríž, ten umiestnime do miesta, kam chceme objekt nakresliť (jeho ľavý horný roh), stlačíme ľavé tlačidlo na myši a za jeho držania objekt vykreslíme. Ak klepneme na lište na kreslenie na tlačidlo dvakrát, po každom stlačení ľavého tlačidla myši sa zakreslia rovnaké objekty pokým nestlačíme znovu tlačidlo na paneli nástrojov. Nástroje na kreslenie nám umožňujú vložiť do grafu alebo tabuľky nasledovné objekty: - jednoduché rovné čiary - obrazce vykreslené obvodovou čiarou - vyplnené obrazce - šípky - textové polia (možno do nich zapisovať text a ten následne sformátovať) - vytvoriť tiene pri obdĺžnikových objektoch a hĺbku (3D efekt) - text upravený modulom WordArt - automatické tvary ako množina komplexných tvarov. Ak nastavíme kurzor na predtým nakreslený objekt a stlačíme ľavé tlačidlo na myši, kresba sa aktivuje - bude vyznačená malými štvorčekmi. Štvorčekmi možno pomocou myši pohybovať a tak upravovať veľkosť vybraného objektu. Príklady nakreslených objektov sú na obr.8.6

Obr. 8.6 Nakreslené objekty v Exceli. 52

Stlačením pravého tlačidla na myši sa zobrazí skrátené kontextové menu na dodatočnú grafickú úpravu objektu (formátovanie). Nájdeme tu príkazy na vybranie a kopírovanie do schránky, na zoskupovanie a zaraďovanie objektov, priradenie makra, ... Dialógové okno na formátovanie objektu je závislé na type objektu.

8.6

Kreatívna úprava textu

Do tabuľky alebo do grafu možno vložiť ozdobný text, ktorým možno oživiť ich vzhľad. Na vytvorenie ozdobného textu sa používa modul WordArt. Modul WordArt sa inštaluje automaticky, nemožno ho nájsť v zozname inštalovaných aplikácií Office. WodArt dovoľuje vytvoriť mnoho zaujímavých textových efektov ako je tieňovanie, natáčanie, naklápanie písmen, trojrozmerné efekty, rôzne zakrivenia, šrafovanie plochy písmen atď. Nemôžeme ale očakávať možnosti, ktoré nám poskytujú profesionálne graficky orientované programy. Postup na vloženie kreatívneho textu na list zošita alebo do grafu: - zadáme príkaz Vložiť – Obrázok – WordArt alebo stlačíme tlačidlo Vložiť WordArt na nástrojovej lište Kreslenie, - v okne WordArtu galéria si zvolíme jeden z ponúkaných 30 základných štýlov textu podľa obr. 8.7 a stlačíme tlačidlo OK, - objaví sa dialógové okno s titulkom „Sem napíšte text“ (obr. 8.8).

Obr. 8.7 Okno na výber štýlu textu.

53

Obr. 8.8 Dialógové okno na zápis textu a možností jeho ďalšej úpravy Text je označený ako blok a tak sa po zápise prvého písmena prepíše. V okne si môžeme vybrať font, veľkosť a spôsob zobrazenia písma. Po potvrdení tlačidlom OK sa vloží text do listu zošita a objaví sa panel nástrojov WordArt na úpravu textu. Kliknutím ľavým tlačidlom myši mimo priestor vloženého textu ukončíme prácu s modulom WordArt a lišta s tlačidlami na editovanie textu sa skryje.

Aby sme mohli s vloženým textom pracovať, musíme ho najprv zobraziť. Kurzorom nabehneme nad text z WordArt , a keď sa kurzor zmení na šípky stlačíme ľavé tlačidlo na myši. Tým text označíme ako objekt, t.j. po stranách so objavia štvorčeky, po uchopení ktorých možno s objektom manipulovať. Po označení textu sa automaticky zobrazí nástrojová lišta WordArt, pomocou ktorej možno text upravovať takto: - možno vybrať ďalších 40 tvarov textu, - môžeme text otáčať uchopením za vrcholy označeného textu, - nastaviť písmená na rovnakú veľkosť alebo ich umiestniť pod seba, - vybrať šesť rôznych spôsobov zarovnania textu a pod. Na písmo môžeme aplikovať viacej efektov súčasne, optimálnu kombináciu na daný účel treba postupne vyskúšať.

54

9 Tlač dokumentu
9.1 Základné odporúčania

Vytvorenú tabuľku alebo graf , príp. iné objekty potrebujeme na konci práce vytlačiť. Príkazy na nastavenie tlačenej strany a príkazy samotnej tlače sú v príkaze Súbor. Niektoré odporúčania možno zhrnúť nasledovne: list zošitu s údajmi možno zobraziť v 2 módoch: normálne zobrazenie a zobrazenie koncov stránok. Zmenu zadávame príkazmi Zobraziť – Ukážka zlomov strán a späť sa vrátime príkazom Zobraziť – Normálne, stránku pre tlač nastavujeme na štyroch kartách dialógového panelu, ktorý vyvoláme príkazom Súbor – Ukážka pred tlačou, príkaz Súbor – Oblasť tlače – Nastaviť oblasť tlače umožňuje označiť oblasť, ktorá sa bude vždy prednostne tlačiť bez nutnosti ju znovu označovať, po zadaní príkazu Súbor – Ukážka pred tlačou sa zobrazí okno so stránkou tak, ako bude vyzerať pri tlači. Ukážka by mala predchádzať každej neoverenej tlači. Z ukážky možno spustiť tlač, povely Nastavenie strany a Ukážka pred tlačou sú vzájomne prepojené. Po stlačení tlačidla Tlačiť resp. nasleduje výstup na tlačiareň, výkonným príkazom pre tlač je Súbor – Tlačiť, po ktorom sa zobrazí dialógové okno Tlačiť, v ktorom možno nastaviť parametre pre tlač, ako pomôcka pri orientácii pri tlači dokumentu slúžia zobrazenie koncov stránok prerušovanou čiarou. Čiary vyvoláme príkazom Nástroje – Možnosti, kde na karte Zobrazenie označíme položku Konce strán. pravidelne sa opakujúce záhlavie a päta je výhodné zapísať na kartu Hlavička alebo päta, cez príkaz hlavného menu Súbor – Nastavenie strany. tlačia sa i prázdne bunky medzi rôzne umiestnenými údajmi na liste.

9.2

Nastavenie vzhľadu stránky

Obr. 9.1 Dialógové okno na nastavenie vzhľadu stránky 55

Vzhľad stránky je vhodné nastaviť na začiatku práce. Prvým krokom pred tlačou by malo byť určenie vzhľadu stránky tlačeného dokumentu. Na ten účel nám slúži dialógové okno, ktoré sa zobrazí po príkaze z hlavného menu Súbor – Nastavenie strany. Postupne si jednotlivé karty popíšeme: Strana – určuje základné parametre tlačenej stránky (obr. 9.1). Určí sa orientácia tlače (na výšku alebo na šírku), mierka, v ktorej sa oblasť tlače bude tlačiť. Praktickou pomôckou je možnosť nastaviť, na koľko listov danej šírky a dĺžky stránky sa má tlač uskutočniť. Ďalej sa určí formát papiera výberom zo zoznamu. Ponuka formátov úzko súvisí s nastavením a možnosťami tlačiarne. Kvalita tlače je daná tlačiarňou. Rozlíšenie sa udáva v počte bodov na palec ( dots per inch – dpi). Pre finálnu tlač volíme vyššie rozlíšenie. Tlačidlami Tlačiť a Ukážka pred tlačou sa vyvolajú okná, ktoré si opíšeme v ďalšom. Okraje – určuje okraje pre tlačenú oblasť, veľkosť hlavičky a päty a umiestnenie tlačenej oblasti na stránke (spôsob vycentrovania). Aby text v záhlaví neprekrýval údaje, musí byť veľkosť hlavičky menšia ako horný okraj a veľkosť päty taktiež menšia ako dolný okraj. Hlavička alebo päta – umožňuje zobraziť hlavičku resp. pätu stránky alebo ich vyrobiť podľa vlastných želaní. V ponuke Vlastná hlavička resp. Vlastná päta si môžeme texty vybrať zo zoznamov, ktoré nám ponúka Excel. Po stlačení tlačidla Vlastná hlavička resp. Vlastná päta sa zobrazí dialógové okno, ktoré umožňuje vložiť do hlavičky dokumentu buď vlastný text alebo informácie o dokumente, ktoré možno vložiť kliknutím na tlačidlá (obr. 9.2).

Obr. 9.2 Návrh vlastného záhlavia resp. zapätia Význam jednotlivých tlačidiel je možné vyčítať aj z textu v dialógovom okne. Oproti verzii Excel 2000 je možné vkladať do záhlavia a zapätia aj obrázky, ktoré možno aj formátovať. Hárok – upresňuje charakteristiky tlače. Do políčka Oblasť tlače sa zapisuje oblasť buniek, ktorú chceme tlačiť. Ak políčko ponecháme prázdne, budú sa tlačiť všetky údaje v pracovnom liste. Súradnice oblastí možno zapísať ručne alebo vyznačiť ich pomocou myši. Ak máme rozsiahlu tabuľku, ktorá sa bude tlačiť na niekoľko listov papiera, potrebujeme pre identifikáciu stĺpcov, aby sa nám riadok, ktorý obsahuje ich popis, opakoval na každom tlačenom liste. Do políčka Hore opakovať riadky sa uvedú v absolútnej adresácii len tie riadky hlavičky tabuľky, ktoré sa majú opakovať na každom novom tlačenom liste. Políčko 56

Vľavo opakovať stĺpce má rovnakú funkciu ale pre identifikáciu riadkov. Na tejto karte sa určí, či chceme tlačiť mriežku. Pre tlač farebných tabuliek, grafov a objektov na čiernobielej tlačiarni označíme položku Čiernobielo. Farebné tabuľky sa vytlačia bez farieb, v grafoch a objektoch sa farebné plochy prevedú na vzorky. Ak označíme položku Konceptová kvalita, tlač bude v kvalite „Draft“ a potlačí sa tlač čiar v tabuľkách a vložených objektov a grafov. Komentáre máme možnosť tlačiť na konci hárka, podľa zobrazenia na hárku alebo netlačiť vôbec. Posledným parametrom sa určí smer tlačenia a číslovanie stránok. Graf – táto karta sa vyskytuje namiesto karty Hárok vtedy, keď chceme tlačiť samostatný graf. Karta obsahuje dve skupiny príkazov – prvá skupina sa týka veľkosti grafu a druhá kvality tlače. Voľby sú jednoduché a analogické s predchádzajúcimi vysvetleniami, a preto sa nimi nebudeme bližšie zaoberať. Graf možno vytlačiť aj spolu s tabuľkou, ale graf nesmie byť aktivovaný a postup je potom rovnaký ako pri tlači tabuliek.

9.3

Ukážka pred tlačou

Príkazom z hlavného menu Súbor – Ukážka pred tlačou , tlačidlom Ukážka pred tlačou na štandardnom paneli nástrojov alebo tlačidlom Ukážka pred tlačou v okne Nastavenie strany sa zobrazí ukážka toho, čo dostaneme po vytlačení na tlačiarni. Táto ukážka by mala predchádzať každej neoverenej tlači dokumentu (obr. 9.3). Tlačidlom Lupa zväčšíme zobrazenie celého náhľadu. Aj kurzorom myši v tvare lupy možno zväčšiť vybrané miesto náhľadu. Náhľad nie je pasívny, po stlačení tlačidla okraje možno zobrazené okraje ťahaním myšou zväčšovať alebo zmenšovať. Zmeny sa prejavia aj v okne Nastavenie strany v karte Okraje. Tlačidlom Ukážka zlomov strán prejdeme do zobrazenia, ktoré umožňuje ťahom myši upraviť konce stránok. Týmto si môžeme pomôcť pri rozvrhovaní stránok pre tlač. Príkazom hlavného menu Zobraziť – Normálne prevedieme hárok zasa na pôvodné zobrazenie. Stlačením tlačidla Ukážka zlomov strán z okna pre ukážku pred tlačou alebo z príkazom Zobraziť – Ukážka zlomov strán zobrazíme hárok zošitu v podobe, v akej sa bude tlačiť. Hlavná výhoda spočíva v tom, že automaticky umiestnené konce stránok môžeme ťahaním myšou zmeniť a novému stránkovaniu sa prispôsobí mierka zobrazenia. Oblasť medzi deliacimi čiarami bude na jednej stránke. Ak sa stane, že stránka rozdelí tabuľku, čiarkovanú čiaru môžeme uchopiť myšou a presunúť. Čiarkovaná čiara sa zmení na plnú čiaru – ručne upravenú, t.j. automatický koniec strany sa zmení na „ručný“ koniec. Podľa tejto čiary sa teraz bude stránkovať pri tlači dokumentu, pričom sa upraví mierka zobrazenia podľa nastavených stránok. Ručne doplnený koniec stránky zrušíme príkazom skráteného menu (pravé tlačidlo na myši) Pôvodná oblasť tlače. Pôvodné zobrazenie listu dostaneme príkazom Zobraziť – Normálne.

57

Obr. 9.3 Náhľad na tlačený dokument a možnosti interaktívnej úpravy okrajov Upozornenie: Ak zadáme na karte Strana v dialógovom okne Súbor – Nastavenie strany položku Napasovať na:, budú ručne určené rozsahy tlače ignorované. Na požadované nastavenie je potom na karte Strana v okne Nastavenie strany mierku zobrazenia nastaviť späť na 100 %.

9.4

Nastavenie parametrov pre tlač

Ak sme si nastavili parametre vzhľadu tlačeného dokumentu (viď predchádzajúce kapitoly), môžeme si teraz vybrať príkaz z hlavného menu Súbor – Tlačiť alebo z okna Ukážka pred tlačou na tlačený dokument tlačidlo Tlačiť... .V príslušnom dialógovom okne možno spresniť zostávajúce parametre tlače a potvrdiť tlačidlom OK a dokument sa začne tlačiť. Môžeme si v ňom vybrať tlačiareň, ak ich máme pripojených viacero, napr. v sieti. Určíme rozsah tlače, t.j. či chceme tlačiť všetky stránky alebo len vybrané stránky. Ďalej môžeme vytlačiť len vyznačenú oblasť, celý súbor alebo aktívne listy. Tlačidlo Tlač do súboru umožní vytlačiť súbor i na počítači, ktorý nemá nainštalovaný operačný systém Windows. Musí mať však nainštalovanú tlačiareň, pre ktorú bol výstupný súbor vytvorený (tento má implicitne príponu .prn). Na inom počítači sa potom použije príkaz MS-DOSu ako: a:\>copy /b nazov.prn lpt1 (ak je tlačiareň pripojená na paralelný port 1). Tlačidlom „Vlastnosti“ zobrazíme panel pre nastavenie parametrov tlačiarne pre tlač dokumentu. Pre rôzne tlačiarne sú tieto rozdielne a závisia od možností nainštalovanej tlačiarne.

58

10 Niektoré možnosti Excelu
10.1 Odhaľovanie problémov vo vzorcoch

Odhaliť chyby vo výpočtoch v rozsiahlych tabuľkách nebýva vždy jednoduché. Niekedy možno použiť tzv. „tvrdé riešenie“, keď zobrazíme vzorce namiesto výsledkov: Nástroje – Možnosti a na karte Zobrazenie zvolíme políčko Vzorce. Výhodou je úplnosť popisu, ale podstatnou nevýhodou je neprehľadnosť. Vhodnejšie je postupovať tak, že hľadáme vzájomné väzby medzi vzorcami. Excel poskytuje účinné prostriedky na hľadanie závislostí v príkaze Súvislosti v menu Nástroje. Šípkami možno graficky znázorniť väzby medzi vzorcami resp. hodnotami v bunkách. Týmto spôsobom možno zistiť aj bunky, ktoré spôsobili chybu (obr. 1.1).

Obr. 10.1 Zobrazovanie súvislostí medzi vzorcami: predchodcovia a následníci

10.2

Overovanie údajov

V Exceli možno v jednotlivých bunkách nastaviť, ktoré údaje môže užívateľ do bunky zapísať. Je to výhodné vtedy, ak niekoho chceme prinútiť, aby do buniek zapisoval len zmysluplné údaje, ktoré musia spĺňať istú podmienku na zápis do príslušných a vopred vyznačených buniek. Zadaním podmienky možno určiť, ktoré údaje majú byť platné pre jednotlivé bunky alebo vybrané oblasti. Údaje v tomto prípade možno obmedziť na určitý typ, napr. celé čísla, desatinné čísla alebo text a nastaviť obmedzenie platných zadaní. Taktiež možno obmedziť zoznam platných položiek alebo v zadávaných údajov obmedziť počet znakov. Dokonca možno určiť platnosť zadania na základe výpočtu v inej bunke, ale v takomto prípade je nutné použiť vzorec. Najprv označme bunky, v ktorých chceme overovanie nastaviť. Potom v hlavnom menu vyberieme príkaz Údaje – Overenie a v dialógovom okne možno jednotlivé podmienky nastaviť , napr. požadovaný termín evidovaného nákupu (obr. 10.2). 59

Obr. 10.2 Dialógové okno overovania údajov s krúžkami na neplatných údajov V karte Nastavenia najprv rozbaľme ponuku Povoliť. Zobrazia sa možnosti údajových vstupov a pod nimi sa treba vybrať príslušné relácie. Na karte Vstupná správa možno nastaviť nadpis a text samotnej vstupnej správy po výbere príslušnej bunky, ktorá sa objaví v žltom políčku. V karte Chybové hlásenie možno nastaviť reakciu Excelu pri zadávaní nesprávnych údajov. V položke Štýl možno nastaviť reakcie programu po zadaní nesprávneho údaja. V nasledujúcej tabuľke (tab. 10.1) sú reakcie systému pri rôznych štýloch a následných chybových hlásení: Štýl chybového hlásenia Zastaviť Upozornenie Informácie Tlačidlo Znova Zrušiť Áno Nie Zrušiť OK Zrušiť Reakcia Excelu Vráti kurzor do bunky na ďalšie úpravy Obnoví v bunke predchádzajúcu hodnotu Zadá neplatné údaje do bunky Vráti kurzor do bunky na ďalšie úpravy Obnoví v bunke predchádzajúcu hodnotu Zadá neplatné údaje do bunky Obnoví v bunke predchádzajúcu hodnotu

Tab. 10.1 Tabuľka hlásení po zadaní nesprávnych údajov Ak sme napríklad zadali nesprávne údaje do buniek aj napriek varovným hláseniam, možno aj neskôr zistiť tieto nesprávne údaje. Vykreslenie červených elíps možno vykonať po zobrazení nástrojovej lišty Súvislosti a následnou voľbou tlačidla Zakrúžkovať neplatné údaje. Ak nepotrebujeme mať vyznačené nesprávne údaje, zvolíme tlačidlo Vymazať overovacie zakrúžkovania (obr. 1.2). 60

V dialógovom okne Overiť údaje v karte Nastavenia a v položke Povoliť možno vybrať Vlastné. To umožňuje zápis vzorca, výrazu alebo odkazu na výpočet v inej bunke. Výsledkom vzorca musí byť logická hodnota Pravda alebo Nepravda. Pracovný hárok sa najprv prepočítava a to ešte pred zápisom údajov do bunky. V našom prípade použijeme pre bunky B3:B7 vzorec =B1>=SUM(B3:B7). Prekročenie limitu bude vyzerať podľa obr. 1.3.

Obr. 10.3 Hlásenie po prekročení stanoveného limitu Často používaným spôsobom overenia je aj voľba Zoznam v dialógovom okne Overiť údaje v karte Nastavenia. Zoznam možno zadať priamo do políčka Zdroj, kde jednotlivé položky zoznamu oddelíme znakom ; , alebo tam budú adresy buniek obsahujúce zoznam. Potom po výbere príslušných buniek, kde sme si nastavili overovanie údajov, sa zjaví rozbaľovacie tlačidlo, pod ktorým sa nachádza príslušný zoznam. To znamená, že môžeme dosiahnuť, aby sa zadávali len položky zo zoznamu a definovaním ich overenia možno zabrániť nielen chybám pri ich zápise, ale aj možno zjednodušiť a urýchliť vypĺňanie tabuliek.

10.3

Sprievodca importom textu

Niekedy môže nastať situácia, keď potrebujeme do Excelu načítať textový súbor za účelom jeho ďalšieho spracovania. Problémom je rozdelenie textu do stĺpcov napr. preto, aby sme uskutočnili dodatočné výpočty alebo vytvorili tabuľku. Program nám zjednodušuje prácu svojim sprievodcom. Do Excelu načítame textový súbor a ten je uložený v bunkách pod sebou, t.j. čo záznam, to jedna bunka. Napr. časť z textu vo Worde s oddeľovačom „,“ (čiarka) a medzera sme načítali do Excelu. Aby sme mohli s údajmi ďalej pracovať, potrebujeme ich rozdeliť do stĺpcov (obr. 10.4).

Obr. 10.4 Text načítaný do Excelu pred prevodom do stĺpcov

61

Na činnosť rozdelenia do stĺpcov nám slúži sprievodca prevodom textu do stĺpcov a vyvolá sa príkazom Údaje – Text na stĺpce... . Pred zadaním príkazu sa musí označiť stĺpec s textom, nestačí zadať iba prvú bunku stĺpca (viď obr. 10.5). Dôležité je nastavenie parametrov pre dátum. Najprv musíme nastaviť cez postupnosť príkazov vo Windows Start – Settings – Control panel, ikona Regional Settings, karta Date, oddeľovač dátumu „.“ (bodka) a krátky formát d.m.rrrr. V našom prípade bude v prvom kroku oddeľovač „čiarka a medzera“, a v treťom kroku musíme kliknúť na stĺpec, v ktorom sa nám vyskytujú dátumy a zvoliť príslušný formát dátumu (DMR) v stĺpci (obr. 10.5). Po ukončení bude výsledný efekt ako na obr. 10.6.

Výber formátu dátumu

Obr. 10.5 Sprievodca konvertovaním textu na stĺpce.

Obr. 1.6 Výsledok konvertovania textu do stĺpcov Podobným spôsobom sa rieši problém pri načítavaní údajov z iných súborov ako súborov z Excelu (súbory z dBase, Lotus z aplikácií pod DOS a pod.) Spustí sa sprievodca importom a postup je analogický. Načítaný súbor sa uloží do zošitu s jedným názvom s jedným listom s rovnakým názvom. Pred ďalšími úpravami je vhodné uložiť súbor ako zošit Excelu. Ak chceme uložiť na záver práce súbor inak ako .xls (súbor Excelu), zvolíme si po príkazoch Súbor – Uložiť ako v roletovom menu Typ súboru, s akým potrebujeme ďalej pracovať.

62

11 Analytické nástroje a ďalšie možnosti Excelu
Súbor Excelu – zošit, nie je iba jednoduchou tabuľkou vloženou do príslušného hárku. O tom sa presvedčíme v nasledujúcich kapitolách. Excel disponuje celým radom nástrojov na analýzu dát. Umožňuje napríklad: − vypočítať premennú s cieľom dosiahnutia požadovaného výsledku (hľadanie cieľovej hodnoty), − vytvoriť citlivostnú tabuľku, ktorá zobrazí zmeny jednej alebo viac premenných − riešiť optimalizačné úlohy, − pomáhať pri simulácii modelov vytvorením scenára situácií, − spracovať štatistické charakteristiky súboru dát.

11.1

Hľadanie cieľovej hodnoty

Správne napísaný vzorec nám vypočíta požadovaný výsledok. Môže sa nám však stať, že poznáme výsledok, ale potrebujeme však zistiť hodnotu premennej, na základe ktorej sme dosiahli tento výsledok. Hľadanie cieľových hodnôt pracuje iteratívne a k požadovanému cieľu sa blíži po krokoch. Po každej zmene sa celá tabuľka prepočíta a obsah cieľovej bunky sa porovná s cieľovou hodnotou. V závislosti na výsledku nasleduje ďalšia zmena meniteľnej bunky (premennej). Nájdenie hodnoty premennej pre daný výsledok sa zadáva príkazom Nástroje –Hľadanie riešenia.... Predkladajme, že vložíme na termínovaný vklad 21 000 Sk na dobu 12 mesiacov. Reklama istej nemenovanej banky ale garantuje, že čistý úrokový výnos je bez zvýhodnenia 500 Sk, ale so zvýhodnením až 587 Sk. Chceme vypočítať, aký bude úrok, aby táto hodnota bola splnená.

Obr. 11.1 Výpočet navýšenia vkladu po roku o čistý úrokový výnos Využijeme na to príkaz Nástroje – Hľadanie riešenia... Zobrazí dialógové okno, v ktorom cieľovú bunku (Nastaviť bunku) nastavíme na E5. Cieľovú hodnotu (Cieľová hodnota) vyplníme konkrétnou hodnotou, ktorú máme k dispozícii (21 587 Sk). Meniacu sa bunku (Menená bunka) zadáme B2, ktorá obsahuje neuverejnenú úrokovú sadzbu (obr. 11.2).

63

Obr. 11.2 Dialógové okno na hľadanie cieľovej hodnoty. Po stlačení tlačidla „OK“ sa vykoná výpočet a zobrazí sa dialógový okno s výpočtom. Ak v ňom stlačíme „OK“, výsledné riešenie sa zapíše do tabuľky. Pre kontrolu výpočtu: úrok by mal byť cca 3,5 %. Výpočet prebieha iteračnou metódou, výsledok sa postupne spresňuje. Dosiahnutie riešenie a presnosti výpočtu súvisia s nastavením prostredia príkazom Nástroje – Možnosti v karte Výpočet, položka Iterácia. Maximum iterácií určuje počet opakovaní na získanie výsledku. Číslo musí byť nastavené na väčšie ako 100, čo je minimum iterácií, ktorá vždy prebehnú. Maximálna zmena určuje presnosť výsledku a je daná rozdielom po sebe vypočítaných hodnôt. Výpočet sa zastaví po dosiahnutí predpísanej presnosti.

11.2

Citlivostná analýza

a) Citlivostná analýza pre jednu premennú. Táto analýza umožňuje zisťovať do akej miery ovplyvňuje zmena jednej premennej výsledné hodnoty jedného alebo viac vzorcov (príp. funkcií). Na vstupe (vyznačená oblasť) je tabuľka, v ktorej záhlaví sú analyzované vzorce a v stĺpci vľavo pred týmito vzorcami sú hodnoty, pre ktoré zisťujeme výsledok. Tieto hodnoty nahrádzajú premennú a analyzovaný vzorec je odkazovaný práve na túto hodnotu. Uvedieme príklad na zistenie, ako sa bude meniť cena za 1 ks v závislosti od ceny dopravného prostriedku za km a aká je celková cena za dopravu (obr.11.3).

Obr. 11.3 Citlivostná analýza pre jednu premennú 64

Postup pri riešení: – vložme údaje podľa obr. 2.3 do buniek A1:C7 včítane príslušných vzorcov na výpočet – do buniek A8:A15 zadajme ceny dopravy za km – vyznačme oblasť A7:C15 – v hlavnom menu Údaje vyberme položku Tabuľka a do dialógového okna do editovacieho okienka Vstupná bunka stĺpca vložme adresu bunky B4, ktorej možné hodnoty sú zoradené v stĺpci A8:A15 a potvrďme tlačidlom OK. V pracovnom liste sú použité vzorce, ktoré využívajú tú istú vstupnú hodnotu (B4, t.j. cena za km). b) Citlivostná analýza pre dve premenné Niekedy potrebujeme zistiť, do akej miery ovplyvňuje zmena dvoch premenných výslednú hodnotu vzorca. Z predchádzajúceho príkladu nás bude zaujímať, do akej miery ovplyvňuje cenu jedného kusa cena dopravy za km a počet kusov dovážaných príslušným dopravným prostriedkom. Postup pri riešení: – vložme údaje podľa obr. 2.4. V stĺpci A ponechajme ako vstupné údaje ceny za 1 km a do riadku B6:F6 vložme počty nakupovaných kusov. – do bunky A6 vložme vzorec na výpočet. – vyznačme celú oblasť buniek novej tabuľky (A6:F14) – v hlavnom menu Údaje vyberme položku Tabuľka a do príslušného dialógového okna vložme adresy buniek, v ktorých sa vstupné údaje pre vzorec, t.j. B2 pre údaje z riadku a B4 pre údaje zo stĺpca vo vyznačenej oblasti.

Obr. 11.4 Citlivostná analýza pre dve premenné.

65

11.3

Riešenie optimalizačných úloh

Pri hľadaní cieľovej hodnoty sa mohol obsah jednej bunky meniť tak dlho ako aj prepočítavať na nej závislé vzorce, až kým cieľová bunka nezískala požadovanú hodnotu. Pri zložitejších aplikáciách sa súčasne môže meniť aj viacej parametrov, aby sme dosiahli požadovanú hodnotu pri zvolenom kritériu. Na obr. 11.5 chceme zistiť, aký bude maximálny kapitál po piatich rokoch uloženia 100 000.- SKK, keď sa daň z úrokov bude pohybovať medzi 15 až 19% a úrok medzi 2,5 až 4%. Bunka F2 obsahuje vzorec =E2* $B$1, čím dostaneme výšku úroku v prvom roku. V bunke G2 je vzorec = F2*$B$2 na výpočet dane z úroku.

Obr. 11.5 Príklad na riešenie optimalizačnej úlohy Bunka H2 udáva koncový kapitál po jednom roku a je v nej vzorec = E2 + F2 – G2. Bunka E3 obsahuje vzorec =H2, čím sme preniesli kapitál na začiatok ďalšieho roka. Vzorce ďalej vyplníme a dopracujeme sa k celkovej čiastke 112755,01.-SKK Na riešenie danej úlohy spustíme príkaz v menu Nástroje – Riešiteľ... , ktorý sa v uvedenom menu zobrazí po zadaní príkazu Nástroje - Doplnky. Ak doplnok nenájdeme, musíme ho doinštalovať. Ponuka Nástroje sa potom doplní o položku Riešiteľ... V uvedenom príklade je vidieť, že koncový kapitál v stĺpci H závisí na dvoch faktoroch, a to na úrokovej sadzbe a sadzbe dane, ktorou musíme zdaňovať príjmy z úrokov. Najprv sa zadáva cieľová bunka, ktorá obsahuje výsledok, potom kritérium, pre ktoré sa má zistiť výsledná hodnota.

Obr. 2.6 Dialógové okno na zadávanie parametrov riešiteľa Zadanie obmedzujúcich podmienok zadáme cez tlačidlo Pridať, keď najprv v dialógovom okne Pridať obmedzenie zadávame adresu bunky, volíme relačný znak a zadáme konkrétnu 66

hodnotu. V tomto dialógovom okne najprv stláčame tlačidlo Pridať a po zadaní poslednej podmienky tlačidlo OK. Dodatočné úpravy možno robiť tlačidlami Zmeniť, Odstrániť, Pridať. Po stlačení tlačidla Vyriešiť buď sa riešenie nenašlo alebo bolo nájdené a môžeme si vybrať z 3 správ: výsledkovej, citlivostnej a limitnej. Najjednoduchšia je limitná správa, z ktorej možno vyčítať hodnoty cieľovej bunky pre dolnú a hornú medzu menených buniek, t.j. okrajových podmienok. Výsledková správa vypíše detaily ponúkaného riešenia. Citlivostná správa informuje o tom, ako je riešenie citlivé na malé zmeny cieľovej bunky alebo vedľajších podmienok.

11.4

Správca scenárov

Modelom v Exceli je tabuľka príp. niekoľko tabuliek, ktoré sú navrhnuté tak, aby vyhodnocovali alebo riešili určitý problém. Príklady takýchto modelov sme si už ukázali v predchádzajúcich kapitolách. Dobrý model by mal mať tri vlastnosti: − zaručená schopnosť dávať korektné výsledky pre všetky možné hodnoty vstupných údajov − určitá pružnosť modelu, ktorá dovolí adaptáciu modelu i pri zmenách riešeného problému − rýchlosť riešenia. Veľmi užitočnou vlastnosťou Excelu je tvorba rôznych scenárov jednej tabuľky. Scenárom možno nazvať množinu vstupných údajov, ktoré slúžia na zistenie reakcie modelu na určité vstupné hodnoty. Zmenou jednotlivých scenárov môžeme zistiť správanie sa modelu v rôznych situáciach. Jeden pracovný list môže obsahovať jednu oblasť buniek použitú pre tvorbu scenáru. Každý scenár obsahuje svoje meno a množinu vstupných hodnôt. Pred vytvorením scenára sa musíme rozhodnúť, ktoré hodnoty buniek budeme meniť. Tvorbu scenára opíšeme na príklade. Použijeme tabuľku, s ktorou sme pracovali v citlivostnej analýze (obr.11.7).

Obr. 11.7 Model na výpočet ceny jedného kusa po prepočte dopravných nákladov Predpokladajme, že nás zaujíma správanie sa uvedeného modelu pri zmenách nákupnej ceny tovaru, rôznom počte kupovaných kusov, meniacej sa dovoznej vzdialenosti a rôznych cenách dopravného prostriedku za km. Na vytváranie a zmeny scenárov slúži príkaz Nástroje – Scenáre..., ktorý umožňuje meniť súčasne niekoľko vstupných hodnôt. Aby sa nám pri vytváraní scenára lepšie pracovalo, s výhodou si pomenujeme bunky B1, B2, B3, B4 a B6 priamo menami, ktoré sa nachádzajú v bunkách vo vedľajšom stĺpci ako popisy vstupných hodnôt. Využijeme na to príkaz Vložiť - Názov – Definovať. Excel prehľadá texty v okolitých bunkách a sám ponúkne mená v príslušnom dialógovom okne. Scenár sa potom vytvorí nasledovným postupom: 67

− z hlavného menu Nástroje vyberme položku Scenáre.... Zobrazené dialógové okno informuje, že v pracovnom hárku nie je ešte definovaný scenár. − zvoľme tlačidlo Pridať a zobrazí sa dialógové okno podľa obr. 11.8. Názov scenára - zadajte meno scenára Menené bunky - adresy buniek, ktoré sa budú meniť Komentár - možno zadať rôzne poznámky Zabrániť zmenám - zablokuje po uzamknutí dokumentu vykonanie zmien v scenári Skryť - skryje scenár po uzamknutí dokumentu. Daný scenár sa nezobrazí v ponuke scenárov. − vytvorme štyri scenáre („Bratislava“, „Trnava“, „Žilina“, a „Poprad“), pričom každý bude mať rôzne hodnoty buniek ($B$1 až $B$4) − po kliknutí na tlačidlo „OK“ sa zobrazí dialógové okno na zadanie hodnôt buniek scenára. Po kliknutí na tlačidlo „Pridať“ sa vrátime do predchádzajúceho dialógového okna, do ktorého vložíme meno nasledovného scenára. Po zadaní hodnôt posledného scenára kliknime na tlačidlo „OK“. Údaje vložené do scenára sú uvedené v tabuľke na obr. 11.9.

Obr. 11.8 Dialógové okno na tvorbu scenára.

Položka Nákupná cena tovaru Počet kg Počet km Cena za km

Bratislava 14 10 20 2,80 SKK

Trnava 10 50 100 2,40 SKK

Žilina 9 50 470 2,60 SKK

Poprad 8 100 700 2,70 SKK

Obr. 11.9 Údaje vložené do scenára

68

− po vložení všetkých údajov a po potvrdení po poslednom vložení „OK“ sa zobrazí dialógové okno, ktoré obsahuje názvy vytvorených scenárov (obr. 11.10).

Obr. 11.10 Dialógové okno, ktoré umožňuje narábať s už vytvorenými scenármi Význam jednotlivých tlačidiel je nasledovný: Scenáre - zoznam vytvorených scenárov Zmeniť bunky - adresy buniek, ktorých hodnoty sú v scenári menené Komentár - komentár k vybranému scenáru Zobraziť - možnosť aktivovať hodnoty v bunkách na základe vybraného scenára Zavrieť - uzavrieť dialógové okno Pridať - pridať nové scenáre do zoznamu Odstrániť - vymazať špecifikovaný scenár Upraviť - zmeniť atribúty vybraného scenára Zlúčiť - možnosť načítavať scenáre z iných pracovných hárkov Súhrn - vytvoriť súhrnnú správu zo všetkých scenárov s použitím všetkých menených buniek. Po stlačení tohto tlačidla sa vytvorí dialógové okno, v ktorom si možno zvoliť typ výstupu a to súhrnnú správu (Súhrn scenára) alebo kontingenčnú tabuľku (Kontingenčná tabuľka scenára), pričom je nutné určiť adresu bunky, v ktorej sa vypočítavajú výsledky (Bunky s výsledkami), v našom prípade je to bunka B6. Súhrnná správa obsahuje definície všetkých scenárov a súčasne aj hodnoty v menených bunkách. V spodnom riadku sa zobrazia výsledky riešení.

69

11.5

Kontingenčné tabuľky

Kontingenčná tabuľka je špeciálny druh interaktívnej tabuľky v Exceli, ktorá sa vytvára zo zdrojových dát.. Táto tabuľka poskytuje rôzne pohľady na zdrojové dáta včítanie možnosti rýchlych úprav týchto pohľadov. V niektorých literatúrach sa pojem kontingenčná tabuľka nahrádza pojmom krížová tabuľka. V anglickej verzii Pivot Table. V týchto tabuľkách možno jednoducho zhrnúť veľký objem údajov pomocou rôznych metód a usporiadať podľa vlastností a matematických funkcií ako si užívateľ sám určí. Základné pojmy Predtým, ako začneme vytvárať kontingenčnú tabuľku, zopakujeme si niektoré pojmy, ktoré sa pri práci a tvorbe kontingenčnej tabuľky bežne používajú. Zdrojové údaje je zoznam údajov zapísaných do riadkov (záznamov) a stĺpcov (polí). Zdrojové údaje musia obsahovať názvy stĺpcov, pretože v kontingenčnej tabuľke sa názvy polí vytvárajú na základe prvého riadku zoznamu (obr. 11.11). Hodnota poľa (položka) je teda každý jednotlivý údaj v zdrojových údajoch. Typ výpočtu, ktorý sa použije na vyhodnotenie hodnôt daného poľa, sa nazýva súhrnná funkcia. V kontingenčnej tabuľke sa stretneme ešte s pojmami riadkové pole, stĺpcové pole, stránkové pole a údajové pole.
Názvy polí

Záznam

Pole

Hodnota poľa

Obr. 11.11 Zdrojové údaje Tvorba kontingenčnej tabuľky Kontingenčnú tabuľku vytvoríme pomocou sprievodcu kontingenčnou tabuľkou výberom príkazu Údaje – Zostava kontingenčnej tabuľky a kontigenčného grafu... Prvé dva kroky sú jednoznačné, pričom v druhom kroku sa oblasť vyberie sama, ak sme mali aktívnu bunku v zdrojovej tabuľke (oblasť treba vybrať aj s názvami polí, t.j. nadpisov stĺpcov ). Ak si vyberieme tlačidlo Ďalej otvorí sa posledný krok sprievodcu. najprv vyberieme, kam sa má výsledná tabuľka umiestniť (obr. 11.12 ).

70

Obr. 11.12 Umiestnenie kontingenčnej tabuľky Teraz existujú dva spôsoby, ako tvorbu kontingenčnej tabuľky dokončiť: 1. spôsob: Po kliknutí na tlačidlo Rozloženie v zobrazenom dialógovom okne ťahaním presunieme požadované polia sprava do skupiny tlačidiel polí do oblasti Riadok a Stĺpec a do skupiny Údaje napr. Celková cena (obr. 11.13). Ak chceme niektoré polia použiť ako stránkové, presuňme ich ťahaním do oblasti Strana. Ak sme presunuli pole nesprávne alebo si rozvrhnutie tabuľky rozmysleli, stačí odtiahnuť pole mimo nákres jednotlivých polí. Potvrdíme rozloženie tlačidlom OK a potom na sprievodcovi tlačidlo Dokončiť.

Zoznam názvov polí

Obr. 11.13 Rozloženie polí, údajov v kontingenčnej tabuľke 2. spôsob: Ak zvolíme priamo tlačidlo Dokončiť vytvorí sa rám kontingenčnej tabuľky, do ktorého treba priamo jednotlivé položky zo zoznamu zobrazených polí (obr. 11.14). Ak by zoznam v nástrojovej lište nebol, treba stlačiť tlačidlo Zobraziť polia na nástrojovej lište Kontingenčná tabuľka. Zoznam polí je priradený k nástrojovej lište a ťahaním ich presuniete do príslušných oblastí – polia riadkov, polia stĺpcov, údajové položky a polia strán.

71

Obr. 11.14 Rozloženie údajových polí po kliknutí na tlačidlo „Dokončiť“ v okne „Sprievodca kontingenčnou tabuľkou“ Ak si vzniknuté rozvrhnutie kontingenčnej tabuľky neodpovedá predstavám, možno dané usporiadanie zmeniť veľmi jednoducho a to ťahaním polí z jednej oblasti do druhej, prípadne ťahaním mimo tabuľku, čím sa pole z tabuľky odstráni alebo jednoducho analogickým spôsobom ďalšie pole pridať (obr. 11.15).
Stránkové pole Stĺpcové pole Údajové pole

Riadkové pole

Súčet z celkových cien

Obr. 11.15 Vytvorená kontingenčná tabuľka

72

Modifikácia kontingenčnej tabuľky Vytvorená kontingenčná tabuľka ukazuje prehľad o nákupe komponentov do počítačov a o jednotlivých nákupcov vzhľadom k celkovým vynaloženým finančným prostriedkom. Ak by sme chceli získať prehľad o nakupovaných monitoroch, stačí kliknúť pri stránkovom poli na šípku pri výbere položiek. V dialógovom okne je nutné vybrať v zaškrtávacích políčkach, ktorá položka má ostať v následnom prehľade. Ak by sme chceli získať prehľad o nákupe vo vybranom termíne (dátum nákupu), treba kliknúť pri stránkovom poli na šípku a vybrať príslušnú položku (v našom prípade dátum). Treba si všimnúť, že zobrazenie kontingenčnej tabuľky sa zmenilo, zostali len tie zobrazené údaje, ktorých sa daná voľba týka (obr. 11.16). Jednoduchým ťahaním medzi stránkovým poľom, riadkovým poľom s stĺpcovým poľom možno meniť pohľad na tabuľku. Kontingenčná tabuľka sa interaktívne modifikuje a tak dáva potrebné prehľady.

Obr. 11.16 Kontingenčná tabuľka po modifikácii Je možné meniť i súhrnné funkcie pre údajové položky. Vyberte príslušnú bunku v danom poli a na paneli nástrojov Kontingenčná tabuľka vyberte znova Kontingenčná tabuľka a príkaz Nastavenie poľa. Zobrazí sa zoznam dostupných funkcií, z ktorých možno vybrať požadovanú (obr. 11.17). Ďalšie možnosti spracovania údajov poskytuje v tomto dialógovom okne tlačidlo Možnosti. Okno je príslušnom obrázku. Podobný postup je pri stlačení pravého tlačidla myši. Vybrať príkaz Nastavenie poľa.

Obr. 11.17 Dialógové okno nastavenia poľa. 73

Pri nastavovaní vlastností polí treba rozlíšiť jednotlivé polia – riadkové, stĺpcové a pole údajov. Pri nastavovaní majú iné vlastnosti. Ak chceme zobraziť podrobné záznamy z vybraných údajov, polí a pod., možno vybrať príslušnú bunku a tlačidlom Zobraziť podrobnosti na nástrojovej lište Kontingenčná tabuľka, resp. dvojkliknutím na vybranú bunku vloží sa nový pracovný hárok do pracovného zošitu so zobrazením záznamov, ktoré sa príslušnej informácie týkajú. Kontingenčný graf Z kontingenčnej tabuľky možno zostrojiť graf. Ak vyberieme jednu bunku vytvorenej kontingenčnej a klikneme na symbol v štandardnej nástrojovej liste Sprievodca grafom, vytvorí sa kontingenčný graf podľa obr. 11.18. Namiesto klasickej legendy sa v ňom nachádzajú rozbaľovacie šípky a ponuky, z ktorých možno podobne ako v kontingenčnej tabuľke vyberať, ktoré údaje chce mať užívateľ zobrazené a ktoré nie. Druhý spôsob vytvorenia grafu je voľbou položky Kontingenčný graf (s kontingenčnou tabuľkou) v prvom kroku Sprievodcu kontingenčnou tabuľkou. Potom sa zároveň s tabuľkou vytvára aj kontingenčný graf. Presúvaním názvov polí, údajov a pod. už opísaným spôsobom sa vytvára zároveň s kontingenčnou tabuľkou aj kontingenčný graf a naopak.
Splatnosť faktúry (Všetko) Dát. nákupu (Všetko) Stav platby (Všetko)

70000

Súčet z Celková cena

60000

50000

40000

Nákupca Polák Novák

30000

Malá

20000

10000

0 CD RW HDD klávesnica Tovar monitor myš

Obr. 11.18 Kontingenčný graf Výhodou kontingenčnej tabuľky je rýchle vytváranie rôznych prehľadov s rôznymi matematickými funkciami, ktoré trvajú niekoľko minút. Ak by sme chceli získať takéto prehľady inými spôsobmi, trvalo by to snáď i niekoľko hodín. Dôležité je aj to, že výsledky možno jedným kliknutím aktualizovať – kontextové menu príkazom Obnoviť údaje alebo príslušným tlačidlom na nástrojovej lište kontingenčnej tabuľky.

74

11.6

Zlúčenie údajov

Pri zlúčení resp. zlučovaní sa prenášajú údaje z viacerých tabuliek do jedného dokumentu, pričom sa s nimi vykonáva špecifikovaná matematická operácia (sčítanie, násobenie, priemer, vyhľadanie maxima, vyhľadanie minima, atď.). Zlúčenie možno vykonávať dvoma spôsobmi, buď podľa poradia stĺpcov alebo podľa názvu polí. Zlúčenie budeme ilustrovať na dvoch tabuľkách, ktoré sú v rôznych pracovných hárkoch „Zmena1“ , „Zmena2“ a „Hárok2“, ktoré sú uložené v samostatných súboroch. Zlúčenie vykonáme v pracovnom hárku „Hárok2“, ktorý je uložený v súbore „príklady2.xls“. (Obr. 11.19).

Obr. 11.19 Zlúčenie údajov Pri zlučovaní údajov z viacerých dokumentov postupujeme nasledovným spôsobom: − v pracovnom hárku „príklady2“ určíme ľavý horný roh oblasti, kde bude vytvorená výsledná tabuľka, − vyberme príkaz Zlúčiť z hlavného menu Údaje, − v editovacom okienku Funkcia vyberme funkciu Súčet, s ktorou bude Excel počas zlučovania pracovať, − v okienku Odkaz zadajme adresu oblasti buniek s údajmi, ktoré hodláme zlučovať. Po zadaní adries buniek z prvej tabuľky (stačí na ne ukázať len myšou a ťahať, adresy oblasti sa načítajú) kliknime na tlačidlo Pridať. Zadajme adresu údajov z druhej tabuľky a opäť kliknime na tlačidlo Pridať, − určíme, či sa názvy polí nachádzajú v hornom riadku (V hornom riadku) alebo názvy jednotlivých záznamov sú v ľavom stĺpci (V ľavom stĺpci) z Použiť menovky, − pokiaľ potrebujeme vytvoriť prepojenie zdrojových tabuliek s pracovným hárkom „Hárok2“, vyberme zaškrtávacie políčko Vytvoriť prepojenia na zdrojové údaje, − kliknutím na tlačidlo OK sa vykoná zlúčenie údajov zo všetkých špecifikovaných tabuliek. 75

Tlačidlami Prehľadávať možno prehľadať a vybrať požadované dokumenty z disku a Odstrániť vymazať vybranú oblasť zo zoznamu zlučovaných tabuliek.

Obr. 11.20 Výsledný tvar zlúčenej tabuľky Zlúčená tabuľka v pracovnom hárku „Hárok2“ (obr. 11.20) obsahuje všetky údaje zo zdrojových tabuliek pracovných hárkov „Zmena1“, „Zmena2“. V prípade, že sme zvolili Vytvoriť prepojenia na zdrojové údaje, potom sa každá zmena v zdrojových tabuľkách odrazí v zlúčenej tabuľke (súbor „príklady2“).

11.7

Štatistické nástroje na analýzu dátových súborov

V Exceli je pripravených celkom 19 komplexných procedúr na štatistické a inžinierske výpočty. Tieto procedúry sa vyvolávajú príkazom hlavného menu Nástroje – Analýza dát... . Ak nie je tento príkaz zobrazený, je nutné najprv zadať príkaz Nástroje – Doplnky a označiť položku Analytické nástroje. Ak sa táto položka ani tu nenachádza, musí sa spustiť inštalačný program a doplnok s názvom „Analytické nástroje“ dodatočne nainštalovať. Vzhľadom k tomu, že rozsah príručky je obmedzený a na pochopenie činnosti jednotlivých procedúr je potrebné mať aj niektoré teoretické poznatky, uvedieme iba ich zoznam. Prípadní záujemcovia si už príslušnú procedúru naštudujú a využijú v analýze svojich údajov. Sú to procedúry: - anova: jeden faktor, - anova: dva faktory s opakovaním, - anova: dva faktory bez opakovania, - korelácia, - kovariancia, - popisná štatistika, - exponenciálne vyrovnanie, - dvojvýberový F-test pre rozptyl, - Fourierova analýza, - histogram, - kĺzavý priemer, - generátor pseudonáhodných čísel, - poradová štatistika a percentily, - regresia, - vzorkovanie, - dvojvýberový párový test na strednú hodnotu, - dvojvýberový t - test s rovnosťou rozptylov, - dvojvýberový t - test s nerovnosťou rozptylov, - dvojvýberový z – test na strednú hodnotu. 76

12 Programovanie v Exceli
Najzložitejšou činnosťou v Exceli je automatizácia činností pomocou vytvorenia makier. Makro je postupnosť povelov v jazyku Visual Basic for Applications (ďalej VBA ). Excel s VBA umožňuje novým spôsobom automatizovať aplikácie. Prvou veľkou aplikáciou, ktorá využila výhody tohto konceptu, bol Excel vo verzii 5.0. S týmto novým prístupom Visual Basic vystupuje ako viacúčelový jazyk, ktorý je nezávislý na aplikácii. Každý, kto vie pracovať s Visual Basicom, má potom v automatizácii Excelu veľký náskok a všetci, ktorí sa naučia vo Visual Basicu makrá pre Excel, môžu svoje znalosti preniesť do iných oblastí programovania Visual Basicu. Pretože Excel je riadený Visual Basicom, Visual Basic neobsahuje žiadne zvláštne väzby na „vnútrajšok“ Excelu. Namiesto toho Excel svoje schopnosti predkladá Visual Basicu prostredníctvom zvláštnej skupiny príkazov, ktorá sa nazýva knižnica objektov. Visual Basic teda komunikuje s knižnicou objektov Excelu. Knižnica objektov

EXCEL

VBA

Visual Basic môže takto ovládať nielen Excel, ale taktiež akúkoľvek inú aplikáciu, ktorá poskytuje knižnicu objektov. Knižnice objektov poskytujú všetky aplikácie z Microsoft Office, ale aj aplikácie iných firiem. Visual Basic, ktorý sa dodáva s Excelom, nie je jediným jazykom, ktorý vie komunikovať s knižnicou objektov. Excel teda môžeme riadiť nielen Visual Basicom, ktorý je obsiahnutý v Exceli, ale taktiež Visual Basicom z Microsoftu Wordu alebo samostatnou verziou Visual Basicu, alebo dokonca programami v C++ alebo Borland Delphi. Knižnica objektov sprístupňuje schopnosti Excelu nielen Visual Basicu, ale čo je dôležitejšie , sprístupňuje schopnosti Excelu taktiež nám. Ak vieme, ako knižnicu objektov čítať a interpretovať, môžeme objavovať nové funkcie a rýchlo zisťovať, ako tieto funkcie zapojiť do práce. Najjednoduchším spôsobom, ako začať skúmať spôsoby komunikácie Visual Basicu s objektmi Excelu, je zaznamenať (nahrať) si niektoré jednoduché makrá. Postupne však budeme chcieť obmedzenie záznamníku makier prekročiť a začať písať vlastné makrá. Čiže v Exceli možno programovať dvoma spôsobmi: – nahrávaním makier, generovaním inštrukcií podľa činnosti zadaných z klávesnice alebo myšou, – zápisom príkazov z klávesnice podľa konvencie jazyka VBA.

12.1

Nahrávanie makra

Keď prvýkrát nahráme nejaké makro, Excel vytvorí tzv. modul. Potom každý krát, keď nahráme ďalšie makrá, Excel tieto nové makrá pridáva nakoniec tohto modulu. Keď pracovný zošit (čiže súbor) uzatvoríme a potom otvoríme, záznamník makier začne makrá zaznamenávať do nového modulu. Nemáme žiadnu možnosť ovplyvniť, kam záznamník nové makrá umiestni. 77

To, že makrá máme vo viacerých moduloch, by nemal byť problém. Keď použijeme dialóg Makro pre výber a úpravu makra, automaticky sa presunie do príslušného modulu. Nahrávanie makra sa skladá z troch krokov: spustiť nahrávanie, uskutočnenie potrebných akcií a zastavenie nahrávania. Väčšinou však budeme musieť niektoré príkazy modifikovať, aby sa mohlo makro použiť aj v inej situácii, než v akej sa nahralo. Pre náš aplikačný príklad, si naformátujeme oblasť buniek , zvolíme rámčeky (okolo dvojitý, vnútri jednoduchý ), vodorovne zarovnáme texty v bunkách na stred, zvolíme tučný typ písma a zafarbíme oblasť žltou farbou. Postup pri nahrávaní makra: – zadáme príkaz hlavného menu Nástroje - Makro – Zaznamenať nové makro – do dialógového okna si môžeme zadať meno makra a jeho popis po stlačení tlačidla „ OK “ sa vytvorí prázdny list s názvom „ Modul1“ a spustí sa nahrávanie (obr.12.1).

Obr. 12.1 Nastavenie parametrov pri nahrávaní makra Na pracovnej ploche sa objaví tlačidlo na ukončenie nahrávania makra. A teraz začneme realizovať vyššie spomenuté akcie: vyznačíme oblasť buniek, stlačíme pravé tlačidlo na myši a zadáme príkaz Formátovať bunky. Zvolíme kartičku Okraje (dvojitý vonkajší, vnútorné – jednoduchý) Zarovnanie zvolíme v Vodorovne - Centrovať a v Písmo tučný druh písma a v Vzorky príslušnú žltú farbu a nakoniec stlačíme tlačidlo OK. Príslušná oblasť sa sformátuje. Nakoniec stlačíme tlačidlo na ukončenie nahrávania alebo vyberieme príkaz hlavného menu Nástroje - Makro – Zastaviť záznam. Ak sa teraz podívame na list s názvom „ Module1“, (v zložke Modules) uvidíme tam makro v jazyku VBA ale len pre vybranú oblasť. Zvolíme príkaz hlavného menu Nástroje – Makro – Editor jazyka Visual Basic. Objaví sa nám okno podľa obr. 12.2.

78

Obr. 12.2 Okno modulu – zaznamenaného makra v editore Visual Basic Ak sa má makro používať univerzálne, musí sa pred príkaz Range dať apostrof alebo napísať Rem. Týmto vyradíme tento riadok z činnosti (obr.12.2).
Sub Makro1() ' ' Makro1 Makro ' Makro zaznamenané 21.3.1999, autor príručky ' ' Klávesová skratka: Ctrl+a ' Range("C3:E8").Select With Selection .HorizontalAlignment = xlCenter .VerticalAlignment = xlBottom .WrapText = False .Orientation = 0 .ShrinkToFit = False .MergeCells = False End With With Selection.Font .Name = "Arial CE" .FontStyle = "Bold" .Size = 10 .Strikethrough = False .Superscript = False .Subscript = False .OutlineFont = False .Shadow = False .Underline = xlUnderlineStyleNone

Pred tento riadok vložiť Rem alebo znak ‘

79

.ColorIndex = xlAutomatic End With Selection.Borders(xlDiagonalDown).LineStyle = xlNone Selection.Borders(xlDiagonalUp).LineStyle = xlNone With Selection.Borders(xlEdgeLeft) .LineStyle = xlDouble .Weight = xlThick .ColorIndex = xlAutomatic End With With Selection.Borders(xlEdgeTop) .LineStyle = xlDouble .Weight = xlThick .ColorIndex = xlAutomatic End With With Selection.Borders(xlEdgeBottom) .LineStyle = xlDouble .Weight = xlThick .ColorIndex = xlAutomatic End With With Selection.Borders(xlEdgeRight) .LineStyle = xlDouble .Weight = xlThick .ColorIndex = xlAutomatic End With With Selection.Borders(xlInsideVertical) .LineStyle = xlContinuous .Weight = xlThin .ColorIndex = xlAutomatic End With With Selection.Borders(xlInsideHorizontal) .LineStyle = xlContinuous .Weight = xlThin .ColorIndex = xlAutomatic End With With Selection.Interior .ColorIndex = 6 .Pattern = xlSolid .PatternColorIndex = xlAutomatic End With End Sub

Obr. 12.3 Záznamové makro pre formátovanie buniek

12.2

Používanie nahraného makra.

Vyznačíme oblasť buniek a stlačíme kombinácie kláves, aké sme si zvolili v dialógovom okne na nahrávanie makier. Makro môže byť prepojené prakticky s ľubovoľnými objektmi ako sú symboly na nástrojovej lište alebo tlačidlá a grafické objekty vytvorené pomocou nástrojovej lišty pre kreslenie. Týmito objektmi môžeme taktiež spúšťať priradené makrá. Napr. ak chceme prepojiť grafický objekt s nejakým makrom, vyberieme príslušný objekt a použijeme príkaz Priradiť makro (zo skráteného kontextového menu) , ktorý otvorí dialógové okno Priradiť makro so zoznamom vytvorených makier. Vyberieme si príslušné makro (objaví sa v editovacom okienku Názov makra) a klikneme na OK. Vybrané makro potom môžeme spúšťať jednoduchým kliknutím na tento objekt. 80

Analogicky postupujeme pri výbere symbolu na nástrojovej lište. S výhodou využijeme tlačidlá Makrá z dialógového okna Prispôsobiť, do ktorého sme sa dostali postupnosťou príkazov Zobraziť - Panely s nástrojmi - Prispôsobiť. Vyberieme kategóriu Makrá a budeme ho ťahať na nástrojové lišty alebo do zvláštnej lišty. Po kliknutí na tlačidlo myšou sa automaticky objaví dialógové okno Makro a môžeme priradiť symbolu už známym spôsobom existujúce makro. Po kliknutí na tento symbol na nástrojovej lište sa okamžite spustí priradené makro.

81

82

13 Tvorba makier
Makro vo Visual Basicu (VBA) sa vytvára v špeciálnom liste - Module. Makro je vytvorené pomocou procedúry. Modul obyčajne obsahuje aspoň jednu procedúru. Procedúry delíme na: – podprogramy. Začínajú kľúčovým slovom Sub a končia End Sub. Podprogram je tvorený postupnosťou povelov jazyka VBA. Podprogram nevracia hodnotu. – funkcie. Začínajú sa kľúčovým slovom Function a končia End Function. Funkcia je vždy tvorená postupnosťou povelov jazyka VBA a vždy vracia hodnotu.

13.1

Tvorba podprogramov

Štruktúru podprogramu by sme si mohli znázorniť nasledujúcim spôsobom: Sub meno_podprogramu() ‘deklaračná sekcia podprogramu ‘kód podprogramu End Sub Každý podprogram začína kľúčovým slovom Sub, za ktorým nasleduje meno podprogramu ukončené zátvorkami(). Deklaračná sekcia obsahuje deklarácie premenných a definíciu konštánt na úrovni procedúry. Poznáme premenné typu Boolean, Integer, Long, Single, Double, Currency, Date, Object, String, Variant a užívateľský typ. Ak nedeklarujeme premennú, Excel jej potom priradí typ Variant, čo predstavuje najväčšie nároky na pamäť. Kód podprogramu je časť, v ktorej sa vykonávajú požadované akcie. Je to postupnosť kľúčových slov, objektov, ich metód a vlastností, názvov funkcií, podprogramov, premenných, konštánt a komentárov.

13.2

Premenné a ich deklarácie

Premenné sa používajú na uchovanie a manipuláciu s hodnotami alebo dátami pri behu makra. Každú premennú možno charakterizovať: – menom – dátovým typom – dostupnosťou a – hodnotou.

13.2.1

Meno premennej

Meno premennej musí spĺňať nasledovné kritéria: – musí začínať písmenom (napr. a, y, cena_1, DPH1, ale nie 1a, 25) – nesmie obsahovať medzeru, bodku alebo ďalšie špeciálne znaky ako &, %, $, # a pod. – musí byť v module jedinečná 83

nesmie presahovať 255 znakov.

13.2.2

Dátový typ premennej

Charakterizuje množstvo pamäte, ktorá je priradená premennej a taktiež hodnotu, ktorú môžeme do nej uložiť. V nasledujúcej tabuľke na obr. 13.1 zoznam dátových typov a veľkosti priradenej pamäte jednotlivým typom. V stĺpci označenie nájdeme príponu (suffix), ktorou je možné označiť typ premennej bez predchádzajúcej deklarácie.
Dátový typ Boolean Integer Long Single záporné čísla kladné čísla Double záporné čísla kladné čísla Currency Date Object String Variant Užívateľský 8 bajtov 8 bajtov 4 bajty 1 bajt na znak 16 bajtov + 1 bajt na znak, ak obsahuje reťazec Záleží na definícii @ Pamäť 2 bajty 2 bajty 4 bajty 4 bajty 8 bajtov Identifikátor typu % & ! # Prípustné hodnoty True alebo False -32 768 do 32 767 -2 147 483 648 do 2 147 483 647 0 a intervaly -3,402823E38 do -1,401298E-45; 1,401298E-45 do 3,402823E38 0 a intervaly -1,7976931346232E308 do -4,94065645841247E-324; 4,94065645841247E-324 do 1,7976931346232E308 -922 337 203 685 477,5808 do 922 337 203 685 477,5808 od 1.1.100 do 31.12.9.9999 Odkaz na akýkoľvek objekt Excelu Množstvo znakov závisí na systéme MS Windows do 65535 znakov Akýkoľvek dátový typ VBA s výnimkou úžívateľského

$

Obr. 13.1 Tabuľka dátových typov Ako je v tabuľke uvedené, VBA pozná rôzne typy dát a premenných. Ak neurčíme (nedeklarujeme) typ premennej, Excel priradí dátový typ premennej Variant. Ak napíšme na začiatku modulu kľúčové slovo Option Explicit, potom musíme deklarovať každú premennú, ktorú použijeme.

13.2.3

Deklarácia premenných

Deklarácia premennej ako dátového typu napr. Integer je napr. Dim Premenná As Integer kde Dim je kľúčové slovo deklarácie (od slova Dimension) Premenná - meno premennej, ktorú deklarujeme 84

As - kľúčové slovo, ktoré oddeľuje meno premennej a názov dátového typu Integer - kľúčové slovo označujúce názov dátového typu. Pomocou kľúčového slova Dim možno deklarovať i viacej premenných naraz použitím jedného slova Dim. ďalšie deklarácie sa potom oddeľujú čiarkou:
Dim x As Integer, B As Boolean, C As Single

Ale v prípade
Dim A,B,C As Integer

prvé dve premenné (A,B) nie sú typu Integer, ale Variant. Iba premenná C je typu Integer. V prípade, že nechceme deklarovať premennú pomocou kľúčového slova Dim, ale chceme určiť jej typ pri priradení, môžeme použiť identifikátor typu podľa tabuľky na obr. 3.1. Napríklad x% = 10 alebo y! = 3.14 alebo z$ = “Ahoj!“. Premenná x je typu Integer, y je typu Single a z je typu String.

13.2.4

Užívateľský dátový typ

Tento typ sa skladá z niekoľkých dátových typov VBA. Pred samotnou deklaráciou premennej užívateľského typu je potrebné definovať samotný užívateľský typ, pričom táto definícia musí byť vždy na úrovni modulu a pred procedúrami. deklarácia premennej ako užívateľského typu je názorne objasnená na príklade na obr. 13.2:
Type Údaje Meno As String Priezvisko As String Vek As Integer End Type Sub Užív_typ() Dim Osoba As Údaje Osoba.Meno = "Jozef" Osoba.Priezvisko = "Púčik" Osoba.Vek = 105 MsgBox Osoba.Meno & " " & Osoba.Priezvisko & ", Vek: " & _ Osoba.Vek & " rokov" End Sub

Obr. 13.2 Užívateľský dátový typ Ako vyplýva z príkladu, k jednotlivým položkám možno pristupovať pomocou označenia premennej a jej zložky, vzájomne oddelených bodkou. Tento spôsob sa podobá zápisu objektov, ich vlastností a metód. V tomto príklade ako aj v niektorých najbližších ďalších je použitá funkcia MsgBox v tej najjednoduchšej forme. Bližšie vysvetlenie bude predmetom v niektorej z ďalších kapitol.

13.2.5

Dostupnosť premenných

Principiálne je oblasť platnosti premennej obmedzená na procedúru, v ktorej je deklarovaná. Ak nedeklarujeme premennú na úrovni procedúry, ale na úrovni modulu, ešte pred procedúrami tohto modulu, je táto premenná k dispozícii bez obmedzenia pre všetky 85

procedúry tohto modulu. Čiže dostupnosť premennej závisí na mieste a spôsobe ich deklarácie. V tejto súvislosti rozlišujeme 3 základné úrovne dostupnosti a deklarácie premenných: – na úrovni procedúry (Procedure level - scope) – na úrovni modulu (Modul level - scope) – na úrovni projektu (Project level - scope). Premenná na úrovni procedúry Tieto premenné sú deklarované pomocou kľúčového slova Dim vnútri danej procedúry na jej začiatku a je potom prístupná len z danej procedúry. Takúto premennú nazývame lokálnou. Na obr. 13.3 je uvedený príklad.
Sub lokprem() Dim x As Integer x = 100 MsgBox x volanie End Sub Sub volanie() MsgBox x End Sub

Obr. 13.3 Premenná na úrovni procedúry Ak spustíme prvú procedúru, objaví sa dialógové okno s hodnotou 100 a potom sa volá druhá procedúra. Ďalšie dialógové okno bude bez priradenej hodnoty. Obe premenné majú rovnaký názov, ale ich hodnoty sú uložené na iných pamäťových miestach. Príklad funguje za predpokladu, ak nie je vyžadovaná deklarácia premenných. Premenná na úrovni modulu. Tieto premenné sa deklarujú opäť pomocou kľúčového slova Dim pred všetkými procedúrami na začiatku modulu. Takto definované premenné sú dostupné zo všetkých procedúr v module. V nasledujúcom príklade je premenná x deklarovaná na úrovni modulu.
Dim x As Integer Sub modulprem() x = 150 MsgBox x volanie End Sub Sub volanie() MsgBox "A teraz? " & x End Sub

Obr. 13.4 Deklarácia premenných na úrovni modulu. V tomto prípade dialógové okná zobrazujú rovnaké hodnoty (v druhom prípade je pridaný z dôvodu identifikácie text). To isté platí, ak namiesto Dim použijeme na úrovni modulu kľúčové slovo Private. 86

Premenné na úrovni projektu Tieto premenné sa deklarujú pomocou kľúčového slova Public pred všetkými procedúrami na začiatku modulu. Takto definované premenné sú dostupné zo všetkých procedúr vo všetkých moduloch v zošite. Riadok pre deklaráciu bude mať tvar:
Public x As Integer, Meno As String

Statická premenná Premenné na úrovni procedúry uchovávajú svoje hodnoty do ukončenia behu procedúry. A to len v tom prípade, že nie sú statické, sú teda deklarované pomocou kľúčového slova Dim. Čiže všetky premenné v procedúre sú po dosiahnutí konca procedúry zrušené okrem premenných deklarovaných pomocou Static. Uvedieme príklad:
Sub Statická_prem() Statická Statická Statická End Sub Sub Statická() Static a As Integer Dim b As Integer a=a+1 b=b+1 MsgBox "Statická je: " & a & " Štandardná je : " & b End Sub

Obr. 13.5 Deklarácia statickej premennej Pri prvom volaní procedúry Statická sa objaví v prípadoch a,b číslo 1. Po druhom spustení procedúry budú hodnoty premenných a = 2, b = 1, atď. Hodnota statickej premennej naďalej zostáva v pamäti. Dostupnosť konštánt Pre konštanty platia obdobné pravidlá ako pre premenné. Opäť rozlišujeme 3 typy konštánt a to definované na úrovni procedúry, modulu a projektu. Ak sú hodnoty definované vo vnútri procedúry, majú len lokálnu platnosť, t.j. sú potom známe len tejto procedúre.
Sub konštanta() Const DPH As Integer = 23 p = 300 x = p / 100 * DPH MsgBox x End Sub

Obr. 13.6 Príklad deklarácie konštanty vo vnútri procedúry Ak definujeme konštanty na úrovni modulu, sú tieto konštanty k dispozícii všetkým procedúram, ktoré sú obsiahnuté v module a môžu byť nimi využívané.
Const DPH As Integer = 23

87

Sub konštanta1() p = 300 x = p / 100 * DPH MsgBox x End Sub Sub konštanta2() r = 600 x = r / 100 * DPH MsgBox x End Sub

Obr. 13.7 Definícia konštanty na úrovni modulu Poznámka: Zápis je rovnaký, ale ešte viac zvýraznený z hľadiska deklarovania konštanty, ak pred kľúčové slovo Const napíšeme Private. Potom bude zápis v tvare:
Private Const DPH As Integer = 23

Ak definujeme konštantu pomocou kľúčového slova Public Const, je potom prístupná všetkým procedúram v každom module zošitu, čiže je definovaná na úrovni projektu. Zápis takéhoto riadku bude potom v tvare:
Public Const DPH As Integer = 23

Odovzdanie hodnôt iným procedúram V definícii volanej procedúry musíme v zátvorke uviesť za menom podprogramu resp. funkcie všetky odovzdávané príp. deklarované premenné. Syntax zápisu bude nasledovný: Sub meno (zoznam premenných) Function meno (zoznam premenných) Ak vynecháme deklaráciu dátového typu, premenná je typu Variant. Ak použijeme viac predávaných parametrov, oddelíme ich čiarkou. Príklad odovzdania parametrov procedúre je na obr. 13.8.
Sub Predanie() Dim c As Integer c = Int(Rnd * 10) Zobraz 50 Zobraz c End Sub Sub Zobraz(x As Integer) MsgBox "Zobrazené číslo je: " & x End Sub

Obr. 13.8 Odovzdanie hodnôt inej procedúre. V uvedenom príklade sa po prvom volaní podprogramu Zobraz zobrazí hodnota 50, pri ďalšom volaní sa zobrazí hodnota výrazu Int(Rnd * 10). Funkcia Rnd vráti náhodne generované číslo v intervale (0;1). Funkcia Int vráti najbližšie celé číslo argumentu. Odovzdanie pomenovaného parametra 88

Ak odovzdávame parameter procedúre, môžeme ho označiť príslušným menom tak, ako je to uvedené v hlavičke volanej procedúry. Zápis volania procedúry s pomenovaním parametra je potom napríklad:
Ukaž x := 10

Treba si všimnúť, že meno a hodnota sú vzájomne oddelené znakmi := (dvojbodka a rovná sa). Výhodou tohto predania je – prehľadnosť – nie je nutné predávať parametre v takom poradí, v ktorom sú deklarované v hlavičke volanej procedúry – nemusíme predávať všetky parametre ( ak sú nepovinné), môžeme napríklad predať len prvé a posledné.
Sub Predanie_podľa_mena() Dim a As Integer, b As Integer a=5 b = 10 Volaná Par1:=b, Par2:=a End Sub Sub Volaná(Par1, Par2) MsgBox "Par1=" & Par1 & " Par2=" & Par2 End Sub

Obr. 13.9 Odovzdanie parametra podľa mena V uvedenom príklade bude mať parameter Par1 hodnotu 10 a parameter Par2 hodnotu 5. Zároveň došlo k zámene poradia zadaných čísiel. Viacnásobné priraďovacie príkazy možno zapísať do jedného riadku nasledovne: a = 5 : b = 10. Odovzdanie parametra odkazom alebo hodnotou Ak odovzdávame parameter odkazom (by Reference), je volanému makru odovzdaná samotná premenná, ktorej hodnota môže byť vo volanom makre zmenená. Ak odovzdávame parameter hodnotou (by Value), je volanému makru odovzdaná len hodnota premennej. Volané makro potom už nemôže zmeniť hodnotu tejto premennej. Uvedieme najprv príklad na odovzdanie parametra odkazom.
Sub odkaz() Dim x As String x = "sever" MsgBox "Idem na " & x & "..." Zmena x MsgBox "...a už idem na " & x & "." End Sub Sub Zmena(ByRef y As String) y = "západ" End Sub

V tomto príklade podprogram Zmena mení hodnotu premennej x zo „sever“ na „západ“. Na odovzdanie parametra hodnotou uvedieme príklad s podobným obsahom. Sub hodnota() Dim x As String x = "sever" 89

Novysmer x MsgBox "Pôvodný smer bol: " & x & "." End Sub Sub Novysmer(ByVal y As String) y = "juh" MsgBox "Nový smer: " & y & "." End Sub V tomto príklade hodnota premennej x nie je zmenená podprogramom Novysmer.

Význam a použitie polí Pole je výhodný nástroj pre prácu s väčším objemom dát. Je to indexovaná skupina premenných rovnakého typu. Polia môžu byť jednorozmerné, dvojrozmerné, trojrozmerné alebo viacrozmerné. Na vytvorenie predstavy o trojrozmernom poli možno použiť knihu (resp. zošit v Exceli). Jeden rozmer predstavuje list, ďalší riadok a ďalší rozmer stĺpec. Iná možnosť predstavy je kocka, ktorá sa skladá z menších kociek - jednotlivých položiek poľa. Polia môžu obsahovať až 60 rozmerov (dimenzií). Deklarácia polí vychádza z podobných princípov ako deklarácia premenných. Napr. deklarácia jednorozmerného poľa s desiatimi prvkami typu Integer bude
Dim Pole1(10) As Integer

Deklarácia dvojrozmerného poľa sa sto (10*10) prvkami typu Integer bude mať zápis:
Dim Pole2(10, 10) As Integer

Deklaráciu trojrozmerného poľa s tisíc (10*10*10) prvkami typu Integer môžeme zapísať v tvare:
Dim Pole3(10, 10, 10) As Integer

Ku každému prvku poľa možno jednoznačne pristupovať formou jeho indexov. Vyššie opísané typy polí majú pevnú veľkosť stanovenú pri jeho definícii. Ale často potrebujeme meniť veľkosť polí pri behu makra. Výhoda je hlavne v tom, že zbytočne neprideľujeme poľu viacej pamäte, ako je potrebné. Jedná sa hlavne o prípady, keď predpokladáme zmeny dĺžky poľa. Deklarácia dynamického poľa typu Integer bude potom
Dim Pole() As Integer

V deklarácii priradíme iba typ a nie veľkosť. Predtým ako začneme pole používať, musíme stanoviť jeho veľkosť kľúčovým slovom ReDim.
Sub Dyn_pole() Dim Pole() As Integer ReDim Pole(2) Pole(1) = 10 Pole(2) = 100 MsgBox Pole(1) & " ; " & Pole(2) ReDim Pole(3) Pole(1) = 23 Pole(2) = 55 Pole(3) = 77 MsgBox Pole(1) & " ; " & Pole(2) & " ; " & Pole(3) End Sub

Obr. 13.10 Použitie dynamického poľa 90

Ak chceme zachovať obsah poľa, za kľúčové slovo ReDim pridáme kľúčové slovo Preserve. V tomto prípade nemožno meniť počet dimenzií poľa, ale len ich veľkosť. Ak pole zmenšíme, stratí sa príslušný počet eliminovaných prvkov. Spodnú hranicu poľa (index prvej položky) možno meniť na úrovni modulu pred všetkými procedúrami a to vložením inštrukcie Option Base 0 alebo Option Base 1. V prvom prípade pri deklarácii poľa Dim x (10) As Single je desať premenných typu Single a majú označenie ako x(0), x(1), x(2), ... ,x(9). V druhom prípade (Option Base 1) sú určované ako x(1), x(2), ... ,x(10). Funkcie, ktoré sa používajú v súvislosti s poľom: 1. Array - vracia argumenty ako pole. Príklad:
Option Base 1 Sub príkaz_Array() Dim x As Variant x = Array("Agent", " 007") MsgBox x(1) MsgBox x(2) End Sub

2. Erase - vymaže obsah statického poľa, pri dynamickom naviac uvoľní obsadenú pamäť. V argumente funkcie je názov poľa. 3. LBound, UBound - vracia hodnotu horného a dolného indexu hranice poľa. Argumentom funkcie je opäť názov poľa. 4. IsArray - vracia hodnotu True v prípade, že argument je názov poľa. V inom prípade vracia hodnotu False. Príklady využitia niektorých funkcií ukážeme na príklade na obr. 13.11.
Sub Pole() Dim x() As Single ReDim x(1 To 10) As Single For i = 1 To 10 x(i) = i Next i pole_test (x()) ReDim x(5 To 20) As Single For i = 5 To 20 x(i) = i Next i pole_test (x()) End Sub Sub pole_test(x() As Single) For i = LBound(x) To UBound(x) MsgBox x(i) Next i End Sub

Obr. 13.11 Práca s dynamickým poľom a funkciami hraníc dátových polí V príklade je použitý aj príkaz cyklu, ktorý bude analyzovaný neskôr. V tejto procedúre bude predané číslo x neznámej veľkosti. V príslušnom MsgBox-e sa potom objavujú čísla s indexom od x(1) do x(10) resp. od x(5) do x(20), pretože LBound(x) zistí hornú a UBound(x) dolnú hranicu poľa. 91

13.3
13.3.1

Funkcie a kľúčové slová VBA
Funkcie užívateľského vstupu a výstupu

Funkcia MsgBox Zobrazí dialógové okno so zadaným textom správy. Syntax zápisu: MsgBox (prompt[,buttons][,title][,helpFile,helpContextID]) kde prompt zobrazí text správy a môže obsahovať do 1024 znakov buttons - číselný výraz, ktorý špecifikuje tlačidlá title - textový reťazec, ktorý sa zobrazí v záhlaví dialógového okna. Ak nie je uvedený, potom sa zobrazí „Microsoft Excel“. helpFile,helpContextID - súbor a text užívateľskej nápovedy. Dáta uvedené v hranatých zátvorkách sú nepovinné. Metóda InputBox Zobrazí dialógové okno s textovým poľom na zadania užívateľského vstupu. Má naviac jeden argument (type) na automatickú kontrolu zadaného typu vstupu. Syntax zápisu:
Application.InputBox (prompt[,title][,default][,left][,top][,helpFile,helpContextID][,type])

kde

prompt zobrazí text správy title - textový reťazec, ktorý sa zobrazí v záhlaví dialógového okna. Ak nie je uvedený, potom sa zobrazí „Microsoft Excel“. default - východzí údaj, ktorý sa zobrazí v editovacom okienku dialógového okna. Ak ho vynecháme, bude editovacie okienko prázdne. Môže to byť i výraz typu Range. left - číselný výraz, ktorý udáva x-ovú súradnicu ľavého horného rohu okna od horného rohu obrazovky. Jeden bod je 1/72 palca. top - číselný výraz, ktorý udáva y-ovú súradnicu ľavého horného rohu okna od horného rohu obrazovky. Jeden bod je 1/72 palca. helpFile,helpContextID - súbor a text užívateľskej nápovedy. type - špecifikácia dátového typu vstupu. Hodnoty parametrov sú uvedené v tabuľke na obr. 13.12.
Hodnota 0 1 2 4 8 16 64 Zadaná položka vzorec číslo text (reťazec) logická hodnota typu Boolean adresa buniek, objekt typu Range chybová hodnota (ako #NV) pole hodnôt

Obr. 13.12 Tabuľka možných dátových typov vstupu Možno použiť i viaceré parametre dátového typu vstupu. Napríklad vstupný dialóg pre text aj číslo bude mať hodnotu parametra Type:=3 (1+2). Ako príklad na MsgBox a InputBox uvedieme výpočet druhej mocniny zadaného čísla. 92

Sub Mocnina() a = Application.InputBox(prompt:="Zadaj číslo a bude mocnina", _ Title:="Mocnina", Type:=1) b=a^2 MsgBox prompt:="Pôvodné číslo: " & a & " Číslo na druhú: " & b, _ Title:="Výsledky" End Sub

Obr. 13.13 Príklad na „MsgBox“ a „InputBox“ Príklad zobrazí dialógové okno s nadpisom a správou. Na výstupe dostaneme hodnotu zadaného čísla a jej druhej mocniny. Makro napíšeme do nového listu makier, ktorý si otvoríme príkazmi cez hlavné menu Vložiť - Makro - Visual Basic Modul. Napísané makro spustíme tak, že blikajúci kurzor umiestnime hocikde do napísanej procedúry a zvolíme príkaz Makro - Spustiť F5, alebo priamo stlačíme funkčný kláves F5. Poznámka: Ak je niektorý riadok dlhý a chceme ho mať pred sebou na obrazovke tak, aby pokračoval v druhom riadku, ukončime riadok znakmi „ _“ (medzera a podčiarknutie) a stlačme kláves Enter. Táto aplikácia je uvedená aj v príklade na obr. 13.13.

13.3.2

Vybrané riadiace štruktúry jazyka VBA

VBA ponúka rad riadiacich štruktúr, ktoré umožňujú vetviť program alebo opakovať jeho časti na základe vyhodnotenia podmienok. Tieto štruktúry sú rovnaké ako tie, ktoré sa vyskytujú i v ostatných programovacích jazykoch ako C, Pascal a ďalšie. Poznámka: - tučne sú vyznačené kľúčové slová - v hranatých zátvorkách sú nepovinné časti konštrukcie Podmienka If - Then - Else Umožňuje vetviť program na základe podmienky. Syntax zápisu: If podmienka Then povely P [Else povely N] End If K vetveniu programu dochádza na základe splnenia podmienky. Ak je podmienka splnená (Pravda), program pokračuje za kľúčovým slovom Then a vykoná povely P. Ak nie je podmienka splnená (Nepravda), program pokračuje za kľúčovým slovom Else a vykoná povely N. End If ukončuje blok podmienky. Ako príklad uvedieme test inteligencie počítanie od čísla 1 do 10.
Sub Podmienka() Dim x As Integer x = Application.InputBox(prompt:="Zadaj číslo medzi 1 až 10", _ Title:="Vstup čísla",Type:=1) If x >= 1 And x <= 10 Then MsgBox "Výborne, zadal si správne číslo!" Else MsgBox "Poriadne sa sústreď, lebo inak..." Podmienka

Volanie 93

End If End Sub

Obr. 13.14 Podmienka „If - Then – Else“ Často má byť v programoch uskutočnená voľba nie z dvoch, ale z troch, štyroch alebo viacej alternatív. Potom použijeme rozšírený tvar: If podmienka Then povely ElseIf podmienka1 Then povely ElseIf podmienka2 Then povely Else Povely N End If End Sub Uvedieme príklad aj s využitím poznatkov z predchádzajúceho príkladu:
Sub Ak() Dim x As Single x = Application.InputBox(prompt:="Zadaj aktuálnu teplotu", Type:=1) If x < 0 Then MsgBox "Veľmi chladno" ElseIf x >= 0 And x <= 10 Then MsgBox "Chladno" ElseIf x > 10 And x <= 20 Then MsgBox "Celkom pohoda" ElseIf x > 20 And x <= 30 Then MsgBox "Teplo" Else MsgBox "Ideme do viechy!!!" End If End Sub

Obr. 13.15 Viacnásobné vetvenie „If-Then-ElseIf-Else“ Nepodmienený skok GoTo Nepodmienený skok GoTo preruší sekvenčný beh programu a vynúti si skok na zadané návestie riadku, odkiaľ beh programu pokračuje. Návestie riadku je meno, ktoré podlieha rovnakým pravidlám ako mená premenných, ale musí sa končiť dvojbodkou. Napr.: GoTo Skok povely ... Skok: Programátori, ktorí boli zvyknutí používať v Basicu čísla riadkov pri nepodmienenom skoku, musia na túto vo VBA skutočnosť zabudnúť. 94

Cyklus For - Next Umožňuje vykonávať niekoľkokrát postupnosť povelov. Príkaz sa vykonáva opakovane, pokiaľ počítadlo nedosiahne koncovú hodnotu. Po jej dosiahnutí sa cyklus vykoná ešte raz. Syntax zápisu: For počítadlo= od To do [Step krok] povely Next [počítadlo]
Sub Cyklus_For_Next() Dim n, m As Integer m = Application.InputBox(prompt:="Kolkokrat mam pipnut", _ Title:="Zadaj pocet", Type:=1) For n = 1 To m Beep Application.Wait Now + CDate("00:00:03") Next n End Sub

Obr. 13.16 Subprocedúra na zapípanie počítača po troch sekundách Cyklus While - Wend Vykonáva postupnosť povelov za kľúčovým slovom While, ak je splnená podmienka. Ak podmienke splnená nie je , program pokračuje ďalším povelom za kľúčovým slovom Wend. Syntax zápisu: While podmienka povely, ak je splnená podmienka Wend koniec slučky. Ako príklad uvedieme príklad na uhádnutie veku spoluobčana. Program vyhodnotí aj počet pokusov hádania správneho veku.
Sub While_Wend() Dim x, y, r As Integer y=0 x = 43 While x <> r y=y+1 MsgBox "No tak hádaj!" r = Application.InputBox(prompt:="Uhádni, kolko mám rokov?", _ Title:="Roky", Type:=1) Wend MsgBox "Uhádol si na " & y & " - krát" End Sub

Obr. 13.17 Subprocedúra na príkaz cyklu „While – Wend“

95

Cyklus Do - Loop Cyklus Do - Loop predstavuje zovšeobecnený typ cyklu While - Wend, ktorý je potom tak trochu nadbytočný. Podobne aj tu existuje podmienka cyklu, ktorá je testovaná. Vykonávanie inštrukcií vo vnútri cyklu závisí od výsledku tohto cyklu. Vykonávanie inštrukcií vo vnútri slučky závisí na výsledku tohto testu. na rozdiel od While si však môžeme vybrať, či sa test vykoná na začiatku alebo na konci cyklu. 1. Test na začiatku cyklu: Do While alebo Until podmienka povely
. .

Loop 2. Test na konci cyklu Do povely
. .

Loop While alebo Until podmienka V obidvoch prípadoch sa pred testovaným výrokom nachádza jedno z dvoch kľúčových slov While alebo Until. Pri While sa cyklus nekoná, keď má výrok hodnotu True a bude ukončený, keď má hodnotu False. Aplikácie jednotlivých cyklov uvedieme na príklade. Jedná sa o vytiahnutia šťastného čísla 7, pričom nás zaujíma, na koľký pokus sme uvedené číslo vytiahli. Interval čísiel, z ktorých vyhľadávame je <0;9>. Prvý ťah sa uskutoční mimo cyklu. Pokiaľ je premenná c = 7 vybraná hneď v prvom ťahu, cyklus sa neuskutoční ani raz. Program pokračuje za kľúčovým slovom Loop. Cyklus Do While - Loop
Sub Do_While_Loop() Dim c As Integer, p As Integer p=1 c = Int(Rnd * 10) Do While c <> 7 c = Int(Rnd * 10) p=p+1 Loop MsgBox "Číslo 7 bolo vylosované na " & p & "krát" End Sub

Obr. 13.18 Príklad na cyklus „Do While – Loop“ V nasledujúcom budú ukázané všetky možnosti, ktoré cyklus Do - Loop ponúka. Jedná sa o vyhľadávanie daného čísla v skupine náhodne generovaných čísel. Premenná c na uchovanie náhodne generovaného čísla a premenná p počíta počet ťahov nutných na vytiahnutie čísla 7. Cyklus Do Until - Loop V cykle Do Until - Loop sa bude cyklus vykonávať dovtedy, pokým vylosované číslo nebude mať hodnotu 7 (Until = 7). 96

Sub Do_Until_Loop() Dim c As Integer, p As Integer p=1 c = Int(Rnd * 10) Do Until c = 7 c = Int(Rnd * 10) p=p+1 Loop MsgBox "Číslo 7 bolo vylosované na " & p & "krát" End Sub

Obr. 13.19 Príklad na cyklus „Do Until – Loop“ Cyklus Do - Loop While Na rozdiel od predchádzajúcich dvoch príkladov, nedochádza k vylosovaniu prvého čísle mimo cyklu, pretože tento je vždy vykonaný aspoň jedenkrát vo vnútri cyklu. Cyklus sa opakujú dovtedy, pokým losované číslo nie je rovné 7 (While <>7).
Sub Do_Loop_While() Dim c As Integer, p As Integer p=0 Do c = Int(Rnd * 10) p=p+1 Loop While c <> 7 MsgBox "Číslo 7 bolo vylosované na " & p & "krát" End Sub

Obr. 13.20 Príklad na cyklus „Do - Loop While“ Cyklus Do- Loop Until Cyklus sa bude opakovať dovtedy, pokým vylosované číslo nebude rovné 7 (Until = 7)
Sub Do_Loop_Until() Dim c As Integer, p As Integer p=0 Do c = Int(Rnd * 10) p=p+1 Loop Until c = 7 MsgBox "Číslo 7 bolo vylosované na " & p & "krát" End Sub

Obr. 13.21 Príklad na cyklus „Do - Loop Until“ Vetvenie Select Case Umožňuje vetviť program do niekoľko vetiev podľa podmienky. Používa sa obvykle vtedy, keď má vyhodnocovaný výraz viac ako dve testované možnosti. Syntax zápisu: Select Case vyhodnotený výraz 97

[Case zoznam výrazov s Is alebo To povely] [Case Else inak povely] End Select Príklad na základe vášho zadaného veku usúdi, aký asi dopravný prostriedok používate. Všimnite si možnosť variantného zadávania funkcie MsgBox.
Sub Vetvenie_Select_Case() Dim x As Integer x = Application.InputBox(prompt:="Koľko máte rokov ?", _ Title:="Anketa", Type:=1) Select Case x Case Is < 8 MsgBox "Asi jazdíte na trojkolke" Case 8 To 18 MsgBox "Asi jazdíte na bicykli" Case 15 To 70 MsgBox "Asi používate Auto" Case Is > 120 MsgBox prompt:=("Asi už lietate na metle") Case Else MsgBox "Vodičský preukaz asi nemáte, tak nech vás niekto odvezie" End Select End Sub

Obr. 13.22 Vetvenie programu na základe podmienky

13.4

Tvorba funkčných makier

Funkčné makrá sú podobné podprogramom. Odlišnosti sú iba v nasledujúcich bodoch: – ako sme už spomenuli, podprogram začína slovom Sub a končí slovom End Sub. Funkčné makro začína ale kľúčovým slovom Function a končí kľúčovým slovom End Function. V hlavičke za ich menom a zoznamom môže nasledovať deklarácia dátového typu hodnoty, ktoré funkčné makro vracia. – podprogramy môžeme spúšťať priamo v module, ako sme opísali v predchádzajúcej kapitole (napr. F5). Funkčné makro môžeme volať z buniek tabuľky alebo z podprogramov. – funkčné makrá vracajú hodnotu do bunky tabuľky, z ktorej je volaná, alebo do podprogramu. Ako príklad uvedieme funkčné makro na výpočet prepony pravouhlého trojuholníka pomocou Pytagorovej vety.
Function pyt(a, b) pyt = Sqr(a ^ 2 + b ^ 2) End Function

Obr. 13.23 Príklad funkčného makra

98

Uvedená funkcia je dostupná vo dialógovom okne Vloženie funkcie v kategórii funkcií definované používateľom. Argumenty funkcie sa potom zadávajú známym spôsobom prostredníctvom dialógového okna a budú uvedené v zátvorkách.

13.5

Ladenie a testovanie programu.

Pri ladení a testovaní programu používame súbor nástrojov, ktoré umožňujú krokovať makro, sledovať hodnoty premenných makra atď. Cieľom je odhaliť chybu, ktorá sa skrýva v makre. Druhy chýb, ktoré sa môžu v makre vyskytnúť: – syntaktické chyby vznikajú obyčajne nesprávnym zápisom výrazov alebo preklepom. Sú to napr. neuzavreté úvodzovky alebo zátvorky a pod. Tieto chyby sú odhalené v okamihu, keď opustíme riadok. – jazykové chyby vznikajú v dôsledku chybne vytvoreného programu. Patria sem chyby ako vynechanie kľúčového slova Next v cykle For - Next, End If v prípade podmienky If - Then, kríženie cyklov a pod.. Tieto chyby sú odhalené ihneď pri prvom spustení programu, kedy dochádza k jeho kompilácii. – behové chyby sa objavia až pri behu makra, keď nie je možné vykonať danú akciu. Taká chyba sa prejaví napr. pri odkaze na neexistujúci objekt. – logické chyby sa objavujú až pri behu makra, ale nemusia spôsobiť chybu, t.z. zastaviť makro. Chyba sa prejavuje tak, že makro sa chová inak ako očakávame. Napr. môže ísť o použitie inej funkcie, zámenu logického operátora Or a And v logickej podmienke a pod. Cieľom ladenia programu je odhaliť dve posledne opísané druhy chýb. Krokovanie makra Krokovanie makra znamená, že vykonávame postupne povely jeden za druhým. Ak chceme krokovať makro, kliknime kurzorom do príslušného makra a zvolíme povel Debug – Step Into, alebo stlačme kláves F8 alebo klikneme na príslušné tlačidlo (Step Into) na nástrojovej lište Debug. Makro sa spustí v ladiacom režime a zobrazí sa žltá šípka v riadku, ktorý sa vykoná pri ďalšom stlačení klávesu F8. Ak chceme sledovať a tým kontrolovať hodnoty premennej alebo výrazu v programe, musíme ich pridať do zoznamu sledovaných hodnôt. Toto uskutočníme tak, že najprv označíme premennú v makre, ktorú chcem sledovať a potom zvolíme príkaz Debug – Add Watch. V dialógovom okne je vyznačená premenná (Expression), a z akej procedúry, modulu a súboru premenná pochádza. V okne vystupujú možnosti voľby nasledovných položiek: Watch Expression (zobrazenie výrazu) - zobrazuje len okamžitú hodnotu výrazu Break When value Is True (prerušit pri hodnote Pravda)- prechádza do režimu ladenia, ak je vybraný výraz PRAVDA (TRUE) break When Value Changes (prerušiť pri zmene hodnoty) - prechádza sa do režimu ladenia, ak sa zmení hodnota výrazu. Príslušné dialógové okno je na obr. 13.24.

99

Obr. 13.24 Pridanie kontroly premennej

13.6

Objekty, metódy a vlastnosti

Programovací jazyk Visual Basic for Applications (VBA) je objektovo orientovaný. Existujú „objekty“ a špeciálne prvky jazyka, ktoré majú zjednodušovať zaobchádzanie s týmito objektmi. Východiskom je úvaha, že objekt má určité „vlastnosti“ a môžeme ním manipulovať určitými „metódami“. • Objekty. Prakticky všetko, s čím máme v Exceli do činenia, je objekt: pracovný hárok, oblasť buniek, textové pole, nástrojová lišta alebo legenda grafu. Existujú „triedy“ alebo „typy objektov“, napr. typ Worksheets a jednotlivé objekty príslušných typov, napr. presne určený pracovný hárok (Hárok4). • Vlastnosti. Každý objekt má určité vlastnosti, napr. legenda má o. i. Height (výšku) a Width (šírku) atď. • Metódy. Metódy sú procedúry, ktoré sú špecializované na určitý objekt a niečo s ním uskutočňujú. Napr. metóda Value (hodnota) vráti obsah textového poľa alebo bunky. Metóda LegendEntries vráti jednotlivý opis legendy alebo všetky popisy. Obidve sú teda funkcie, ktoré vracajú funkčnú hodnotu. V porovnaní s normálnymi funkciami sú ale špecializované na určité objekty. Objektová orientácia programovania znamená pre dlhoročných programátorov, že sa musia zbaviť doterajšieho spôsobu myslenia a musia pracovať už so spomenutými objektmi, ich vlastnosťami a metódami, ktoré môžu byť na nich aplikované. Objekty Excelu sú rozdelené do skupín - typov objektov. Uvedieme niektoré príklady:
Typ objektu Application Windows Window Sheets Workbooks Význam Aktuálna aplikácia, prakticky samotný Excel Rôzne okná Excelu Jednotlivé okno Zoznam všetkých momentálne dostupných listov s grafmi, tabuľkami atď. Momentálne otvorené zošity

100

Workbook Worksheets Worksheet Modules Module Charts Chart DialogSheets DialogSheet Name Range

Jednotlivý zošit V zošite dostupné tabuľkové listy Jednotlivý list tabuľky V zošite dostupné listy modulov Jednotlivý list modulu V zošite dostupné listy grafov Jednotlivý list grafu V zošite dostupné listy dialógov Jednotlivý list dialógu Definované mená ako „Oblasť“, „Platy“ a pod. Oblasti, ako jednotlivé bunky, riadky/stĺpce, viacnásobný výber, 3D oblasť atď.

Obr. 13.25 Niektoré príklady typov objektov a ich význam Application je najvyšší typ, pretože predstavuje aplikáciu, s ktorou pracujeme, teda Excel samotný. Je to teda hlavný objekt, ktoré je sám absolútne jednoznačný. Uvedieme niektoré príklady použitia objektu Application.
Application.Caption = „Môj programík“

Zmení sa nadpis.
Application.DisplayFormulaBar = False

Skryje riadok vzorcov. Vrátenie názvu operačného systému:
Sub Oper_system() MsgBox "Operačný systém je : " & chr13 & Application.OperatingSystem End Sub

Kolekcia je súbor objektov rovnakého typu. Názov kolekcie je v množnom čísle a má koncovku „s“. V Exceli je asi polovica objektov kolekciami. Rovnako ako majú objekty svoje vlastnosti a metódy, majú ich taktiež kolekcie. Príkladom jednoduchého objektu v Exceli je Application, príkladom kolekcie je Worksheets, ktorá reprezentuje všetky listy tabuľky v danom zošite. Ak chceme pracovať s jednotlivými objektmi kolekcie, musíme ich z danej kolekcie vybrať a to buď indexom prvku (teda ich poradím) v kolekcii alebo jeho menom. Výnimku tvorí objekt Range (oblasť) , ktorý má prvky samostatného objektu i kolekcie. Kolekcie Sheets (listy) a DrawingObjekts (kreslené objekty), ktoré obsahujú kolekcie aj iných typov. Tieto kolekcie sa tiež niekedy nazývajú aj „metakolekcie“. Uvedieme niektoré príklady činností s objektmi. Objekt.metóda
Worksheets(„List1“).Activate

alebo
Worksheets(2).Range(„B4“).Activate

V prvom prípade sa aktivuje „List1“, v druhom prípade je v druhom liste aktivovaná bunka B4. Čiže metódy niečo s objektom vykonávajú. Objekt.vlastnosť 101

Predtým, ako vysvetlíme ďalšiu prácu s objektmi, uvedieme príklad. Sub vlastnosť() MsgBox ActiveSheet.Name MsgBox ActiveSheet.Next.Name End Sub Každý typ objektu má určitú vlastnosť. V uvedenom prípade sa nám vráti vlastnosť, t.j. meno aktívneho listu a za ním nasledujúceho listu. Mnoho vlastností umožňuje taktiež prístup na zápis. Výraz typu Objekt.vlastnosť = hodnota nastaví vlastnosť na zadanú hodnotu. Príklady:
Sub premenovanie() Worksheets("List1").Range("A1").Value = 10 Worksheets("List10").Name = "Desiaty" End Sub

Objekty disponujú aj istými vlastnosťami, keď napr. niečo môže byť zapnuté alebo vypnuté. Napr. riadok vzorcov možno vypnúť takto:
Application.DisplayFormulaBar = False

Príklad na zapnutie resp. vypnutie deliacich čiar:
Sub grid() Worksheets(1).Activate If ActiveWindow.DisplayGridlines = True Then ActiveWindow.DisplayGridlines = False Else ActiveWindow.DisplayGridlines = True End If End Sub

Bunky a oblasti Objekt „Range“ predáva odkaz na oblasť alebo jedinú bunku, metóda Cells na jedinú bunku. Bunky resp. oblasť možno prehľadať, rušiť, presúvať, vyberať a pod. Príklad na výber oblasti v desiatom pracovnom liste bude:
Sub výber() Worksheets(10).Activate Range("A1:C3").Select End Sub

Uvedieme iné príklady. Napríklad vzorec doplníme do príslušnej bunky takto:
Range(„A5“).Formula = „Suma(B2:B5)“

Na formátovanie buniek môžeme použiť „Font“. Metóda môže predávať odkaz. Napríklad metóda „Cells“, ktorá je aplikovaná na list tabuľky, predá odkaz na objekt typu „Range“. Všeobecný zápis je : 102

Objekt.Cells(riadkový index,stĺpcový index) Riadkový index je číslo riadku, stĺpcový index je číslo stĺpca, keď stĺpec A má index 1, stĺpec B index 2. Napríklad výraz
ActiveSheet.Cells(1,2)

predá objekt a aktívnom liste, t.j. jednu bunku (B1) - zložený objekt typu „Range“. Tento typ objektu má rôzne vlastnosti, okrem toho taktiež vlastnosť Value. Výraz
ActiveSheet.Cells(1,2).Value = 10

priradí bunke B1 aktívneho listu hodnotu 10. To isté dosiahneme zápisom
ActiveSheet.Range(„B1“).Value = 10

Často nebudeme vedieť, čo je objekt, vlastnosť alebo metóda. V nasledovnom zápise je to jasné:
Range(„D5“):Value = 34

Value (hodnota) je vlastnosť objektu Range(oblasť). Ale v zložitejšom zápise má tvar:
Application.Workbooks(„POKUSY.XLS“).Worksheets(„List5“).Range(„D5“). _ Value = 34

Workbook (zošit) je metóda objektu Application, Worksheet (list) je metóda objektu Worksheet a nakoniec Value je vlastnosť objektu Range. Teda napr. Workbook je metóda vzhľadom k objektu Application, ale objekt vzhľadom k svojej metóde Worksheet. Pri začiatku programovania nám bude chýbať prehľad o rôznych objektoch, ich veľkostiach a metódach, ktoré možno na nich aplikovať. Ak máme aktivovaný list modulu a stlačíme F2, môžeme si vybrať v knižnici „Excel“ objekty a príslušné metódy a vlastnosti (obr. 13.26).

Obr. 13 .26 Prehliadač objektov (po stlačení tlačidla F2 v module) Ak vyberieme niektorý objekt, v zozname „Classes“ budú uvedené všetky metódy, ktoré môžu byť na príslušný objekt aplikované a všetky vlastnosti, ktorými objekt disponuje.

103

13.7

Základné prvky jazyka spojené s objektmi

Štruktúra With - End With Umožní zjednodušiť zápis odkazov na objekty a môže tak zrýchliť beh programu. Syntax zápisu: With objekt povely End With Pod pojmom objekt myslíme meno užívateľsky definovaného typu. Povely sa odkazujú na objekt. Pred všetky výrazy, ktoré sa začínajú . sa automaticky doplní výraz uvedený ako parameter objekt. Pri použití tejto štruktúry sa značne zjednoduší zápis odkazov na rovnaké objekty. Obyčajne sa zvýši prehľadnosť kódu a jeho rýchlosť. Ako príklad uvedieme makro , ktoré zapíše do bunky A1 hodnotu 1995, zmení farbu prostredia a pozadia. Obidve makrá sú svojou funkciou úplne zhodné, pričom druhé prepíšeme pomocou štruktúry With - End With.
Sub With_EndWith1() Worksheets(1).Range("A1").Value = "1995" Worksheets(1).Range("A1").Font.Bold = True Worksheets(1).Range("A1").HorizontalAlignment = xlCenter Worksheets(1).Range("A1").Font.ColorIndex = 6 Worksheets(1).Range("A1").Interior.ColorIndex = 5 End Sub

V príklade je vidieť, že niektoré časti sa niekoľkokrát opakujú. Preto použijeme zápis s With End With, čo celý program sprehľadňuje.
Sub With_EndWith2() With Worksheets(1).Range("A1") .Value = "1995" .Font.Bold = True .HorizontalAlignment = xlCenter .Font.ColorIndex = 6 .Interior.ColgrIndex = 5 End With End Sub

Obr. 4.27 Použitie zjednodušeného odkazovania na objekty „With - End With“ Premenná typu Object Premenná typu Objekt je taká premenná, do ktorej môžeme priradiť ľubovoľný objekt Excelu. Pri deklarácii premennej tohto typu platia tie isté zásady uvedené v odstavci o deklarovaní premenných. Syntax zápisu: Set premenná = odkaz na objekt

104

Po priradení obsahuje príslušná premenná odkaz na objekt, čiže „reprezentuje“ objekt, takže s premennou sa môže pracovať ako so samotným objektom, ktorý zastupuje. Napr.:
Sub objektová_premenná() Dim x As Variant Set x = ActiveSheet MsgBox x.Name MsgBox x.Next.Name End Sub

Obr. 13.28 Použitie objektovej premennej Okrem dátového typu Variant môžeme pre objektové premenné použiť taktiež dátový typ Object
Dim x As Object

Pri deklarácii kľúčovým slovom Object môže byť premennej x len odkaz na objekt. Objektové premenné však môžeme deklarovať priamo ako daný typ objektu. Namiesto identifikátora Object uvedieme meno objektu, napr. Range, Worksheet a pod.
Dim x As Worksheet Dim y As Range

Ak chcene objektovej premennej odstrániť odkaz, priradíme jej hodnotu Nothing.
Set x = ActiveSheet Set x = Nothing

Premenná x potom nebude obsahovať žiaden príkaz na objekt a bude prázdna. Uvedieme si ilustratívny príklad s objektovými premennými:
Sub Objektové_premenné() Dim L As Worksheet Dim o1 As Range, o2 As Range Set L = Worksheets("Jano") Set o1 = L.Range("A1:C1") Set o2 = L.Range("A2:C2") o1.Value = 10 o1.Copy o2 End Sub

Obr. 13.29 Využitie objektových premenných V tomto príklade pracujeme s troma premennými typu Object (raz typu Worksheet a dva razy typu Range). Makro uloží do oblasti o1 hodnotu 10 a ďalej skopíruje do oblasti o2. Cyklus For Each - Next Krokuje v kolekcii objektov alebo v prvkoch poľa. Syntax zápisu: For Each premenná In skupina povely Next For Each - kľúčové slová, ktoré označujú začiatok cyklu premenná - budú premennej postupne priradené všetky prvky. V kolekcii to môže byť premenná typu Object a v poli je to premenná typu Variant. In - kľúčové slovo, ktoré oddeľuje premennú od skupiny skupina - môže to byť kolekcia alebo pole. Počet položiek skupiny udáva, koľkokrát sa cyklus zopakuje. 105

povely - budú vykonané v telese cyklu, koľkokrát sa cyklus opakuje. Next - koniec cyklu. V prípade, že premenná je rovná poslednému prvku skupiny, cyklus končí. Príklad:
Sub For_Each_Next() Dim List As Worksheet, p As Integer p=0 For Each List In ActiveWorkbook.Worksheets MsgBox List.Name p=p+1 Next List MsgBox "Počet listov v zošite: " & p End Sub

Obr. 13.30 Program na krokovanie v kolekcii objektov Uvedený program krokuje všetky listy tabuľky aktívneho zošitu a zobrazuje postupne ich mená. Cyklus vyberá objekt typu Worksheet (list) z kolekcie všetkých listov aktívneho zošita (ActiveWorkbook.Worksheets). Zároveň spočíta počet listov v zošite. Záverom tejto kapitolky si zhrnieme poznatky a precvičíme si ich na nasledujúcom príklade. Vytvoríme makro, ktoré vyhodnotí vyznačenú oblasť tak, že ju porovná s referenčnou hodnotou. Ak budú hodnoty menšie ako referenčná, číslo bude napísané červenou farbou. Ak budú rovnaké, budú napísané tučne a ak budú väčšie ako referenčná hodnota, budú modré. V bunkách budú len čísla. Takéto makro možno použiť pre názorné rozlíšenie hodnôt tabuľky.
Sub zhrnutie() Dim Bunka As Range Dim Číslo As Single Číslo = Application.InputBox(Prompt:="Zadaj referenčné číslo:", _ Title:="Zadanie čísla", Type:=1) For Each Bunka In Selection With Bunka.Font Select Case Bunka.Value Case Is < Číslo .ColorIndex = 3 Case Číslo .Bold = True Case Is > Číslo .ColorIndex = 5 End Select End With Next Bunka End Sub

Obr. 13.31 Aplikácia poznatkov pri názornom rozlišovaní hodnôt tabuľky

13.8

Aplikačné príklady
106

Záverom si uvedieme príklady využitia vyššie uvedených vlastností jazyka VBA.

Výpočet prepony pravouhlého trojuholníka Našou úlohou bude vypočítať hodnotu prepony pravouhlého trojuholníka, pričom máme v pracovnom hárku Tabelle1 v bunkách B1 a B2 zapísané hodnoty jednotlivých odvesien. Okrem toho, že v bunke B3 sa zobrazí výpočet prepony, do buniek A1, A2 a A3 sa vloží príslušný popis, t.j. „1. odvesna“, „2. odvesna“ a „prepona“.
Sub Praca_s_objektami() Worksheets("List1").Activate Rem Zápis do pracovného hárku With Worksheets("List1") .Range("A1").Value = "1. odvesna" .Range("A2").Value = "2. odvesna" .Range("A3").Value = "prepona" End With Rem Nacítanie z tabulky x = Range("B1").Value y = Range("B2").Value z = Sqr(x ^ 2 + y ^ 2) Rem Zápis do prac hárku a aktívna bunka v B1 Worksheets("List1").Range("B3").Value = z Worksheets("List1").Range("B1").Activate End Sub

Obr. 13.32 Makro na načítanie, výpočet a zápis do pracovného hárku „List1“ Do programu sú vložené poznámky, ktoré opisujú určité činnosti programu, čím je kontrola programu jednoduchšie a čitateľnosť lepšia. Losovanie čísiel Uvedieme komplexnejší program na losovanie 6 čísiel z celkového počtu 49 s využitím generátora pseudonáhodných čísiel a testovaním, či sa vo vygenerovanej šestici neopakuje nejaké číslo. Predkladaný program možno optimalizovať podľa svojich predstáv už na základe získaných vedomostí. Tieto činnosti ponechám na čitateľa.
Sub loto() Dim x(6) As Integer For i = 1 To 6 x(i) = Int(RND() * 49) + 1 Next i MsgBox (x(1) & “;“ & x(2) & “;“ & x(3) & “;“ & x(4) & “;“ _ & x(5) & “;“ & x(6)) For a = 1 To 6 For b = 1 To 6 If a < b And x(a) = x(b) Then MsgBox („Losuj ešte raz !“) GoTo Zaver End If Next b Next a MsgBox („Losovanie bolo v naprostom poriadku!“) Zaver: n = MsgBox („Zapísať do hárku?“, vbYesNo + vbQuestion + vbDefaultButton1, _ Title:=“Otázka“) If n = 6 Then For i = 1 To 6

107

Worksheets(„List3“).Cells(i+2,2).Value = x(i) Next i End If End Sub

Obr. 13.33 Príklad programu so zápisom vylosovaných čísiel do pracovného hárku Jazyk Visual Basic for Applications (VBA) bol použitý v ilustračných príkladoch v anglickej verzii/USA, čo zabezpečuje bezproblémovú prenositeľnosť i do iných lokalizovaných verzií napr. nemeckej. Vzhľadom k tomu, že predchodca jazyka VBA Basic vznikol v USA a mnohé anglické príkazy sa tzv. „vžili“, použili sme túto verziu jazykového variantu. Program na aktualizáciu kurzu akcií. Budeme vychádzať z tabuľky, v ktorej sú uvedené kurzy akcií, a ktoré budú priebežne aktualizované. Úlohu budeme priamo riešiť a to zapísaním hodnôt do tabuľky. Bezpečnejšie a hlavne komfortnejšie bude, ak zápis budeme riešiť programovo. Tabuľka má nasledovnú štruktúru:

Obr. 13.34 Tabuľka akcií. Bezpečnejšie a hlavne komfortnejšie bude, ak zápis budeme riešiť programovo. Plánovaný priebeh: – program sa spýta na dátum a ponúkne zároveň aktuálny systémový dátum – vyhľadá v stĺpci A prvú prázdnu bunku a tam zapíše zadávaný dátum – potom sa spýta na meno akcie a jej príslušný kurz – v 1.riadku sa nájde nadpis, ktorý odpovedá zadanému menu akcie – potom bude v stĺpci, v ktorom sa nájde príslušné meno akcie, vyhľadaná prvá prázdna bunka a tam bude zapísaný zadaný kurz. Program si vysvetlíme po úsekoch. Na začiatku deklarujeme premenné, dnes bude obsahovať dátum, o budú odkazy na objekty typu Range, akcie budú mená akcií a kurz príslušný aktuálny kurz.
Sub Kurzy_akcií() Dim akcie As String, kurz As Single Dim dnes As Date, o As Range

V ďalšom otvoríme dialógové okno na vstup dátumu s tým, že nám bude ponúkaný aktuálny systémový dátum. Príslušný list pracovného zošita sa bude volať „Kurzy“, ktorý tiež programovo aktivujeme. Inštrukcia
Set o = Range("A:A")

odovzdá odkaz na celý stĺpec A ako objekt typu Range. Tento odkaz na oblasť bude pomocou
Set o = o.Find("")

108

odovzdaný metóde Find, ktorá zadanú oblasť (v našom prípade stĺpec A prehľadá) a nájde prvú bunku, ktorá je prázdna. Do tejto bunky bude priradený dátum, ktorý sme predtým zadali, inštrukciou
o.Value = dnes

Segment programu bude potom vyzerať nasledovne:
Rem otázka na dátum a jeho zadanie dnes = Application.InputBox(prompt:="Dátum?", Type:=1, Default:=Date) Worksheets("Kurzy").Activate Set o = Range("A:A") Set o = o.Find("") o.Value = dnes

V ďalšom musíme nájsť príslušný stĺpec podľa názvu podniku, ktorého akcie chceme zapísať a v ňom prázdny riadok, do ktorého zapíšeme hodnotu akcií. Inštrukcia
akcie = Application.InputBox(prompt:="Podnik?")

sa opýta na meno akcie a priradí znakový reťazec do premennej akcie. Potom bude pomocou inštrukcie
kurz = Application.InputBox(prompt:="Kurz?", Type:=1)

zadaný kurz akcie. Potom inštrukcia
Set o = Range("1:1")

priradí premennej o odkaz na celý 1.riadok. Na tento odkaz bude aplikovaná metóda Find, ktorá vyhľadá v 1.riadku znakový reťazec priradený premennej akcie.
Set o = o.Find(akcie)

Bez ďalších argumentov nerozlišuje Find medzi malými a veľkými písmenami a nájde v niektorej bunke príslušného 1.riadku text. Teraz musíme v stĺpci, v ktorom sa nachádza bunka s menom akcie, vyhľadať prvú prázdnu bunku. Inštrukcia
Set o = o.EntireColumn

používa metódu EntireColumn, ktorá je aplikovaná na objekt typu oblasť (Range) a sama zasa odkaz na oblasť vracia, a to odkaz na celý stĺpec, na ktorý ukazoval predávaný odkaz. Na oblasť o (teraz je to celý stĺpec) opäť aplikujeme metódu Find. Cieľom teraz je nájsť prvú prázdnu bunku v príslušnom stĺpci. To bude inštrukciou
Set o = o.Find("")

Do tejto prázdnej bunky sa zapíše hodnota zadaného kurzu akcie, t.j. uloží sa do tejto bunku obsah premennej kurz.
o.Value = kurz

Potom program bude celkovo vyzerať nasledovne:
Sub Kurzy_akcií() Dim akcie As String, kurz As Single Dim dnes As Date, o As Range Rem otázka na dátum a jeho zadanie dnes = Application.InputBox(prompt:="Dátum?", Type:=1, Default:=Date) Worksheets("Kurzy").Activate Set o = Range("A:A") Set o = o.Find("") o.Value = dnes Rem Otázka na kurz a jeho zadanie akcie = Application.InputBox(prompt:="Podnik?") kurz = Application.InputBox(prompt:="Kurz?", Type:=1) If kurz = 0 Then Exit Sub Set o = Range("1:1") Set o = o.Find(akcie)

109

Set o = o.EntireColumn Set o = o.Find("") o.Value = kurz End Sub

Obr. 13.35 Prvý program na zmenu akcií Na tomto programe je veľa toho, čo možno zlepšiť. Niektoré riadky možno zlepšiť do jedného, napr. Nájdenie prázdnej bunky
Set o = Range("A:A").Find("")

alebo zápis kurzu akcií do voľnej bunky príslušného stĺpca
Range("1:1").Find(akcie).EntireColumn.Find("") = kurz

Napríklad obvykle zadávame iba raz dátum, ale viac príslušných kurzov. To vyriešime tak, že sa postaráme o to, aby posledná časť programu bola vykonávaná v slučke tak dlho, až kým užívateľ meno akcie nezadá a lebo si to rozmyslí so zadávaním kurzu a nezadá žiadny kurz. Výraz
Do .... Loop While True

vytvorí nekonečnú slučku. Táto slučka prebieha večne a vo vnútri slučky sa musíme postarať o to, aby v určitom prípade bola prerušená. Výraz
If akcie = "" Then Exit Sub

testuje, či užívateľ zadal meno akcie. Ak ho nezadal, procedúra sa ukončí. Inštrukcia
If kurz = 0 Then Exit Sub

spôsobí to isté, ak užívateľ nezadá kurz akcie. Program bude potom vyzerať nasledovne:
Sub Kurzy_akcií1() Dim akcie As String, kurz As Single Dim dnes As Date, o As Range Rem otázka na dátum a jeho zadanie dnes = Application.InputBox(prompt:="Dátum?", Type:=1, Default:=Date) Worksheets("Kurzy").Activate Set o = Range("A:A").Find("") o.Value = dnes Rem Otázka na kurz a jeho zadanie Do akcie = Application.InputBox(prompt:="Podnik?") If akcie = "" Then Exit Sub kurz = Application.InputBox(prompt:="Kurz?", Type:=1) If kurz = 0 Then Exit Sub Range("1:1").Find(akcie).EntireColumn.Find("") = kurz Loop While True End Sub

Obr. 13.36 Upravený program na zadávanie kurzov akcií do tabuľky

Aktualizácia grafu Vychádzame z toho, že tabuľka už bola vytvorená, bolo do nej zadaných niekoľko hodnôt a potom bol na základe týchto hodnôt vytvorený list s grafom s menom „Grafy“ Úlohou bude rozšíriť existujúci graf o nové zadané kurzy. 110

Postupovať budeme tak, že využijeme metódu Paste. Ak obsah „Schránky“ s práve zadanými údajmi prostredníctvom metódy Paste aplikujeme na objekt Chart, bude graf rozšírený a príslušné dátové body. Použijeme výraz
Charts("Grafy").Paste

Objekt Charts obsahuje zoznam všetkých grafov momentálne aktívneho zošitu (analógia s objektom Worksheets). Novú oblasť tabuľky dostaneme do schránky pomocou metódy Copy, ktorú môžeme aplikovať na najrôznejšie objekty. Skopírujeme ňou príslušný objekt (v našom prípade Range) do Schránky a pomocou metódy Paste vložíme do grafu. Tabuľka je riadkovo orientovaná, začína v tom riadku, do ktorého bol vložený dátum a končí poslednou neprázdnou bunkou za predpokladu, že užívateľ zadá všetky kurzy a medzi hodnotami nebudú prázdne bunky. Najprv potrebujeme odkaz na ľavý okraj oblasti, t.j. na bunku, do ktorej bol zadaný aktuálny dátum. Za tým účelom nahradíme riadky programu
Set o = o.Find("") o.Value = dnes

riadkami, ktoré obsahujú premenné typu Range:
Set ostart = o.Find("") ostart.Value = dnes

Všetko prebieha tak ako predtým až na to, že sa v premennej ostart typu Range nachádza odkaz na túto bunku. V ďalšej časti programu, t.j. v časti kde zadávame kurzy akcií, zmeníme riadok
If akcie = "" Then Exit Sub

na riadok
If kurz = 0 Then Exit Do

z toho dôvodu, aby sme opustili iba slučku Do-Loop a nie ako predtým ukončili procedúru. Totiž na jej konci sa nachádza ďalšia časť programu, ktorá sa vykoná po ukončení zadávania kurzov:
Rem Aktualizácia grafu Set okoniec = ostart.End(xlToRight) Range(ostart, okoniec).Copy Charts("Grafy").Paste End Sub

Metóda End simuluje stlačenie klávesnice End a smerovej šípky. V našom prípade je to skok od bunky, ktorá obsahuje dnešný dátum až na poslednú neprázdnu bunku vpravo, teda na posledný kurz akcií. Metóda End má nasledujúce syntax: Objekt.End(smer) kde smer je jedna z preddefinovaných konštánt xlToRight, xlToLeft, xlUp a xlDown. Predposlednými riadkami programu sa oblasť skopíruje a vloží do grafu. Celý program bude potom zapísaný nasledovne: 111

Sub Kurzy_akcií_s_grafom() Dim akcie As String, kurz As Single Dim dnes As Date, o As Range Rem otázka na dátum a jeho zadanie dnes = Application.InputBox(prompt:="Dátum?", Type:=1, Default:=Date) Worksheets("Kurzy").Activate Set o = Range("A:A") Set ostart = o.Find("") ostart.Value = dnes Rem Otázka na kurz a jeho zadanie Do akcie = Application.InputBox(prompt:="Podnik?") If akcie = "" Then Exit Do kurz = Application.InputBox(prompt:="Kurz?", Type:=1) If kurz = 0 Then Exit Do Set o = Range("1:1") Set o = o.Find(akcie) Set o = o.EntireColumn Set o = o.Find("") o.Value = kurz Loop While True Rem Aktualizácia grafu Set okoniec = ostart.End(xlToRight) Range(ostart, okoniec).Copy Charts("Grafy").Paste End Sub

Obr. 13.37 Program na zadanie kurzu akcií a aktualizáciu vytvoreného grafu Graf so zadanými novými hodnotami bude potom vyzerať nasledovne:

Obr. 13.38 Aktualizovaný graf akcií Záverom chcem uviesť, že kurzy podnikov sú odhadnuté a ich hodnoty sa menia. Príklad je ako cvičný, a za prípadnými odchýlkami hodnôt kurzov akcií so súčasnými netreba hľadať žiadny dodatočný zámer autora. 112

13.9

Vybrané funkcie a povely VBA

V tejto kapitole sú uvedené niektoré vybrané funkcie a povely VBA, ktoré možno použiť v niektorých riešeniach. Sú rozdelené do niekoľkých kategórií podľa činnosti. V pravej časti tabuľky je uvedený príklad aj s výsledkom. Zápis v tabuľke je zjednodušený, volanie funkcie nemôže stáť samotné v riadku. Preto je nutné vrátenú hodnotu priradiť nejakej premennej príslušného typu. Konverzné funkcie dátových typov Povel CBool() CCur() Význam Prevedie argument na dátový typ Boolean Príklad CBool(0) False CBool(8>5) True CBool(“Jožo“) <run time error> CCur(“99,90 Sk“) 99,9 CCur(“$5.65”) <run time error> (pre slovenské nastavenie) CDate (“6.január 2004“) 6.1.2004 CDate (“15:35“) 15:35:00 odp. Pozn.: Používa sa pri použití aritmetiky príslušného dátového typu. CInt(11.7) 12 CInt(-11.7) -12 CLng(65535.6) 65536 CLng(-65535.6) -65536 Pozn.: Používa sa pri použití aritmetiky príslušného dátového typu CStr(78,5) “78,5“ CStr(Date) 14.3.2004 CVar (1 & “00”) + 10 + “kusov” “110kusov”

Prevedie argument na dátový typ Currency podľa miestneho nastavenia CDate() Prevedie argument na dátový typ Date podľa miestneho nastavenia CDbl() Prevedie argument na dátový typ Double Zaokrúhli argument na dátový typ CInt() Integer CLng() Zaokrúhli argument na dátový typ Long CSng() Prevedie argument na dátový typ Single CStr() Prevedie argument na dátový typ String podľa miestneho nastavenia CVar() Prevedie argument na dátový typ Variant Číselné funkcie Matematické funkcie Funkcia Význam Vracia absolútnu hodnotu Abs() argumentu Vracia najbližšie nižšie celé číslo. Fix() V prípade záporného čísla najbližšie vyššie Vracia najbližšie nižšie celé číslo Int() Sgn() Sqr() Exp() Vracia znamienko argumentu Vracia druhú odmocninu argumentu (v obore reál. čísel) Vracia hodnotu e umocnenú na

Príklad Abs(12.6) Fix(11.6) Fix(-11.6) Int(11.6) Int(-11.6) Sgn(-10) Sgn(0) Sqr(2) Sqr(-2) Exp(1) 113 12 11 -11 11 -12 -1 0 1.41... <run time error> 2.718...

Log()

argument Vracia prirodzený logaritmus

Log(Exp(1))

1

Goniometrické funkcie Funkcia Význam Príklad Vracia kosínus argumentu Cos(Application.PI()/4) Cos() (Argument je v radiánoch) Vracia sínus argumentu (Argument Sin(Application.PI()/4) Sin() je v radiánoch) Vracia tangens argumentu Tan() (Argument je v radiánoch) Vracia arcustangens argumentu Atn() Náhodné čísla Funkcia

0.707... 0.707...

Význam Vracia náhodné číslo v intervale Rnd() <0;1) Randomize() Inicializuje generátor náhodných čísel

Príklad Pozn.: Argument určuje spôsob generovania náhodných čísel

Dátové a časové funkcie Funkcie vracajúce aktuálny dátum a čas Funkcia Význam Vracia aktuálny systémový dátum Date Vracia aktuálny dátum a čas Now Vracia aktuálny systémový čas Time Vracia počet sekúnd uplynulých od Timer polnoci

Date Now Time

Príklad 14.3.2004 14.3.2004 11:55:59 11:55:59

Konverzné dátumové funkcie Funkcia Význam Day(dátum) Vracia číslo dňa v mesiaci. Celé číslo medzi 1 až 31 vrátane. Weekday (dátum) Vracia číslo dňa v týždni, pričom nedeľa má číslo 1 Month(dátum) Vracia číslo mesiaca v roku v rozsahu 1 až 12 Year(dátum) Vracia celé číslo, ktoré reprezentuje rok Vracia dátum podľa uvedeného DateSerial (deň,mesiac,rok) dátumu DateValue(reťazec) Prevádza reťazec na formát dáta

Príklad Day(“14.3.2004”) Weekday(”14.3.2004”) Month(“14.3.2004“) Year(“14.3.2004“) DateSerial(89,11,17)

14 1 3 2004

17.11.1989

DataValue(“6.január 1995”) 6.1.1995

114

Konverzné časové funkcie Funkcia Second(čas) Minute(čas) Hour(čas) TimeSerial (hodina,minúta,sekunda) TimeValue(reťazec)

Význam Vracia číslo sekundy v minúte, celé číslo medzi 0 až 59 vrátane Vracia číslo minúty v hodine, celé číslo medzi 0 až 59 vrátane Vracia hodinu, celé číslo medzi 0 až 23 vrátane Vracia časový údaj podľa uvedeného času Prevádza reťazec na formát času

Príklad Second(“16:25:35“) Minute(“16:25:35“) Hour(“16:25:35“)

35 25 16

TimeSerial(16,25,35) 16:25:35 TimeValue(“15:35“) 15:35:00

Znakové funkcie Konverzné znakové funkcie Funkcia Význam Vráti kód prvého znaku reťazca Asc(“A“) Asc() Vráti znak podľa kódu. Opak funkcie Chr(65) Chr() Asc() Výberové funkcie Funkcia Left(reťazec, počet) Mid(reťazec, od, [počet]) Význam Vracia určený počet znakov z ľavej strany reťazca Vracia určený počet znakov z reťazca počínajúc znakom od. Povel Mid naopak nastaví znaky na daných pozíciach Vracia určený počet znakov z pravej strany reťazca Význam

Príklad 65 A

Príklad Left(“Ahoj”,2) Mid(“Windows”,2,3”) Temp=”Ahej” Mid(Temp,3,1)=”o” Right(“Ahoj”,2) “Ah” “ind” “Ahoj” “oj”

Right(reťazec, počet)

Funkcie porovnania a hľadania Funkcia InStr([od], ret1, ret2, [voľba]) StrComp(ret1, ret2, [voľba])

Vracia pozíciu reťazca ret2 v reťazci ret1 od pozície od. Voľba – typ porovnania: 0=Binary (a≠A), 1= Text (a=A)

Príklad InStr(“Windows 98”,”9”) InStr(2,”Windows”,”W”,0) InStr(2,”Windows”,”W”,1)

9 0 6

Porovnáva ret1 a ret2. Vracia 0, StrComp(“Comp”,”Computer”,0) -1 ak ret1 = ret2; -1, ak ret1<ret2; 1, ak ret1>ret2

115

Funkcie dĺžky Funkcia Len(premenná) Len(reťazec)

Význam Príklad Vracia počet bytov, ktorá Len(Počet%) 2 premenná zaberá v pamäti vracia počet znakov reťazca Len(“Excel“) 5 Trim(“ Excel “) RTrim(“ Excel “) LTrim(“ Excel “) “Excel” “ Excel” “Excel”

Funkcie, ktoré odstraňujú medzery Trim(reťazec) Vracia reťazec bez medzier na jeho začiatku a konci RTrim(reťazec) Vracia reťazec bez medzier na jeho konci LTrim(reťazec) Vracia reťazec bez medzier na jeho začiatku

Funkcie, ktoré menia veľkosť písmen UCase(reťazec) Prevedie písmená reťazca na UCase(“Príklad”) veľké LCase(reťazec) Prevedie písmená reťazca na LCase(“Príklad”) veľké

PRÍKLAD príklad

116

Literatúra
[1] Brož, M. - Brožová, P.: Excel 97. Podrobná příručka uživatele. Computer Press 1997. [2] Králik, M.: EXCEL 5.0. IMB, Inštitút pre výchovu vedúcich pracovníkov, Bratislava 1995. [2] Králik, M.: Microsoft Excel fűr Windows 95. Version 7.0. Volkswagen Bratislava 1997. [3] Králik, M.: Excel 2000. Základná príručka pre používateľa. Volkswagen Slovakia, a.s., september 2000, 52 s. [4] Baloui, S.: Excel 5.0. Kompendium znalostí a skušeností. Unis publishing, Brno 1995. [5] Kališ,J.: Excel. Učebnice programování..Gcomp, Praha1995. [6] Orvis,W.J.: Microsoft Excel pro vědce a inženýry. Computer Press 1996. [7] Microsoft EXCEL. Benutzerhandbuch. Version 5.0. Microsoft Corporation 1993. [8] Jacobson, R.: Excel 97. Visual Basic. Krok za krokem. Computer Press 1998.

117

118

Obsah
1 2 Úvod ................................................................................................................................... 5 Spustenie a základné pojmy ............................................................................................... 7 2.1 Spustenie a ukončenie programu ............................................................................... 7 2.2 Opis obrazovky Excelu .............................................................................................. 7 2.3 Základné pojmy.......................................................................................................... 9 2.4 Inteligentné značky a tlačidlá možností ..................................................................... 9 Základné činnosti v tabuľke ............................................................................................. 13 3.1 Vyznačenie oblasti ................................................................................................... 13 3.2 Presúvanie a kopírovanie buniek a oblastí ............................................................... 13 3.3 Vkladanie údajov do buniek .................................................................................... 13 3.4 Úpravy údajov .......................................................................................................... 14 3.5 Mazanie údajov ........................................................................................................ 14 3.6 Mazanie buniek ........................................................................................................ 15 3.7 Vkladanie buniek ..................................................................................................... 15 3.8 Anulovanie vykonaných operácií............................................................................. 15 3.9 Opakovanie poslednej operácie ............................................................................... 15 3.10 Vytváranie postupností ............................................................................................ 15 3.10.1 Vytvorenie postupnosti zo zoznamov .............................................................. 16 3.10.2 Tvorba číselných postupností........................................................................... 16 3.11 Automatické doplňovanie údajov ............................................................................ 17 3.12 Iné vkladanie údajov ................................................................................................ 18 Tvorba tabuľky................................................................................................................. 19 4.1 Vzorce ...................................................................................................................... 20 4.2 Absolútne a relatívne adresy. ................................................................................... 21 4.3 Funkcie ..................................................................................................................... 21 4.4 Zobrazenie chybových hlásení ................................................................................. 23 4.4.1 Chybové hlásenie ............................................................................................. 23 4.4.2 Opis chyby ....................................................................................................... 23 Grafická úprava buniek (formátovanie buniek) ............................................................... 25 5.1 Úprava zobrazenia čísel ........................................................................................... 25 5.2 Zarovnanie textu a číslic v bunke ............................................................................ 26 5.3 Úprava písma ........................................................................................................... 27 5.4 Kreslenie rámčekov tabuliek .................................................................................... 28 5.5 Úprava farebného pozadia buniek............................................................................ 29 5.6 Uzamknutie buniek proti prepisu ............................................................................. 29 5.7 Podmienené formátovanie........................................................................................ 29 5.8 Štýl buniek ............................................................................................................... 30 5.9 Automatické formátovanie tabuliek ......................................................................... 31 5.10 Overovanie vstupných údajov .................................................................................. 32 5.11 Skrátené kontextové menu ....................................................................................... 32 5.12 Orientácia v liste ...................................................................................................... 34 5.13 Kontrola pravopisu ................................................................................................... 35 Tvorba grafov ................................................................................................................... 37 6.1 Formátovanie grafu .................................................................................................. 38 6.2 Spojnica trendu ........................................................................................................ 39 6.3 Chybové úsečky ....................................................................................................... 41 119

3

4

5

6

7

Práca s tabuľkou ako databázou ....................................................................................... 43 7.1 Formulár ................................................................................................................... 43 7.2 Usporiadanie údajov v tabuľke. ................................................................................ 44 7.3 Filtrovanie databázy ................................................................................................. 45 7.4 Tvorba podzostáv ..................................................................................................... 46 7.5 Medzisúčty ............................................................................................................... 47 7.6 Osnova tabuľky ........................................................................................................ 48 8 Použitie vybraných tabuľkových funkcií a iné možnosti Excelu ..................................... 49 8.1 Funkcie dátumu a času ............................................................................................. 49 8.2 Logické funkcie. ....................................................................................................... 49 8.3 Generovanie náhodných čísiel .................................................................................. 50 8.4 Vyhľadávacie funkcie ............................................................................................... 51 8.5 Kreslenie v tabuľke alebo v grafe ............................................................................. 52 8.6 Kreatívna úprava textu.............................................................................................. 53 9 Tlač dokumentu ................................................................................................................ 55 9.1 Základné odporúčania............................................................................................... 55 9.2 Nastavenie vzhľadu stránky ..................................................................................... 55 9.3 Ukážka pred tlačou ................................................................................................... 57 9.4 Nastavenie parametrov pre tlač ................................................................................ 58 10 Niektoré možnosti Excelu ................................................................................................ 59 10.1 Odhaľovanie problémov vo vzorcoch ...................................................................... 59 10.2 Overovanie údajov.................................................................................................... 59 10.3 Sprievodca importom textu ...................................................................................... 61 11 Analytické nástroje a ďalšie možnosti Excelu ................................................................. 63 11.1 Hľadanie cieľovej hodnoty ....................................................................................... 63 11.2 Citlivostná analýza ................................................................................................... 64 11.3 Riešenie optimalizačných úloh ................................................................................. 66 11.4 Správca scenárov ...................................................................................................... 67 11.5 Kontingenčné tabuľky .............................................................................................. 70 11.6 Zlúčenie údajov ........................................................................................................ 75 11.7 Štatistické nástroje na analýzu dátových súborov .................................................... 76 12 Programovanie v Exceli ................................................................................................... 77 12.1 Nahrávanie makra ..................................................................................................... 77 12.2 Používanie nahraného makra. ................................................................................... 80 13 Tvorba makier .................................................................................................................. 83 13.1 Tvorba podprogramov .............................................................................................. 83 13.2 Premenné a ich deklarácie ........................................................................................ 83 13.2.1 Meno premennej ............................................................................................... 83 13.2.2 Dátový typ premennej ...................................................................................... 84 13.2.3 Deklarácia premenných .................................................................................... 84 13.2.4 Užívateľský dátový typ..................................................................................... 85 13.2.5 Dostupnosť premenných................................................................................... 85 13.3 Funkcie a kľúčové slová VBA ................................................................................. 92 13.3.1 Funkcie užívateľského vstupu a výstupu .......................................................... 92 13.3.2 Vybrané riadiace štruktúry jazyka VBA .......................................................... 93 13.4 Tvorba funkčných makier......................................................................................... 98 13.5 Ladenie a testovanie programu. ................................................................................ 99 13.6 Objekty, metódy a vlastnosti .................................................................................. 100 13.7 Základné prvky jazyka spojené s objektmi............................................................. 104 13.8 Aplikačné príklady ................................................................................................. 106 120

13.9 Vybrané funkcie a povely VBA ............................................................................. 113 Literatúra ................................................................................................................................ 117 Obsah ..................................................................................................................................... 119

121

Sign up to vote on this title
UsefulNot useful