Opis delavnice
Le vprašanje časa je, kdaj napredni uporabniki Excela odkrijejo, da je znotraj Excela skrit dragulj, ki lahko zelo poveča produktivnost: makro snemalnik. Ko enkrat začnejo uporabljati snemalnik makrojev, ne mine prav dolgo, dokler ne začnejo še z urejanjem kode, ki jo generira snemalnik z namenom, da bi postala bolj fleksibilna.
Če se prepoznate v prvih povedih, niste pa se še dotaknili bolj naprednih tem, kot so Class Moduli in optimizacija kode za hitrost in zanesljivost, potem je to Masterclass za vas!
V Excel VBA Masterclassu bomo predelali naslednje.
Vsebina delavnice
Class-i v VBA
Za mnoge VBA programerje je koncept Class Modula skrivnost, čeprav je bila ta funkcija na voljo v Visual Basicu že več let – dodana je bila v Excel, začenši z Excelom 97.
Class Modul je posebna vrsta VBA modula, ki ga lahko vstavite v VBA projekt. Pravzaprav Class Modul omogoča programerju, da ustvarja nove objekte (kot so privzeto Workbook, WorkSheet in podobni). Kot bi obiskovalci te delavnice morali vedeti, programiranje v Excelu na koncu pomeni manipuliranje predmetov, bodisi listov, celic, vrednosti ipd. Class modul omogoča ustvarjanje novih predmetov, skupaj z korespondenčnimi lastnostmi, metodami in dogodki.
Ogledali si bomo:
Clssses in Objects
Ustvarjanje Class-ov
Metode, lastnosti in dogodke
Event Classes
Ustvarjanje predmetov (Objects) iz razreda (Class)
Class-i ki vsebujejo Class-e
Userforms
Če vaš VBA projekt želi prikazati več kot preprosto sporočilo ali pa pridobiti več kot en vnos od uporabnika, je najboljši način, da ustvarite lastna pogovorna okna, ki se v VBA imenujejo Userforms oz. Uporabniški obrazci.
Ogledali si bomo:
Najboljše metode in prakse za oblikovanje obrazcev
Dogodke (Events), metode (Methods) in lastnosti (Properties)
Ustvarjanje obrazca, ki se prilagaja velikosti okna
Trakove za razčlenitev obrazca v več površin
Uporaba Obrazcev v programiranju naravnanem proti objektom
Učinkovito kodiranje v VBA (teorija + praktične vaje)
Mnogokrat naletimo na težave s hitrostjo delovanja v VBA-ju na splošno ali pa VBA avtomatizaciji Excela. Medtem, ko je nekaj resnice na tem, recimo, v primerjavi z c ++, pa je razlog za slabo delovanje pogosto slabo strukturirana ali slabo napisana koda. To gre v veliki meri pripisati dejstvu, da je v VBA-ju precej preprosto napisati kodo ki deluje, mnogo težje pa napisati kodo ki deluje hitro. Splošno pravilo je, da je je hitrost optimiziranega postopka pogosto kar za 10-krat hitrejše od izvirne kode, tudi 100-kratna izboljšanja pa niso nič neobičajnega. Pozor, to pomeni da kodo ki se izvede v petih minutah lahko z optimizacijo spravimo pod tri sekunde.
Ogledali si bomo:
Merjenje trajanja izvedbe kode
Kršenje pravil
Hitre VBA algoritmi
Mikro optimizacijo
Učinkovito izmenjavo informacij z Excelom
Priporočeno je, da na delavnico prinesite svoj računalnik, ker boste delali na praktičnih primerih in optimizacijskih izzivih.