Cyfroteka.pl

klikaj i czytaj online

Cyfro
Czytomierz
00167 013974 11052399 na godz. na dobę w sumie
Office 2007. Język VBA i makra. Rozwiązania w biznesie - książka
Office 2007. Język VBA i makra. Rozwiązania w biznesie - książka
Autor: Liczba stron: 472
Wydawca: Helion Język publikacji: polski
ISBN: 978-83-246-1349-6 Data wydania:
Lektor:
Kategoria: ebooki >> komputery i informatyka >> aplikacje biurowe >> vba - programowanie
Porównaj ceny (książka, ebook, audiobook).

Usprawnij działanie najpopularniejszego pakietu biurowego

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.

Korzystaj z makropoleceń i zwiększ efektywność swojej pracy!

Znajdź podobne książki Ostatnio czytane w tej kategorii

Darmowy fragment publikacji:

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 (cid:149) Jak zautomatyzowa(cid:230) najczŒ(cid:156)ciej wykonywane czynno(cid:156)ci? (cid:149) W jaki spos(cid:243)b tworzy(cid:230) niestandardowe okna dialogowe i elementy interfejsu u¿ytkownika? (cid:149) Jak wykrywa(cid:230) b‡Œdy w aplikacji VBA i usuwa(cid:230) je? Mo¿liwo(cid:156)ci i funkcjonalno(cid:156)(cid:230) pakietu Office 2007 s„ ogromne, jednak korzystanie z wielu z nich wymaga od u¿ytkownik(cid:243)w nieustannego powtarzania tych samych czynno(cid:156)ci. RŒczne wybieranie sekwencji poleceæ z menu, zaznaczanie fragment(cid:243)w tekstu lub zakresu kom(cid:243)rek, przypisywanie regu‡ do filtrowania poczty (cid:150) to wszystko jest pracoch‡onne i z czasem staje siŒ uci„¿liwe dla osoby korzystaj„cej z Office 2007. Na szczŒ(cid:156)cie, tw(cid:243)rcy pakietu zaimplementowali w nim niezwykle przydatn„ funkcjŒ tworzenia i wykorzystywania makr, czyli zarejestrowanych sekwencji operacji, kt(cid:243)re mo¿na wywo‡ywa(cid:230) tak samo jak zwyk‡e polecenia z menu. Ka¿dy z program(cid:243)w wchodz„cych w sk‡ad Office(cid:146)a posiada tak„ mo¿liwo(cid:156)(cid:230), a stosowanie jej le¿y w zakresie mo¿liwo(cid:156)ci wszystkich u¿ytkownik(cid:243)w. Ksi„¿ka (cid:132)Office 2007. JŒzyk VBA i makra. Rozwi„zania w biznesie(cid:148) to podrŒcznik dla wszystkich, kt(cid:243)rzy chc„ przyspieszy(cid:230) i usprawni(cid:230) pracŒ z tym pakietem biurowym. Czytaj„c j„, nauczysz siŒ tworzy(cid:230) makra i korzysta(cid:230) z jŒzyka Visual Basic for Applications, w kt(cid:243)rym s„ pisane. Dowiesz siŒ, z jakich element(cid:243)w sk‡ada siŒ makro, jak uruchomi(cid:230) edytor VBA i w jaki spos(cid:243)b wykorzystywa(cid:230) w makrach r(cid:243)¿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(cid:243)w w kodzie (cid:159)r(cid:243)d‡owym i usuwaniu ich. (cid:149) Rejestrowanie i uruchamianie makr (cid:149) Korzystanie z edytora VBA (cid:149) Elementy jŒzyka VBA (cid:149) Obiekty Office w programach VBA (cid:149) Przetwarzanie tekstu za pomoc„ makr (cid:149) Obr(cid:243)bka zakres(cid:243)w kom(cid:243)rek w Excelu (cid:149) Makra dla PowerPointa i Accessa (cid:149) Obs‡uga wiadomo(cid:156)ci pocztowych w Outlooku (cid:149) Tworzenie okien dialogowych i formularzy (cid:149) Modyfikowanie interfejsu Wst„¿ka pakietu Office 2007 (cid:149) Podzia‡ projektu na modu‡y (cid:149) Wykrywanie i usuwanie b‡Œd(cid:243)w Korzystaj z makropoleceæ i zwiŒksz efektywno(cid:156)(cid:230) swojej pracy! Wydawnictwo Helion ul. Ko(cid:156)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 Spis treści 7 Wstrzymywanie aktywnego makra ................................................................................173 Metody podobne do zdarzeń ..........................................................................................174 Przetwarzanie obiektów Workbook .......................................................................................179 Określanie obiektu Workbook .........................................................................................179 Otwieranie skoroszytu ....................................................................................................179 Tworzenie nowego skoroszytu .......................................................................................180 Określanie liczby arkuszy nowego skoroszytu .................................................................180 Zapisywanie każdego otwartego skoroszytu ..................................................................181 Zamykanie skoroszytu ....................................................................................................183 Praca z obiektami Worksheet .................................................................................................184 Określanie obiektu Worksheet ........................................................................................184 Tworzenie nowego arkusza ............................................................................................184 Właściwości obiektu Worksheet .....................................................................................185 Metody obiektu Worksheet ............................................................................................185 Zastosowanie obiektów Range ..............................................................................................186 Zwracanie obiektu Range ...............................................................................................187 Zaznaczanie komórki lub zakresu ...................................................................................192 Definiowanie nazwy zakresu ..........................................................................................197 Umieszczanie danych w zakresie ....................................................................................197 Zwracanie informacji dotyczących zakresu .....................................................................198 Zmiana rozmiaru zakresu ................................................................................................199 Odnośniki ........................................................................................................................199 9 Programowanie w programie PowerPoint ............................................201 Obiekt Presentation PowerPointa ..........................................................................................201 Określanie obiektu Presentation .....................................................................................201 Otwieranie prezentacji ....................................................................................................202 Tworzenie nowego dokumentu ......................................................................................202 Właściwości obiektu Presentation ..................................................................................203 Metody obiektu Presentation .........................................................................................203 Aplikacja objaśniająca żonglowanie ...............................................................................205 Zastosowanie obiektów slajdów prezentacji PowerPointa ....................................................207 Określanie slajdu .............................................................................................................207 Tworzenie nowego slajdu ...............................................................................................208 Wstawianie slajdów z pliku ............................................................................................208 Właściwości obiektu Slide ...............................................................................................209 Aplikacja objaśniająca żonglowanie: tworzenie slajdów ................................................210 Metody obiektu Slide ......................................................................................................211 Zastosowanie obiektów Shape ...............................................................................................211 Określanie obiektu Shape ...............................................................................................211 Dodawanie kształtów do slajdu ......................................................................................212 Wybrane właściwości obiektu Shape ..............................................................................215 Aplikacja objaśniająca żonglowanie: tworzenie slajdu tytułowego ................................218 8 Microsoft Office 2007 PL. Język VBA i makra. Rozwiązania w biznesie Wybrane metody obiektu Shape .................................................................................... 219 Aplikacja objaśniająca żonglowanie: tworzenie instrukcji ............................................. 220 Obsługa pokazu slajdów ........................................................................................................ 224 Przejścia podczas pokazu slajdów .................................................................................. 224 Ustawienia pokazu slajdów ............................................................................................ 225 Uruchamianie pokazu slajdów ....................................................................................... 226 Odnośniki ....................................................................................................................... 226 10 Programowanie baz danych Accessa ....................................................227 Przygotowanie: na początek dwa kroki ................................................................................. 228 Krok 1.: Utworzenie odwołania ...................................................................................... 228 Krok 2.: Tworzenie źródła danych ................................................................................... 229 Praca z rekordami bazy danych: otwieranie zestawu rekordów ............................................ 231 Otwieranie zestawu rekordów znajdującego się w tabeli .............................................. 232 Otwieranie zestawu rekordów: pełna składnia metody Open ........................................ 233 Otwieranie zestawu rekordów za pomocą instrukcji SELECT .......................................... 235 Praca z zestawem rekordów .................................................................................................. 237 Uzyskanie dostępu do danych zestawu rekordów .......................................................... 237 Poruszanie się w obrębie rekordów ................................................................................ 239 Szukanie rekordu ............................................................................................................ 242 Modyfikowanie rekordu ................................................................................................. 244 Dodawanie nowego rekordu .......................................................................................... 245 Usuwanie rekordu .......................................................................................................... 247 Pobieranie danych do Excela ................................................................................................. 248 Pobranie wartości wybranego pola ................................................................................ 249 Pobranie jednego lub większej liczby całych rekordów .................................................. 249 Pobranie całego zestawu rekordów ............................................................................... 251 Odnośniki ....................................................................................................................... 253 11 Programowanie w programie Outlook .................................................255 Wprowadzenie ...................................................................................................................... 255 Praca z folderami Outlooka .................................................................................................... 256 Odwoływanie do domyślnych folderów ......................................................................... 256 Zastosowanie właściwości Folders ................................................................................. 256 Żądanie od użytkownika wybrania folderu .................................................................... 258 Wybrane metody obiektu MAPIFolder ........................................................................... 259 Obsługa otrzymywanych i wysyłanych wiadomości .............................................................. 260 Otrzymywanie wiadomości: obsługa zdarzenia ItemAdd ............................................... 260 Wysyłanie wiadomości: obsługa zdarzenia ItemSend .................................................... 261 Praca z wiadomościami pocztowymi ..................................................................................... 263 Właściwości obiektu MailItem ........................................................................................ 263 Metody obiektu MailItem ............................................................................................... 264 Spis treści 9 Przykład: tworzenie zaawansowanych reguł dla wiadomości przychodzących ..............266 Przykład: eliminowanie spamu .......................................................................................267 Wysyłanie wiadomości ...........................................................................................................268 Tworzenie nowej wiadomości ........................................................................................268 Tworzenie odpowiedzi na wiadomość lub przesyłanie jej dalej ......................................269 Określanie odbiorców wiadomości .................................................................................269 Wysyłanie wiadomości pocztowej ..................................................................................270 Przykład: wysyłanie wiadomości pocztowej z przypomnieniem ....................................271 Praca z załącznikami ..............................................................................................................272 Przykład: usuwanie załączników z wiadomości przesyłanej dalej ..................................273 Dołączanie pliku do wiadomości .....................................................................................274 Programowanie w aplikacji Outlook z poziomu innych programów ......................................275 Tworzenie odwołania do Outlooka .................................................................................275 Uzyskanie obiektu NameSpace .......................................................................................276 Logowanie w sesji Outlooka ...........................................................................................276 Wylogowywanie z sesji Outlooka ...................................................................................277 Odnośniki ........................................................................................................................279 III WYKORZYSTANIE MOŻLIWOŚCI JĘZYKA VBA 12 Tworzenie niestandardowych okien dialogowych VBA ...........................283 Dodawanie formularza do projektu .......................................................................................284 Modyfikowanie właściwości trybu projektowania formularza ...............................................285 Kategoria Appearance ....................................................................................................286 Kategoria Behavior .........................................................................................................286 Kategoria Font ................................................................................................................287 Kategoria Misc ................................................................................................................287 Kategoria Picture ............................................................................................................288 Kategoria Position ..........................................................................................................288 Kategoria Scrolling .........................................................................................................289 Praca z kontrolkami ................................................................................................................289 Umieszczanie kontrolek w formularzu ............................................................................289 Wybieranie kontrolek .....................................................................................................290 Zmiana rozmiaru kontrolek ............................................................................................291 Przenoszenie kontrolek ...................................................................................................292 Kopiowanie kontrolek .....................................................................................................292 Usuwanie kontrolek ........................................................................................................292 Grupowanie kontrolek ....................................................................................................293 Ustawianie właściwości kontrolek ..................................................................................293 Wspólne właściwości kontrolek ......................................................................................294 Określanie kolejności tabulacji ........................................................................................295 Obsługa zdarzeń formularza ..................................................................................................296 10 Microsoft Office 2007 PL. Język VBA i makra. Rozwiązania w biznesie Typy kontrolek formularza ..................................................................................................... 297 Przyciski poleceń ............................................................................................................ 297 Etykiety .......................................................................................................................... 298 Pola tekstowe ................................................................................................................. 298 Ramki ............................................................................................................................. 299 Przyciski opcji ................................................................................................................. 299 Pola wyboru ................................................................................................................... 300 Przyciski przełączające ................................................................................................... 301 Pola listy ......................................................................................................................... 301 Paski przewijania ........................................................................................................... 303 Przyciski pokrętła ........................................................................................................... 303 Kontrolki TabStrips i MultiPage ...................................................................................... 304 Zastosowanie formularza w procedurze ................................................................................ 308 Wyświetlanie formularza ............................................................................................... 308 Wyładowanie formularza ............................................................................................... 309 Przetwarzanie wyników formularza ............................................................................... 310 Odnośniki ....................................................................................................................... 312 13 Dostosowywanie interfejsu Wstążka pakietu Office 2007 ......................315 Rozszerzalność interfejsu Wstążka ........................................................................................ 315 Rozszerzanie interfejsu Wstążka: przykład ............................................................................ 318 Krok 1.: utworzenie dokumentu lub szablonu pakietu Office z obsługą makr ................ 318 Krok 2.: utworzenie pliku tekstowego i dodanie niestandardowych znaczników XML ........... 319 Krok 3.: kopiowanie pliku niestandardowych znaczników XML do pakietu dokumentu .....321 Krok 4.: zmiana nazwy dokumentu i otwarcie go ........................................................... 322 Większa złożoność oznacza większe możliwości ............................................................ 323 Ukrywanie wbudowanego interfejsu Wstążka ...................................................................... 324 Tworzenie niestandardowych kart ........................................................................................ 325 Tworzenie nowej karty ................................................................................................... 325 Dostosowywanie istniejącej karty .................................................................................. 327 Tworzenie niestandardowych grup ....................................................................................... 328 Tworzenie nowej grupy .................................................................................................. 328 Dostosowywanie istniejącej grupy ................................................................................. 329 Tworzenie niestandardowych kontrolek ............................................................................... 330 Wspólne atrybuty kontrolek ........................................................................................... 330 Tworzenie przycisku ....................................................................................................... 332 Tworzenie menu ............................................................................................................. 332 Tworzenie przycisku menu ............................................................................................. 335 Tworzenie pola zaznaczenia ........................................................................................... 337 Tworzenie przycisku przełączającego ............................................................................. 338 Tworzenie listy rozwijanej .............................................................................................. 339 Tworzenie galerii ............................................................................................................ 342 Spis treści 11 Tworzenie pola wyboru ..................................................................................................344 Tworzenie kontrolki wywołującej okno dialogowe .........................................................345 Stosowanie poleceń interfejsu Wstążka po uruchomieniu aplikacji ...............................346 Odnośniki ........................................................................................................................355 14 Wskazówki i rozwiązania związane z językiem VBA ...............................357 Praca z modułami ..................................................................................................................357 Zmiana nazwy modułu ...................................................................................................358 Eksportowanie modułu ...................................................................................................358 Importowanie modułu ....................................................................................................358 Usuwanie modułu ...........................................................................................................359 Konfigurowanie ustawień zabezpieczeń makr .......................................................................359 Określanie zaufanej lokalizacji ........................................................................................360 Ustawianie poziomu zabezpieczeń makr ........................................................................361 Cyfrowe podpisywanie projektu VBA .....................................................................................363 Zapisywanie ustawień aplikacji w rejestrze systemowym .....................................................364 Zapamiętywanie ustawień w rejestrze ...........................................................................364 Odczytywanie ustawień zapisanych w rejestrze .............................................................365 Usuwanie ustawień z rejestru .........................................................................................366 Monitorowanie poziomu wykorzystania plików .............................................................366 Wczytywanie wszystkich ustawień sekcji .......................................................................368 Uzyskiwanie dostępu do systemu plików z poziomu kodu VBA .............................................369 Zwracanie informacji dotyczących plików i katalogów ...................................................369 Przetwarzanie plików i katalogów ..................................................................................374 Wskazówki pozwalające przyspieszyć procedury ...................................................................379 Wyłączenie odświeżania zawartości ekranu ...................................................................380 Ukrywanie dokumentów ................................................................................................380 Nie należy zaznaczać danych bez potrzeby .....................................................................380 Bez potrzeby nie należy ponownie obliczać arkuszy Excela ............................................380 Optymalizowanie pętli ....................................................................................................381 Odnośniki ........................................................................................................................382 15 Wychwytywanie błędów programów ...................................................383 Podstawowa strategia wychwytywania błędów ....................................................................384 Ustawienie pułapki wychwytującej błędy .......................................................................384 Tworzenie kodu procedury obsługującej błędy ...............................................................386 Wznowienie wykonywania programu ............................................................................388 Wyłączenie pułapki .........................................................................................................391 Praca z obiektem Err ...............................................................................................................391 Właściwości obiektu Err ..................................................................................................391 Metody obiektu Err .........................................................................................................393 Wychwytywane błędy programów VBA .................................................................................394 Odnośniki ........................................................................................................................399 12 Microsoft Office 2007 PL. Język VBA i makra. Rozwiązania w biznesie 16 Debugowanie procedur VBA ................................................................401 Podstawowa strategia debugowania .................................................................................... 402 Błędy składni .................................................................................................................. 402 Błędy kompilacji ............................................................................................................. 402 Błędy uruchomieniowe .................................................................................................. 402 Błędy logiczne ................................................................................................................ 403 Wstrzymywanie procedury .................................................................................................... 403 Włączanie trybu wykonywania krokowego .................................................................... 404 Wyłączanie trybu wykonywania krokowego .................................................................. 408 Krokowe wykonywanie procedury ........................................................................................ 408 Krokowe wykonanie instrukcji procedury ...................................................................... 408 Krokowe wykonanie instrukcji bez śledzenia wywoływanej przez nią procedury .......... 409 Wychodzenie z procedury .............................................................................................. 409 Przeskoczenie do pozycji kursora z pominięciem kilku instrukcji ................................... 409 Monitorowanie wartości procedury ....................................................................................... 409 Zastosowanie okna Locals .............................................................................................. 410 Dodawanie wyrażenia czujki .......................................................................................... 410 Edytowanie wyrażenia czujki ......................................................................................... 412 Usuwanie wyrażenia czujki ............................................................................................ 412 Szybkie wyświetlanie wartości ....................................................................................... 413 Zastosowanie okna Immediate .............................................................................................. 414 Wyświetlanie danych w oknie Immediate ..................................................................... 414 Wykonywanie instrukcji w oknie Immediate ................................................................. 416 Wskazówki dotyczące debugowania ..................................................................................... 417 Stosowanie wcięć w kodzie w celu poprawienia czytelności .......................................... 417 Włączanie sprawdzania składni ..................................................................................... 417 Wymaganie zdeklarowania zmiennych ......................................................................... 417 Dzielenie złożonych procedur ......................................................................................... 418 Dla słów kluczowych języka VBA należy używać małych liter ........................................ 418 Problematyczne instrukcje należy opatrzyć komentarzem ............................................ 418 Dzielenie długich instrukcji ............................................................................................ 418 Gdy tylko to możliwe, należy używać nazw zakresów Excela ......................................... 418 Należy korzystać ze stałych użytkownika ....................................................................... 419 Odnośniki ....................................................................................................................... 419 IV DODATKI A Instrukcje języka VBA ..........................................................................423 B Funkcje języka VBA .............................................................................429 C Funkcje arkuszowe Excela w VBA..........................................................441 Skorowidz ..........................................................................................449 2 W T Y M R O Z D Z I A L E : Uaktywnianie karty Deweloper interfejsu Wstążka ................................. 36 Uruchamianie edytora VBA ..................... 36 Omówienie edytora VBA ......................... 37 Procedury VBA ....................................... 39 Tworzenie makra poleceń ....................... 40 Tworzenie funkcji użytkownika ............... 44 Wykorzystanie technologii IntelliSense ... 48 Zamykanie edytora Visual Basic Editor ..... 51 Tworzenie własnych makr Umożliwienie interpreterowi języka VBA wykonania całości pracy przez zarejestrowanie makra jest pro- stą metodą automatyzowania zadań, z której będzie się często korzystać. Aby jednak w jak największym stopniu skorzystać z możliwości języka VBA, trzeba opanować umiejętność programowania w pełnym za- kresie. Oznacza to pisanie własnych makr od podstaw lub na bazie zarejestrowanego makra. Dlaczego warto sprawiać sobie tyle kłopotu? Oto tylko niektóre z korzyści, jakie się dzięki temu uzyska: Q Jeśli popełni się błąd podczas rejestrowania makra, zwłaszcza takiego, które wymaga dużej liczby kroków, do usunięcia pomyłki wystarczy prosta modyfikacja kodu VBA makra zamiast ponownego rejestrowania wszystkiego od po- czątku. Q Uzyskuje się pełną kontrolę nad każdym ma- krem. Oznacza to, że zapewnia się, iż makra re- alizują dokładnie to, czego się od nich oczekuje. Q Można wykorzystać ukryte możliwości języka VBA do modyfikowania programów pakietu Office i zrealizowania kilku robiących wrażenie zadań programistycznych, które zwyczajnie nie są możliwe w ramach procesu rejestrowania makra. Aby ułatwić Czytelnikowi urzeczywistnienie powyż- szych korzyści i wielu innych rzeczy, w niniejszym rozdziale zaprezentowano podstawy dotyczące pisa- nia prostych procedur i funkcji, a także wyjaśniono, jak obsługiwać edytor VBA (ang. Visual Basic Editor), będący narzędziem, które język VBA oferuje do ręcz- nego tworzenia makr. Rozdział ten stanowi przy- gotowanie do kilku następnych rozdziałów, w których dokładniej omówiono szczegóły języka VBA. 36 Rozdział 2 Tworzenie własnych makr 2 Uaktywnianie karty Deweloper interfejsu Wstążka Jeśli kod VBA będzie tworzony regularnie, przez wyświetlenie karty Deweloper w obrębie interfejsu Wstążka pakietu Office 2007 można sprawić, że część zadań programistycznych stanie się trochę bardziej efektywna. W przypadku tej karty wystarczy jedno kliknięcie, żeby uzyskać dostęp do wielu elementów związanych z językiem VBA. A zatem kartę De- weloper warto uaktywnić. W tym celu należy wykonać następujące kroki: 1. Wybrać pozycję Przycisk pakietu Office/Opcje programu Aplikacja (w miejsce łańcucha Aplikacja należy wstawić nazwę używanego programu pakietu Office, czyli na przykład Word lub Excel). 2. W obrębie karty Popularne kliknąć opcję Pokaż kartę Deweloper na Wstążce. 3. Kliknąć przycisk OK. Warto zauważyć, że wyświetlenie karty Deweloper w jednym programie pakietu Office spowoduje pojawienie się jej w pozostałych aplikacjach pakietu. Rysunek 2.1 przedstawia kartę Deweloper wyświetloną w Excelu. Rysunek 2.1. Wyświetlanie karty Deweloper w celu ułatwienia dostępu do niektórych elementów języka VBA Uruchamianie edytora VBA W celu wyświetlenia okna edytora VBA w obrębie dowolnego programu pakietu Office nale- ży wybrać pozycję Deweloper/Visual Basic (warto zauważyć, że dla uproszczenia w przy- kładach zamieszczonych w rozdziale używana jest jedna aplikacja pakietu Office, a mia- Omówienie edytora VBA 37 nowicie Excel). Rysunek 2.2 prezentuje nowe okno, które jest otwierane (trzeba jednak mieć świadomość, że okno, które się zobaczy, może się nieznacznie różnić od pokazanego poniżej). Rysunek 2.2. W oknie edytora VBA można poprawiać i edytować makra 2 WSKAZÓWKA Okno edytora VBA można również wyświetlić przez wciśnięcie kombinacji klawiszy Alt+F11. W rzeczy- wistości kombinacja ta powoduje przełączanie między edytorem VBA i aktualnie używanym pro- gramem pakietu Office. Omówienie edytora VBA Zasady funkcjonowania edytora VBA są proste. Jest to niezależny program, którego celem jest nic innego niż ułatwienie tworzenia i edytowania makr VBA (w kręgach zawodowych programistów edytor VBA jest nazywany zintegrowanym środowiskiem programowania IDE (ang. Integrated Development Environment)). Po pierwszym uruchomieniu edytora VBA nie zobaczy się zbyt wiele. Po lewej stronie okna edytora znajdują się dwa okna — Project i Properties. Na tym etapie nie trzeba się przej- mować drugim oknem (więcej na jego temat można znaleźć w rozdziale 5., „Praca z obiektami”). Okno Project (jego techniczna nazwa to Project Explorer) prezentuje zawartość bieżącego projektu VBA. Posługując się najprostszymi terminami, projekt można określić jako plik pakietu Office wraz ze wszystkimi powiązanymi z nim składnikami języka VBA, uwzględnia- jącymi makra i formularze użytkownika (formularze omówiono w rozdziale 12., „Two- rzenie niestandardowych okien dialogowych VBA”). 38 Rozdział 2 Tworzenie własnych makr Tworzenie nowego modułu 2 Większość zadań realizuje się w obrębie jednego lub większej liczby modułów edytora VBA. Moduły są oknami służącymi do przechowywania kodu źródłowego. Jeśli w poprzednim rozdziale zarejestrowano jakieś makra, można już dysponować modułem. Na wszelki wy- padek poniżej podano kroki potrzebne do utworzenia nowego modułu. 1. W oknie Project Explorer widocznym z lewej strony okna edytora VBA kliknąć projekt, w którym zamierza się umieścić nowy moduł. Oto kilka uwag, o których trzeba pa- miętać: x Jeśli w Wordzie cały czas mają być dostępne makra nowego modułu, należy kliknąć projekt Normal (w efekcie moduł zostanie dodany do szablonu Normal). Jeżeli w Excelu cały czas mają być dostępne makra nowego modułu, należy kliknąć projekt PERSONAL.XLSB (w efekcie moduł zostanie dodany do skoroszytu PER- SONAL). x Î Trzeba pamiętać, że nie zobaczy się projektu PERSONAL.XLSB, dopóki w skoroszycie Skoroszyt makr osobistych nie zapisze się co najmniej jednego zarejestrowanego makra (należy zapoznać się z punktem „Rejestrowanie makra Excela” na stronie 27). x Jeśli makra nowego modułu w dowolnym programie mają być dostępne tylko po otwarciu określonego dokumentu, należy kliknąć ten dokument lub jeden z jego obiektów. 2. Wybrać pozycję Insert/Module. Edytor VBA utworzy nowy moduł i otworzy go (ry- sunek 2.3). Rysunek 2.3. Nowy moduł dodany do projektu Procedury VBA 39 3. W oknie Properties za pomocą właściwości Name zmienić nazwę modułu, a następnie wcisnąć klawisz Enter (opcjonalny krok). Î Aby opanować umiejętność eksportowania, usuwania i zmieniania nazw modułów, należy zapoznać się z podrozdziałem „Praca z modułami” na stronie 357. Otwieranie istniejącego modułu Jeśli w oknie Project istnieje już moduł, w celu jego otwarcia należy wykonać następujące kroki: 1. W oknie Project otworzyć projekt przez kliknięcie znaku plusa (+) widocznego z lewej 2 strony. 2. W obrębie właśnie otwartego projektu wyświetlić zawartość gałęzi Modules przez kliknięcie znaku plusa (+) widocznego z lewej strony. 3. Dwukrotnie kliknąć nazwę modułu, który ma zostać otwarty. Edytor VBA otworzy okno modułu i wyświetli jego kod VBA. Procedury VBA Zanim Czytelnik zacznie pisać własne makra, powinien poświęcić chwilę na zrozumienie tego, co właściwie będzie tworzył. Podczas ręcznego tworzenia kodu VBA (lub rejestrowania makra zgodnie z opisem zamieszczonym w rozdziale 1.) to, co się uzyskuje, jest określane mianem procedury. Ogólnie rzecz biorąc, w języku VBA procedura jest zbiorem powiąza- nych ze sobą instrukcji, które tworzą moduł i realizują określonego typu zadanie (instrukcja jest poleceniem nakazującym interpreterowi języka VBA wykonanie konkretnego zadania). Na potrzeby książki użyto dwóch odmian procedury VBA — makr poleceń i funkcji użyt- kownika. Oto podsumowanie różnic: Q Makro poleceń to najczęściej używany typ procedury. Zwykle makro to zawiera instrukcje odpowiadające opcjom interfejsu Wstążka i innym poleceniom programu. Cechą wy- różniającą makra poleceń jest to, że podobnie do zwykłych poleceń aplikacji, oddziałują na swoje otoczenie (przykładowo, w przypadku Worda oznacza to, że makro ma wpływ na bieżący dokument, fragment tekstu itp.). Niezależnie od tego, czy otwiera się do- kument, formatuje tekst lub wstawia akapit, makra poleceń wprowadzają zmiany (należy zapoznać się z poniższym podrozdziałem „Tworzenie makra poleceń”). Q Funkcje użytkownika działają tak jak wbudowane funkcje programu. Ich cechą charakte- rystyczną jest to, że akceptują wartości wejściowe, a następnie przetwarzają je i zwracają wynik (należy zapoznać się z podrozdziałem „Tworzenie funkcji użytkownika”). 40 Rozdział 2 Tworzenie własnych makr Tworzenie makra poleceń 2 Jak wspomniano na początku rozdziału, rejestrowanie makra ma ograniczone możliwości, ponieważ istnieje mnóstwo elementów makra, do których nie można uzyskać dostępu za pomocą myszy lub klawiatury, bądź przez wybranie pozycji menu. Przykładowo, w przy- padku Excela język VBA oferuje kilkadziesiąt informacyjnych funkcji makr, które zwracają dane dotyczące między innymi komórek, arkuszy i obszarów roboczych. Ponadto funkcje sterujące VBA umożliwiają dodanie prawdziwych struktur programowania, takich jak pętla, roz- gałęzienie i instrukcja decyzyjna (należy zajrzeć do rozdziału 6., „Kontrolowanie kodu VBA”). W celu uzyskania dostępu do tych elementów makra trzeba od podstaw napisać własne pro- cedury VBA. Jest to prostsze, niż mogłoby się wydawać, gdyż wszystko, co trzeba zrobić, to wprowadzić do modułu zestaw instrukcji. UWAGA Choć w niniejszym podrozdziale omówiono tworzenie makr VBA, zdaję sobie sprawę z oczywistego paradoksu — jak można pisać makra, jeśli jeszcze nie zdobyło się na ich temat żadnej wiedzy? Celem następnych czterech rozdziałów jest zaznajomienie Czytelnika z instrukcjami i funkcjami języka VBA. Informacje zamieszczone w tym podrozdziale i w następnych rozdziałach będą służyć jako baza do poszerzania umiejętności programowania w języku VBA. Pisanie makra poleceń Po otwarciu i uaktywnieniu okna modułu, w celu utworzenia własnego makra poleceń należy wykonać następujące kroki: 1. Otworzyć moduł, który ma być zastosowany dla funkcji. 2. Znak kursora umieścić w miejscu, w którym rozpocznie się pisanie makra (trzeba zadbać o to, żeby znak kursora nie znajdował się w obrębie istniejącego makra). 3. Z menu Insert wybrać pozycję Procedure. Edytor VBA wyświetli okno dialogowe Add Procedure (rysunek 2.4). Rysunek 2.4. Za pomocą okna dialogowego Add Procedure można nadać nazwę nowej procedurze i kreślić typ procedury, którą zamierza się zastosować Tworzenie makra poleceń 41 4. Przy użyciu pola tekstowego Name określić nazwę makra. Oto kilka ogólnych wy- tycznych, które muszą być przestrzegane: x Nazwa musi liczyć nie więcej niż 255 znaków. x Pierwszy znak musi być literą lub podkreśleniem (_). x Nie można używać spacji ani kropki. 5. W grupie Type sprawdzić, czy jest aktywna opcja Sub. 6. Kliknąć przycisk OK. Interpreter języka VBA umieści w module poniższy kod (w miej- 2 scu NazwaProcedury będzie nazwa wprowadzona w kroku 3.). Public Sub NazwaProcedury() End Sub 7. Między wierszami Public Sub i End Sub wprowadzić instrukcje VBA, które mają znaleźć się w makrze. Aby wstawić nowy wiersz, po wpisaniu każdej instrukcji należy wcisnąć klawisz Enter. Rysunek 2.5 prezentuje prosty przykład, w którym zastosowano tylko jedną instrukcję VBA. Oto ona: MsgBox Witaj Ăwiecie! Rysunek 2.5. Przykładowe makro gotowe do wykonania Instrukcja w przykładzie zawiera funkcję języka VBA o nazwie MsgBox, która służy do wyświe- tlania użytkownikowi prostego okna dialogowego (nazwa MsgBox jest skrótem od słów Message Box). Aby poprawić czytelność, przed wpisaniem instrukcji jednokrotnie wcisnąłem klawisz Tab. Więcej informacji na temat wcięć instrukcji można znaleźć w dalszej części rozdziału. UWAGA Kod źródłowy zamieszczony w przykładach tego rozdziału można znaleźć pod adresem ftp://ftp.helion. ´pl/przyklady/ofjvba.zip Î Aby uzyskać szczegóły dotyczące funkcji MsgBox, należy zapoznać się z punktem „Pobieranie danych wejściowych za pomocą funkcji MsgBox” na stronie 66. 42 Rozdział 2 Tworzenie własnych makr Uruchamianie makra poleceń Choć aplikacje pakietu Office oferują kilka metod uruchamiania makr poleceń VBA, najczę- ściej używane będą następujące dwie: Q W module należy kliknąć w dowolnym miejscu w obrębie makra, a następnie z menu Run wybrać pozycję Run Sub/UserForm lub wcisnąć klawisz F5. Q W oknie aplikacji pakietu Office z menu Deweloper należy wybrać pozycję Makra (lub wcisnąć kombinację klawiszy Alt+F8), żeby otworzyć okno dialogowe Makro. W razie potrzeby za pomocą listy Makra w należy zaznaczyć dokument zawierający makro, którego zamierza się użyć. W dalszej kolejności z listy Nazwa makra należy wybrać makro i kliknąć przycisk Uruchom. 2 UWAGA Aby przejść bezpośrednio do dowolnego makra poleceń, które zamierza się zmodyfikować za po- mocą edytora VBA, można również skorzystać z okna dialogowego Makro. Z listy Nazwa makra należy wybrać makro, a następnie kliknąć
Pobierz darmowy fragment (pdf)

Gdzie kupić całą publikację:

Office 2007. Język VBA i makra. Rozwiązania w biznesie
Autor:

Opinie na temat publikacji:


Inne popularne pozycje z tej kategorii:


Czytaj również:


Prowadzisz stronę lub blog? Wstaw link do fragmentu tej książki i współpracuj z Cyfroteką: