Zdroj: https://wall.cz/excel-sablony/graf-hodiny-a-osa-udalosti • Vydáno: 26.5.2009 18:10 • Autor: admin

Graf hodiny a osa událostí

ExcelPraktická ukázka, jak lze pomocí grafu zobrazit aktuální datum a čas. V tomto případě se spíše jedná o efekt než o praktické využití. Součástí této ukázky je makro, které zajistí cyklické volání procedury pro zajištění běhu hodin.

Nejdříve vytvořte tabulku s daty, ze které následně vygenerujete 3 bodové grafy. Tabulka bude obsahovat údaje datum, čas (formou vzorce) a pozice bodu:

Datum Pozice
=DNES()
1
=HODINA(NYNÍ())
1
=MINUTA(NYNÍ())
2
=SEKUNDA(NYNÍ())
1

Spusťte průvodce grafem menu Vložit / Graf. Typ vyberte Bodový. Jako zdroj dat vyberte první řádek tabulky (vzorec DNES a pozice 1) a zvolte Dokončit.

Graf hodiny a osa událostí Graf hodiny a osa událostí

Graf je hotov a hned přejděte k úpravám. Pravým tlačítkem myši klikněte na osu x. Na záložce měřítko zadejte hodnoty. Minimum je 1.1. 2009, maximum je 31.12. 2099, hlavní jednotka 30 (body po 30 dnech) a vedlejší 1 (jeden den).

Graf hodiny a osa událostí

Na záložce Číslo nastavte vlastní formát "d.m." a potvrďte klávesou OK.

Graf hodiny a osa událostí

Nyní upravte datovou řadou kliknutím pravého tlačítka na bod v grafu.

Graf hodiny a osa událostí Graf hodiny a osa událostí

Vytvořili jste graf, na kterém bude zobrazen aktuální datum. Vytvořte další graf, kde jako zdroj dat použijete druhý řádek tabulky (vzorec HODINA). Pro další a poslední graf použijte jako zdroj dat poslední dva řádky tabulky (vzorec MINUTA a SEKUNDA). Postup bude stejný jako u první tabulky, jen s tím rozdílem, že osa x u hodin bude 0-24 a u minut a sekund 0-60. Výsledné grafy by měli vypadat asi takto:

Graf hodiny a osa událostí

Opakovaným stlačením tlačítka F9 dojde k přepočtu vzorců a tím hodiny "ožijí". Což asi nikoho nebude bavit a proto přepočet zajistíme makrem. Níže uvedený kód zkopírujte do modulu editoru jazyka Visual Basic Alt+F11.

Public RunWhen As Double Sub StartTimer() Calculate RunWhen = Now + TimeSerial(0, 0, 1) Application.OnTime RunWhen, "StartTimer", , True End Sub Sub StopTimer() On Error Resume Next Application.OnTime RunWhen, "StartTimer", , False End Sub

Soubor s příkladem ke stažení: Nejste přihlášen(a). Do souboru jsem ještě přidal malý bonus. K hodinám lze nastavit minutový signál, alarm a do grafu s datem lze přidat události.