Office 2007 Jezyk VBA i makra Rozwiazania w biznesie.pdf

(607 KB) Pobierz
Microsoft Office 2007.
Jêzyk VBA i makra.
Rozwi¹zania w biznesie
Autor: Paul McFedries
T³umaczenie: Piotr Pilch
ISBN: 978-83-246-1349-6
Tytu³ orygina³u:
VBA for the 2007 Microsoft(R)
Office System (Business Solutions)
Format: 170x230, stron: 472
Usprawnij dzia³anie najpopularniejszego pakietu biurowego
Jak zautomatyzowaæ najczêœciej wykonywane czynnoœci?
W jaki sposób tworzyæ niestandardowe okna dialogowe i elementy interfejsu
u¿ytkownika?
Jak wykrywaæ b³êdy w aplikacji VBA i usuwaæ je?
Mo¿liwoœci i funkcjonalnoœæ pakietu Office 2007 s¹ ogromne, jednak korzystanie
z wielu z nich wymaga od u¿ytkowników nieustannego powtarzania tych samych
czynnoœci. Rêczne wybieranie sekwencji poleceñ z menu, zaznaczanie fragmentów tekstu
lub zakresu komórek, przypisywanie regu³ do filtrowania poczty –
to
wszystko jest
pracoch³onne i z czasem staje siê uci¹¿liwe dla osoby korzystaj¹cej z Office 2007.
Na szczêœcie, twórcy pakietu zaimplementowali w nim niezwykle przydatn¹ funkcjê
tworzenia i wykorzystywania makr, czyli zarejestrowanych sekwencji operacji, które mo¿na
wywo³ywaæ tak samo jak zwyk³e polecenia z menu. Ka¿dy z programów wchodz¹cych
w sk³ad Office’a posiada tak¹ mo¿liwoœæ, a stosowanie jej le¿y w zakresie mo¿liwoœci
wszystkich u¿ytkowników.
Ksi¹¿ka „Office 2007. Jêzyk VBA i makra. Rozwi¹zania w biznesie” to podrêcznik
dla wszystkich, którzy chc¹ przyspieszyæ i usprawniæ pracê z tym pakietem biurowym.
Czytaj¹c j¹, nauczysz siê tworzyæ makra i korzystaæ z jêzyka Visual Basic for Applications,
w którym s¹ pisane. Dowiesz siê, z jakich elementów sk³ada siê makro, jak uruchomiæ
edytor VBA i w jaki sposób wykorzystywaæ w makrach ró¿ne polecenia. Poznasz techniki
budowania makr dla Worda, Excela, PowerPointa i Outlooka. Przeczytasz tak¿e o tworzeniu
niestandardowych okien dialogowych, modyfikowaniu interfejsu u¿ytkownika aplikacji
z pakietu Office, wyszukiwaniu b³êdów w kodzie Ÿród³owym i usuwaniu ich.
Rejestrowanie i uruchamianie makr
Korzystanie z edytora VBA
Elementy jêzyka VBA
Obiekty Office w programach VBA
Przetwarzanie tekstu za pomoc¹ makr
Obróbka zakresów komórek w Excelu
Makra dla PowerPointa i Accessa
Obs³uga wiadomoœci pocztowych w Outlooku
Tworzenie okien dialogowych i formularzy
Modyfikowanie interfejsu Wst¹¿ka pakietu Office 2007
Podzia³ projektu na modu³y
Wykrywanie i usuwanie b³êdów
Korzystaj z makropoleceñ i zwiêksz efektywnoœæ swojej pracy!
Wydawnictwo Helion
ul. Koœciuszki 1c
44-100 Gliwice
tel. 032 230 98 63
e-mail: helion@helion.pl
Spis treści
Wprowadzenie .................................................................................... 15
Czym jest makro? .....................................................................................................................16
Co język VBA ma wspólnego z makrami? .................................................................................17
Informacja od polskiego wydawcy ...........................................................................................17
Co powinno się wiedzieć przed przeczytaniem książki? ...........................................................17
Zawartość książki .....................................................................................................................18
Specjalne elementy książki ......................................................................................................19
I PODSTAWY JĘZYKA VBA
1 Tworzenie i uruchamianie zarejestrowanych makr ................................. 23
Rejestrowanie makra VBA ........................................................................................................25
Rejestrowanie makra Worda ............................................................................................25
Rejestrowanie makra Excela .............................................................................................27
Uruchamianie zarejestrowanego makra ..................................................................................29
Zastosowanie listy Nazwa makra ......................................................................................29
Przypisywanie klawiszy skrótu zarejestrowanym makrom Worda ...................................30
Przypisywanie klawiszy skrótu zarejestrowanym makrom Excela ....................................31
Tworzenie przycisku paska narzędzi Szybki dostęp dla zarejestrowanego makra ............32
Odnośniki ..........................................................................................................................34
2 Tworzenie własnych makr .................................................................... 35
Uaktywnianie karty Deweloper interfejsu Wstążka .................................................................36
Uruchamianie edytora VBA ......................................................................................................36
Omówienie edytora VBA ..........................................................................................................37
Tworzenie nowego modułu ..............................................................................................38
Otwieranie istniejącego modułu .......................................................................................39
Procedury VBA .........................................................................................................................39
Tworzenie makra poleceń ........................................................................................................40
Pisanie makra poleceń ......................................................................................................40
Uruchamianie makra poleceń ...........................................................................................42
Wprowadzanie instrukcji VBA ...........................................................................................42
Tworzenie funkcji użytkownika ................................................................................................44
Ogólne informacje na temat funkcji użytkownika ............................................................44
Pisanie funkcji użytkownika .............................................................................................45
Zastosowanie funkcji ........................................................................................................46
Wykorzystanie technologii IntelliSense ...................................................................................48
Lista właściwości lub metod .............................................................................................48
Lista stałych ......................................................................................................................49
4
Microsoft Office 2007 PL. Język VBA i makra. Rozwiązania w biznesie
Informacja o parametrach ................................................................................................ 50
Uzupełnianie słów kluczowych ......................................................................................... 51
Zamykanie edytora Visual Basic Editor .................................................................................... 51
Odnośniki ......................................................................................................................... 52
3 Zmienne programów ............................................................................53
Deklarowanie zmiennych ........................................................................................................ 53
Unikanie błędów związanych ze zmiennymi ........................................................................... 55
Typy danych zmiennych .......................................................................................................... 56
Zmiana domyślnego typu danych .................................................................................... 59
Tworzenie typów danych użytkownika ............................................................................ 60
Zastosowanie zmiennych tablicowych .................................................................................... 61
Tablice dynamiczne .......................................................................................................... 62
Tablice wielowymiarowe ................................................................................................. 64
Praca ze stałymi ....................................................................................................................... 65
Użycie wbudowanych stałych .......................................................................................... 65
Tworzenie stałych użytkownika ....................................................................................... 65
Przechowywanie w zmiennej danych wejściowych użytkownika .............................................. 66
Pobieranie danych wejściowych za pomocą funkcji MsgBox ............................................ 66
Pobieranie danych wejściowych za pomocą funkcji InputBox .......................................... 70
Odnośniki ......................................................................................................................... 72
4 Tworzenie wyrażeń języka VBA ..............................................................73
Ogólne informacje na temat wyrażeń ...................................................................................... 73
Stosowanie operatorów języka VBA ........................................................................................ 74
Operatory arytmetyczne ................................................................................................... 75
Operator złączania ............................................................................................................ 76
Operatory porównania ..................................................................................................... 77
Operatory logiczne ........................................................................................................... 77
Kolejność stosowania operatorów ........................................................................................... 78
Hierarchia ważności operatorów ...................................................................................... 78
Kontrolowanie hierarchii ważności operatorów ............................................................... 79
Przetwarzanie wyrażeń numerycznych ................................................................................... 81
Funkcje matematyczne języka VBA .................................................................................. 81
Funkcje finansowe języka VBA ......................................................................................... 83
Przetwarzanie wyrażeń łańcuchowych .................................................................................... 84
Przetwarzanie wyrażeń logicznych .......................................................................................... 87
Operator And .................................................................................................................... 88
Operator Or ....................................................................................................................... 88
Operator Xor ..................................................................................................................... 88
Operator Not ..................................................................................................................... 89
Przetwarzanie wyrażeń dat ..................................................................................................... 89
Odnośniki ......................................................................................................................... 92
Spis treści
5
5 Praca z obiektami ................................................................................ 93
Czym jest obiekt? .....................................................................................................................93
Hierarchia obiektów .................................................................................................................95
Stosowanie właściwości obiektów ...........................................................................................95
Ustawianie wartości właściwości ......................................................................................97
Zwracanie wartości właściwości .......................................................................................97
Stosowanie metod obiektów ...................................................................................................98
Obsługa zdarzeń obiektów .......................................................................................................99
Zastosowanie zbiorów obiektów ............................................................................................101
Przypisywanie obiektu zmiennej ...........................................................................................101
Operator Is ..............................................................................................................................103
Praca z wieloma właściwościami lub metodami ....................................................................103
Przykład — obiekt Application .............................................................................................105
Wyświetlanie komunikatu na pasku stanu .....................................................................105
Zmiana nagłówka paska tytułu .......................................................................................106
Praca z oknem aplikacji ...................................................................................................106
Uzyskiwanie dostępu do wbudowanych okien dialogowych aplikacji ............................107
Sprawdzanie pisowni ......................................................................................................111
Przykład — obiekt Window ..................................................................................................112
Zastosowanie obiektu Window ......................................................................................112
Otwieranie nowego okna ................................................................................................113
Aktywowanie okna .........................................................................................................113
Odnośniki ........................................................................................................................113
6 Kontrolowanie kodu VBA .....................................................................115
Kod podejmujący decyzje .......................................................................................................115
Zastosowanie instrukcji If…Then do określania prawdy lub fałszu ......................................116
Zastosowanie instrukcji If…Then…Else do obsługi wartości wynikowej False ...................117
Podejmowanie wielu decyzji ..................................................................................................119
Zastosowanie operatorów And i Or .................................................................................119
Zastosowanie wielu instrukcji If…Then…Else .............................................................120
Zastosowanie instrukcji Select Case ................................................................................122
Funkcje podejmujące decyzje .................................................................................................127
Funkcja IIf .......................................................................................................................127
Funkcja Choose ...............................................................................................................128
Funkcja Switch ................................................................................................................129
Kod z pętlą .............................................................................................................................130
Zastosowanie struktur Do…Loop .........................................................................................131
Zastosowanie pętli For…Next ...............................................................................................133
6
Microsoft Office 2007 PL. Język VBA i makra. Rozwiązania w biznesie
Zastosowanie pętli For Each…Next ...................................................................................... 135
Kończenie pętli za pomocą instrukcji Exit For lub Exit Do ...................................................... 137
Stosowanie wcięć w celu poprawienia czytelności kodu ....................................................... 138
Odnośniki ....................................................................................................................... 139
II WYKORZYSTANIE JĘZYKA VBA PODCZAS PRACY
7 Programowanie w Wordzie .................................................................143
Praca z dokumentami ............................................................................................................ 143
Zastosowanie obiektu Document ................................................................................... 143
Otwieranie dokumentu .................................................................................................. 144
Obiekt RecentFiles .......................................................................................................... 145
Tworzenie nowego dokumentu ..................................................................................... 146
Zapisywanie dokumentu ................................................................................................ 147
Zamykanie dokumentu .................................................................................................. 150
Zamykanie wszystkich otwartych dokumentów ............................................................ 150
Przykład — archiwizowanie dokumentu ...................................................................... 151
Praca z tekstem ...................................................................................................................... 154
Zastosowanie obiektu Range ................................................................................................. 155
Metoda Range ................................................................................................................ 155
Właściwość Range .......................................................................................................... 155
Odczytywanie i modyfikowanie tekstu zakresu .............................................................. 156
Formatowanie tekstu ..................................................................................................... 156
Wstawianie tekstu .......................................................................................................... 157
Usuwanie tekstu ............................................................................................................. 159
Zastosowanie obiektu Selection ............................................................................................ 160
Sprawdzanie typu zaznaczenia ...................................................................................... 160
Przenoszenie punktu wstawiania ................................................................................... 161
Rozszerzanie zaznaczenia ............................................................................................... 162
Redukowanie zaznaczenia ............................................................................................. 163
Zastosowanie obiektu Words ................................................................................................. 164
Zastosowanie obiektu Sentences ........................................................................................... 165
Wyświetlanie liczby słów zdania .................................................................................... 165
Programowanie z wykorzystaniem obiektu Paragraph ......................................................... 167
Odnośniki ....................................................................................................................... 170
8 Programowanie w Excelu ....................................................................171
Obiekt Application Excela ...................................................................................................... 171
Korzystanie z funkcji arkuszowych ................................................................................. 171
Ponowne wykonywanie obliczeń w skoroszytach .......................................................... 172
Zamiana łańcucha na obiekt ........................................................................................... 172
Zgłoś jeśli naruszono regulamin