Cel szkolenia
Celem szkolenia jest poznanie możliwości jakie niesie znajomość i umiejętność programowania aplikacji, raportów i automatyzacji w aplikacji Excel
Po ukończeniu szkolenia uczestnik będzie potrafił:
- Założyć strukturę projektu.
- Sprawnie korzystać z składni
- Korzystać z źródeł danych
- Programować strukturalnie i obiektowo
- Projektować graficzny interfejs użytkownika
Wymagania wstępne
Aby skorzystać z tego szkolenia wystarczy znajomość Excela na poziomie średnim, wiedza do czego służą raporty tabel przestawnych i chęci.
Program szkolenia
Makra
- Rejestrowanie i edycja makr
- Przypisywanie makr do formularzy, pasków zadań, klawiszy skrótów
Środowisko VBA
- Visual Basic Editor i jego opcje
Wstęp do programowania
- Procedury: Function, Sub
- Typy danych
- Instrukcja warunkowa if ... then ... elseif ... else ... end if
- Instrukcja case
- Pętle do ... loop while, until
- Pętla for ... next
- Instrukcje przerwania pętli (exit)
- Przetwarzanie macierzy
Ciągi znaków - string
- Łączenie ciągów znaków (konkatenacja)
- Konwersja na inne typy (niejawna i jawna)
- Funkcje przetwarzające ciągi znaków
Visual Basic w Excelu
- Pobieranie i przekazywanie danych do arkusza (Cells, Range)
- Pobieranie i przekazywanie danych do użytkownika (InputBox, MsgBox)
- Deklaracja zmiennych
- Zasięg i czas życia zmiennych
- Operatory i ich priorytety
- Opcje modułów
- Tworzenie własnych funkcji i wykorzystanie ich w arkuszu
- Obiekty, klasy, metody i własności
- Zabezpieczanie kodu
- Ochrona kodu przed modyfikacją i podglądem
Debuggowanie- obsługa błędów
- Przetwarzanie krokowe
- Okienko Locals
- Okienko Immediate
- Pułapki – Watches
- Rodzaje błędów i ich obsługa
- Przechwytywanie i obsługa run-time errors
Model Obiektów Excela
- Obiekt Application
- Obiekt Workbook i kolekcja Workbooks
- Obiekt Worksheet i kolekcja Worksheets
- Obiekty ThisWorkbook, ActiveWorkbook, ActiveCell
- Obiekt Selection
- Kolekcja Range
- Obiekt Cells
- Wyświetlanie danych na pasku status
- Optymalizacja za pomocą funkcji ScreenUpdating
- Pomiar czasu za pomocą metody Timer
Obsługa zdarzeń w języku VBA
- Czym jest zdarzenie?
- Reagowanie na zdarzenie i tworzenie procedury obsługi zdarzenia
- Wywoływanie procedur obsługi zdarzenia
- Obsługa często występujących zdarzeń
Tablice
- Tablice statyczne i statyczne wielowymiarowe
- Tablice dynamiczne
- Tablica dynamiczna typu Variant
- Optymalizacja tablic i pamięci
Programowanie obiektowe
- Klasy i obiekty
- Tworzenie klas
- Tworzenie i niszczenie obiektów
- Tworzenie metod
- Tworzenie własności
- Walidacja danych przy pomocy własności
- Domyślne własności i metody
- Obsługa błędów w klasach
Tworzenie i zarządzanie kolekcjami
- Tworzenie kolekcji
- Dodawanie i usuwanie elementów
- Odwołania do elementów (za pomocą klucza oraz indeksu)
Zaawansowane struktury i funkcje VBA
- Przekazywanie parametrów przez wartość i referencje (ByRef i byVal)
- Procedury o zmiennej ilości parametrów
- Parametry opcjonalne i wartości domyślne
- Procedury o nieznanej liczbie parametrów (ParamArray)
- Enumeracje, wygodne przekazywanie parametrów
- Typy użytkownika (User-defined Type)
- Obsługa wartości Null, Nothing, empty string "", Empty, 0
- Konwersja typów (Conversion)
Operacje na plikach
- Otwieranie i zamykanie plików tekstowych
- Czytanie i zapisywanie danych tekstowych i binarnych
- Przetwarzanie rekordów w plikach CSV
- Efektywne przetwarzanie plików tekstowych
- Praca z plikami XML
Korzystanie z zewnętrznych bibliotek
- Tworzenie słowników MS Scripting.Dictionary
- Tworzenie list informacji systemowych
- Korzystanie z bibliotek systemowych Windows
Łączenie się do zewnętrznego źródła baz danych - ADO
- Podłączanie do zewnętrznych baz danych MS Access, MS SQL Server
- Przetwarzanie danych w recordset
- Projektowanie zapytań w języku SQL
- Wykorzystanie danych z recordset do zasilenia kontrolek (comboBox, listBox)
- Projektowanie aplikacji bazodanowej
Praca z aplikacjami zewnętrznymi
- Projektowanie korespondencji seryjnej z zastosowaniem szablonu MS Word
- Projektowanie automatycznej korespondencji MS Outlook
- Automatyczne tworzenie slajdów w prezentacji MS PowerPoint