Úvod
Počítačové sítě
Visual Basic 6
PHP
Technické vybavení
Technická dokumentace
Technická dokumentace
Obsah
Kapitola 1
Kapitola 2
Kapitola 3
Kapitola 4
Kapitola 5
Kapitola 6
Kapitola 7
Kapitola 8
Kapitola 9
Kapitola 10
Kapitola 11
Kapitola 12
Kapitola 13
Kapitola 14
Kapitola 15
Kapitola 16
Kapitola 17
Kapitola 18
Kapitola 19
Kapitola 20
Kapitola 21
Kapitola 22
Kapitola 23
Kapitola 24
Kapitola 25
Kapitola 26
Kapitola 27
Kapitola 28
Kapitola 29
Kapitola 30
:: 19. Funkce a zpracování dat, makra (37. - 38. hodina)

19.1 Cvičení

Budete zpracovávat soubor funkce_RC.xls. Soubor obsahuje tato data.

19.1.1 Úkoly

  • K tabulce přidejte sloupec "RČ je platné", do kterého pomocí funkcí a vzorců vepíšete Ano, je-li rodné číslo platné a Ne, je-li rodné číslo neplatné. Je možné použít funkci ZLEVA, ZPRAVA a CONCATENATE, pomocí nichž z rodného čísla odstraníme lomítko. Dále je možné použít funkci CELÁ.ČÁST pro zjištění celé části po dělení čísla jedenácti.
  • K tabulce dále přidejte sloupec, do kterého napíšete, ve kterém měsíci je osoba narozena (například "Narozen v lednu" nebo "Narozena v březnu" atd.).
Počet vnořených funkcí nesmí přesáhnout 7. To je nepříjemné, neboť by se nabízelo, aby se funkcí KDYŽ otestovalo číslo měsíce a vyjádřilo slovně (jenže tím bychom přesáhli maximální počet vnořených funkcí).
Proto je možno tento úkol rozdělit na několik částí.
Nejprve z rodného čísla oddělit číslo měsíce (je-li větší než 50 - odečíst od něj 50 - tím dostaneme čísla od 1 - 12, je-li menší než 50, vynásobit ho 1, čímž z řetězce uděláme číslo).
Do jiného sloupce si vepsat text "Narozen v " nebo "Narozena v " - opět podle toho, zda je hodnota měsíce v rodném číslo větší nebo menší než 50.
Do dalších dvou sloupců můžeme rozdělit slovní vyjádření měsíců. Použijeme vnořování funkce KDYŽ. Do prvního ze dvou sloupců vepíšeme měsíce od ledna do července, do druhého sloupce vepíšeme měsíce od srpna do prosince - podle čísla měsíce.
Poté stačí funkcí CONCATENATE složit dohromady řetězce "Narozen v " a název měsíce.

19.2 Cvičení - makro

Budete pracovat se souborem makro.xls. Soubor obsahuje velké množství řádků, přičemž chceme zachovat jen řádky, obsahující jméno, příjmení a datum posledního přihlášení a řádky obsahující pouze číslo chceme odstranit. Odstraňovat jednotlivé řádky by bylo příliš zdlouhavé. Vytvořte si na tuto akci makro s klávesovou zkratkou.

19.2.1 Další úkoly

Přidejte záhlaví sloupců.
Vyfiltrujte jen ty záznamy uživatelů, kteří se ještě nikdy nepřihlásili. Výsledek zkopírujte na nový list. Tento list pojmenujte "Nepřihlášení".
Použijte funkci POČET2 pro spočítání osob, které se nikdy nepřihlásily a výsledek umístěte do sloupce Datum posledního přihlášení.
Seřaďte záznamy vzestupně podle příjmení a v případě shody příjmení také vzestupně podle jména.

Udělejte makro, pomocí kterého naformátujete všechny liché řádky světle žlutým pozadím a modrým písmem a všechny sudé řádky tmavě modrým pozadím a žlutým písmem.
Z celého seznamu vyfiltrujte jen ty záznamy, kdy se uživatel někdy přihlásil. Tento seznam zkopírujte do nového listu a ten pojmenujte "Přihlášení".
Seřaďte tato data podle data přihlášení sestupně a v případě shody podle příjmení vzestupně.

Vytvořte souhrn (nabídka Data), kde při změně data přihlášení dojde ke spočítání osob, které se v dané datum přihlásily.
Souhrn v levé části sešitu obsahuje ovládací prvek (symboly + -), pomocí kterého je možno jednotlivé části zabalit a zobrazit jen výsledné počty (čímž se seznam zpřehlední). Takto můžeme zabalit všechny části a výsledné počty kopírovat pod seznam.

Z tohoto zkopírovaného seznamu vytvořte sloupcový graf informující, kolik osob se v daném dni přihlásilo.

Náhled na souhrn a graf.

Domácí úkol

Zopakujte si vytváření maker, při vytváření makra vyzkoušejte relativní a absolutní odkazy na buňky. Zobrazte si makro v editoru a najděte rozdíl mezi relativními a absolutními odkazy na buňky.

Shrnutí

  • Umíte vytvořit makro a víte, jaký je rozdíl mezi stlačeným a nestlačeným tlačítkem Relativní odkaz.
  • Umíte makru přiřadit klávesovou zkratku.
  • Víte, kde makro upravit.
  • Umíte pracovat se souhrny, filtry, grafy.
  • Umíte pracovat s řetězcovými a logickými funkcemi