Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

KIV/ZD cvičení 10 Tomáš Potužák.

Podobné prezentace


Prezentace na téma: "KIV/ZD cvičení 10 Tomáš Potužák."— Transkript prezentace:

1 KIV/ZD cvičení 10 Tomáš Potužák

2 Makra – pokračování Možností Visual Basicu velké množství
V podstatě jako ve všeobecném programovacím jazyce (např. Java) Není účelem předmětu KIV/ZD naučit kompletní Visual Basic Pouze základy (minule) a několik užitečných funkcí (dnes) Pro další funkcionality je nejlepší použít Google

3 Přístup k buňkám I Objekt ActiveCell Funkce Range(oblast)
Vrátí aktuálně vybranou buňku Funkce Range(oblast) Vrátí jednu buňku či celou oblast (objekt Range) podle toho nad čím je volaná (bez ničeho je nad aktivním listem) Více možností jak oblast definovat, např. Range("A1"), Range("A1:B5"), Range("A1", "B5")

4 Přístup k buňkám II Funkce Offset(řádky, sloupce) Funkce Select
Volá se nad objektem Range Vrátí objekt Range reprezentující buňku vzdálenou od původní zadaný počet řádek a sloupců (celá čísla – kladná či záporná) Např. Range("B1").Offset(1, 2) ukazuje na buňku D2, Range("A1"). Offset(0, 3) ukazuje na buňku D1 Funkce Select Nad objektem Range, označí buňky

5 Přístup k buňkám III Seznam Workbooks Seznam otevřených sešitů Excelu
Sešity přístupné pod indexem (počínaje 1) nebo pod názvem Sešit reprezentován objektem Workbook (aktuální sešit v objektu ThisWorkbook) Např. Workbooks.Count vrátí počet sešitů, Workbooks(1) vrátí první otevřený sešit, Workbooks(Workbooks.Count) vrátí poslední otevřený sešit, Workbooks ("Sešit1.xls") vrátí příslušný sešit

6 Přístup k buňkám IV Seznam Worksheets
Seznam listů v jednom sešitu Excelu Volá se nad objektem Workbook Listy přístupné pod indexem (počínaje 1) nebo pod svým názvem List reprezentován objektem Worksheet (aktivní list ActiveSheet) Např. ThisWorkbook.Worksheets(1) vrátí první list aktuálního sešitu, ThisWorkbook. Worksheets("List1") vrátí příslušný list

7 Práce se soubory I Zobrazení dialogu pro otevření souboru
soubor = Application.GetOpenFileName ("Soubory MS Excel (*.xls; *.xlsx), *.xls;*.xlsx", 1, "Otevřít soubor", False) Funkce soubor neotevře, jen vrátí cestu k souboru (pokud je stisknuto Otevřít) nebo False (pokud je výběr souboru zrušen) Filtrů pro přípony souborů může být více (v tomto případě jeden), parametr „1“ udává, který bude zobrazen v dialogu

8 Práce se soubory II Zjištění cesty z aktuálního sešitu
ThisWorkbook.Path Určení cesty k jinému sešitu ze stejné složky jako je aktuální sešit ThisWorkbook.Path & "\JinySesit.xls" Otevření jiného sešitu Workbooks.Open (nazevSouboru) nazevSouboru je včetně cesty

9 Práce se soubory III Otevření textového souboru
Stejně jako otevření sešitu Nemusí se načíst správně (nelze nastavit, jak se má přesně naimportovat do řádek a sloupců) Lépe využít QueryTables – dostupné v každém listu, lze nastavit všechny vlastnosti jako při ručním importu  je jich hodně  nejlépe makro nahrát a pak případně upravit

10 Náhodná čísla Funkce Rnd()
Vrátí reálné náhodné číslo z intervalu <0; 1) Někdy je před použitím nutné použít příkaz Randomize, aby funkce Rnd() nevracela stále stejné číslo (často funguje i bez toho) Celá náhodná čísla v intervalu <dolní_mez; horní_mez> Int(dolni_mez + Rnd() * (horni_mez – dolni_mez + 1)) Int() ořízne reálné číslo na celé

11 Převod znaků na čísla a naopak
Hodí se mj. při práci s adresami Funkce Chr(kód) Ze zadaného ASCII kódu znaku (v desítkové soustavě) vytvoří odpovídající znak Např. Chr(65) = "A" Funkce Asc(znak) Vrátí ASCII kód zadaného znaku Např. Asc("A") = 65

12 Obecná doporučení Když lze makro nahrát, není nutné ho programovat
I když makro nelze nahrát, často lze nahrát jeho části, které pak lze využít Pro neznámé funkcionality použít Google Mnoho stránek i v češtině Dát pozor, aby se jednalo o VBA pro Excel (Visual Basic for Applications), standardní VB může být rozdílný Často mnoho různých řešení problému


Stáhnout ppt "KIV/ZD cvičení 10 Tomáš Potužák."

Podobné prezentace


Reklamy Google