Základní info
MS Excel - základy programování VBa
ZAMĚŘENÍ:
Kurz je určen pokročilým uživatelům MS Excel, kteří chtějí vytvářet vlastní aplikace.
PŘEDPOKLADY:
Pokročilé znalosti práce s programem MS Excel.
ROZSAH:
3 dny - 18 vyučovacích hodin
POPIS:
1 Úvod do problematiky
- Co jsou makra
- Programovací jazyk VBA
2 Práce se záznamníkem maker
- Nahrávání a umístění maker (nastavení vhodné úrovně zabezpečení, panel nástrojů Visual Basic, příprava prostředí, nahrání několika jednoduchých maker, analýza nahraného kódu, význam sešitu Personal.xls, informativně: co je doplněk )
- Spouštění maker (z nabídky, klávesovou zkratkou, přidanou ikonou z panelu nástrojů, připojením ke grafickému prvku, příkazovým tlačítkem z panelu Formuláře, jen informativně: příkazové tlačítko ActiveX z panelu VBA, automatické spouštění)
3 Prostředí vývojového prostředí Visual Basic for Application
- Konfigurace vývojového prostředí VBA, menu Tools-Options
- Projekt, panel Project Explorer
- Ladění, menu Debug, okno Watches, Quick Watch, info o aktuální hodnotě na kursoru myši, krokování, zarážky, zastavení a restart makra
- Kompilace kódu
- Okno Immediate a příkaz Debug.Print
- Práce s nápovědou
- Prohlížeč objektů
4 Proměnné, konstanty, výrazy, pole
- Deklarace proměnných, jejich životnost a rozsah platnosti, datové typy
- Deklarace konstant, jaké přináší výhody, několik příkladů předdefinovaných konstant VBA
- Výrazy, aritmetické, textové a logické operátory, jejich priorita
5 Subrutiny a funkce
- Co je Intellisence, „samodoplňování" klíčových slov jazyka, kontextové roletky s vlastnostmi a metodami, automatická formální kontrola syntaxe
- Procedura SUB, předání parametru odkazem, hodnotou
- Procedura Function, stanovení typu a přiřazení návratové hodnoty, uložení vlastních funkcí jako doplňku
- Dostupnost podprogramů a funkcí v rámci projektu, aplikace
6 Základní programové konstrukce VBA
- Použití standardních formulářů MsgBox a InputBox jako příkazů, resp. funkcí
- Vyvolání standardních funkcí listu z VBA (objekt Application.WorksheetFunction)
- Cykly, větvení programu (Do, For, If-Then-Else, Select Case)
- Datové a časové funkce, formáty apod.
- Pole - deklarace, naplnění hodnotami, funkce Array, použití smyčky For
- Přiřazovací příkaz, zápis na více řádků, více příkazů na řádek
- Optimalizace nahraného kódu
- Ochrana kódu uzamknutím projektu
7 Ošetření chybových stavů při běhu makra
- Příkaz On Error, umístění kódu ošetřujícího chybu, způsob jeho vyvolání a návratu, rozsah platnosti
- Praktické využití, např. „zamaskování" standardního hlášení o chybě
8 Objekty
- Objektový model Excelu
- Objekt Application, WorkBook, Woksheet, Chart, Range...
- Vlastnosti, metody události objektů
- Událostní procedury listů, sešitu
- Kolekce objektů - příklady: WorkSheets, Sheets, Charts, CommandBars, vestavěné dialogy - kolekce Application.Dialogs, vyvolání standardních dialogových oken z VBA
- Deklarace proměnné typu objekt
- Odkazy na listy, oblasti listu, Resize, Copy, Move, Delete
9 Formuláře listu
- Ovládací prvky panelu Formulář
- Praxe: nastavení vlastností a vazby na buňky, následné zpracování dat formuláře, zápis dat do databáze na listu
- možnost připojení makra
10 Dialogová okna, formuláře VBA
- Vytvoření, nastavení základních vlastností
- Událostní procedury formuláře
- Ovládací prvky ActiveX (CommandButton, OptionButton, CheckBox, ComboBox, ListBox...)
- Praxe: vazba na buňku listu, vazba na zdroj dat, alternativně naprogramování zápisu dat do databáze na listu
11 Praxe, příklady, dotazy
Doporučený předchozí kurz: Excel - pokročilí