Hlavní stránka |
Poslední aktualizace: 15.04.2006 |
VBA - jak začít
Jak na to? Nejdříve je třeba zobrazit panel nástrojů Visual basic. Volbou v Excelu nahoře na liště Zobrazit / Panel nástrojů / Visual basic Do prostředí VBA se z Excelu přepínáme tímto tlačítkem . Měli by jste vidět zhruba takovéhle okno...
Máme možnost vidět tři
okna. Vlevo nahoře okno Project kde jsou složky: -
Objects
- která obsahuje listy Excelu - Forms - obsahuje Formuláře tohoto sešitu - Modules - obsahuje Moduly, do kterých se zaznamenávají a píší makra, popř. vlastní funkce Dole vlevo je okno Properties - okno vlastností jednotlivých prvků jako jsou formuláře. Vpravo je okno, kde se přepínáme mezi oknem Forms a oknem Code, a to tlačítky v okně Project. Takže v okně projekt vybereme objekt (modul nebo formulář), a v případě formuláře můžeme editovat přepínáním těchto tlačítek jak vzhled, tak i kód, který se k formuláři vztahuje. V případě modulu je možné pracovat pouze s kódem. U modulů, pokud jich budete mít v sešitu více, je dobré moduly přejmenovat v okně Properties, aby jste věděli co kde hledat. Například Tisk - modul pro tisk, Seřaď - pro seřazení hodnot ... Poznámka: VBA nemá rád mezery a češtinu (v případě spolupráce se zahraničím Vám vznikne problém), takže používám podtržítka, popř. velké písmena: Serad_hodnoty nebo SeradHodnoty. Tady je soubor, ve kterém můžete studovat tvorbu maker, funkcí a formulářů. Nejlépe se naučíte VBA pokud budete zaznamenávat makra, a poté je studovat, popř. v VBA studovat nápovědu.
Formulář slouží k efektivní práci s daty, zejména se používá tam, kde chcete uživatelům zjednodušit práci, nebo zajistit, aby hodnota kterou Excel očekává, byla korektně zadána. Jistě znáte podstatný rozdíl mezi "Pondělí" a "Ponděl" stačí jedna změna písmenka, a Excel to vyhodnotí jinak. Stejně tak výběr mezi několika volbami je lepší vyřešit skupinou přepínačů.
Makra jak jsem psal usnadňují práci při často se opakujících událostech.
Funkce - kdo zná Excel trochu lépe, tak ví, že v Excelu je problém například s funkcí "Když" pokud chcete dělat složitější podmínku a vkládáte funkci "Když" tak ji můžete vnořit maximálně 7x, tedy 8 "Když" v kaskádě. A navíc trochu asi budete ztrácet přehled. Ve VBA za použití If .... ElseIf docílíte stejného výsledku, a bude to přehlednější. Popřípadě můžete použít funkci Select Case ... Možností je spousta, opět buď si pořiďte knížku, nebo studujte nápovědu pro VBA, ta je ale bohužel v angličtině, ale se základními znalostmi se dá pochopit.
Pokud budete mít nějaké otázky, tak tady je můj email
Dále by na straně VBA - Deklarace měla následovat trocha teorie na téma Objekty Proměnné Události a Akce
Pokud
chcete suchou teorii (ale potřebnou k porozumění maker) přeskočit |