Cyfroteka.pl

klikaj i czytaj online

Cyfro
Czytomierz
00401 005792 11253007 na godz. na dobę w sumie
ABC Visual Basica dla aplikacji w Office XP PL - książka
ABC Visual Basica dla aplikacji w Office XP PL - książka
Autor: , Liczba stron: 216
Wydawca: Helion Język publikacji: polski
ISBN: 83-7197-829-4 Data wydania:
Lektor:
Kategoria: ebooki >> komputery i informatyka >> aplikacje biurowe >> vba - programowanie
Porównaj ceny (książka, ebook, audiobook).
Jesteś znużony wykonywaniem powtarzających się czynności w Wordzie czy Excelu? Zmuś do nich swój komputer. Przejmij kontrolę nad MS Office i setkami innych programów. Dostosuj je do swoich potrzeb za pomocą Visual Basic for Applications (VBA) -- prostego i skutecznego języka programowania, opartego na popularnym Visual Basicu. Jeśli często wprowadzasz dane do arkusza Excela możesz stworzyć specjalny formularz, który nie tylko ułatwi ich wpisywanie, ale także sprawdzi ich poprawność. Jeżeli w dokumencie Worda potrzebna jest funkcja dostępna tylko w Excelu, dzięki VBA możesz jej użyć. 'ABC Visual Basic dla aplikacji w Office XP PL' jest przeznaczoną dla początkujących książką, dzięki której dowiesz się, jak można w pełni wykorzystać wszystkie możliwości pakietu Office XP.

Dzięki książce:

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

Darmowy fragment publikacji:

ABC Visual Basic dla aplikacji w Office XP PL Autorzy: Edward C. Willett, Steve Cummings T³umaczenie: Bogdan Czogalik ISBN: 83-7197-829-4 Format: B5, stron: 216 Jesteġ znu¿ony wykonywaniem powtarzaj¹cych siê czynnoġci w Wordzie czy Excelu? Zmuġ do nich swój komputer. Przejmij kontrolê nad MS Office i setkami innych programów. Dostosuj je do swoich potrzeb za pomoc¹ Visual Basic for Applications (VBA) — prostego i skutecznego jêzyka programowania, opartego na popularnym Visual Basicu. Jeġli czêsto wprowadzasz dane do arkusza Excela mo¿esz stworzyæ specjalny formularz, który nie tylko u³atwi ich wpisywanie, ale tak¿e sprawdzi ich poprawnoġæ. Je¿eli w dokumencie Worda potrzebna jest funkcja dostêpna tylko w Excelu, dziêki VBA mo¿esz jej u¿yæ. „ABC Visual Basic dla aplikacji w Office XP PL” jest przeznaczon¹ dla pocz¹tkuj¹cych ksi¹¿k¹, dziêki której dowiesz siê, jak mo¿na w pe³ni wykorzystaæ wszystkie mo¿liwoġci pakietu Office XP. Dziêki ksi¹¿ce: • dowiesz siê, czym jest VBA • nauczysz pos³ugiwaæ siê edytorem VBA • poznasz zasady pisania programów w tym jêzyku • wejdziesz w ġwiat programowania obiektowego • nauczysz siê usuwaæ b³êdy z programów • stworzysz w³asne okna dialogowe i formularze • poznasz sposoby tworzenia kompletnych aplikacji • dowiesz siê, jak rozpowszechniaæ w³asne programy IDZ DO IDZ DO PRZYK£ADOWY ROZDZIA£ PRZYK£ADOWY ROZDZIA£ SPIS TREĎCI SPIS TREĎCI KATALOG KSI¥¯EK KATALOG KSI¥¯EK KATALOG ONLINE KATALOG ONLINE ZAMÓW DRUKOWANY KATALOG ZAMÓW DRUKOWANY KATALOG TWÓJ KOSZYK TWÓJ KOSZYK DODAJ DO KOSZYKA DODAJ DO KOSZYKA CENNIK I INFORMACJE CENNIK I INFORMACJE ZAMÓW INFORMACJE ZAMÓW INFORMACJE O NOWOĎCIACH O NOWOĎCIACH ZAMÓW CENNIK ZAMÓW CENNIK CZYTELNIA CZYTELNIA FRAGMENTY KSI¥¯EK ONLINE FRAGMENTY KSI¥¯EK ONLINE Wydawnictwo Helion ul. Chopina 6 44-100 Gliwice tel. (32)230-98-63 e-mail: helion@helion.pl Spis treści Wprowadzenie ...................................................n................................9 Kilka uwag o VBA...................................................o...................................................o........9 Krótka historia VBA ...................................................o..................................................9 VBA jako standard...................................................o...................................................o10 Rozdział 1. Visual Basic dla Aplikacji ...................................................n..............11 Edytor języka Visual Basic dla Aplikacji ...................................................o......................11 Moduł kodu ...................................................o...................................................o............... ..11 VBA — przegląd...................................................o...................................................o.........13 VBA — pierwsze kroki...................................................o..................................................15 Makra to programy VBA ...................................................o.........................................15 VBA to nie tylko makra...................................................o...........................................16 VBA — narzędzie do programowania obiektowego ...................................................o.....17 Obiekty języka VBA...................................................o................................................18 Modele obiektowe...................................................o...................................................o.18 Technologia ActiveX a VBA ...................................................o.........................................18 Formanty ActiveX ...................................................o...................................................o18 Automatyzacja ActiveX...................................................o...........................................20 Serwery i kontrolery automatyzacji ...................................................o.........................20 Więcej informacji o VBA ...................................................o..............................................20 Rozdział 2. Edytor języka VBA ...................................................n........................23 Środowisko tworzenia programów...................................................o.................................23 Menu edytora języka VBA ...................................................o......................................23 Praca z paskami narzędzi ...................................................o.........................................24 Skróty klawiaturowe ...................................................o................................................25 Zarządzanie oknami ...................................................o...................................................o....26 Moduły kodu, formularze oraz okna wspomagające wizualne programowanie.........26 Wyświetlanie i ukrywanie okien...................................................o..............................27 Okna, które można i których nie można zadokować ..................................................27 Zapisywanie układu okien ...................................................o.......................................29 Zarządzanie projektami ...................................................o..................................................29 Otwieranie okna Project...................................................o...........................................29 Okno Project ...................................................o...................................................o.........29 Właściwości projektu...................................................o...............................................31 Przeglądarka obiektów ...................................................o...................................................o33 Uruchamianie przeglądarki obiektów ...................................................o......................33 Przeglądanie obiektów ...................................................o.............................................34 Szukanie obiektów ...................................................o...................................................o35 Przeglądarka obiektów pomaga pisać kod...................................................o...............35 4 ABC Visual Basic dla aplikacji w Office XP PL Tajemnice pisania kodu...................................................o..................................................36 Otwieranie modułu kodu...................................................o..........................................36 Tworzenie nowego modułu kodu...................................................o.............................36 Pisanie kodu ...................................................o...................................................o..........36 Pomoc przy wpisywaniu kodu ...................................................o.................................39 Okno Properties...................................................o...................................................o...........42 Wyświetlanie okna Properties...................................................o..................................43 Zmiana nazwy projektu lub modułu ...................................................o........................43 Okna służące do usuwania błędów z programów ...................................................o..........44 Rozdział 3. Kod VBA...................................................n.......................................45 Części składowe programu...................................................o.............................................45 Przykładowy program...................................................o..............................................45 Instrukcje, procedury, moduły, projekty...................................................o..................47 Co to jest program?...................................................o..................................................47 Więcej o projektach ...................................................o.................................................47 Praca z modułami...................................................o...................................................o..48 Pisanie procedur...................................................o...................................................o....50 Instrukcje VBA ...................................................o...................................................o.....55 Etykieta VBA ...................................................o...................................................o..............56 Zasady tworzenia nazw zmiennych i obiektów ...................................................o.......57 Konwencje dotyczące tworzenia nazw zmiennych i obiektów...................................57 Czytelny kod ...................................................o...................................................o.........57 Komentarz...................................................o...................................................o.............59 Zmienne...................................................o...................................................o.................. .....61 Deklarowanie zmiennych...................................................o.........................................61 Gdzie deklarować zmienne? ...................................................o....................................61 Kiedy deklarować zmienne? ...................................................o....................................62 Typy danych...................................................o...................................................o..........62 Określanie zakresu zmiennej ...................................................o...................................64 Deklarowanie wielu zmiennych w jednym wierszu ...................................................o65 Operacja przypisania wartości do zmiennej ...................................................o............66 Wyrażenia ...................................................o...................................................o.............67 Co znajduje się w zmiennej, zanim przypiszesz do niej wartość?..............................67 Praca ze stałymi...................................................o...................................................o...........68 Deklarowanie stałych...................................................o...............................................68 Zalety stałych ...................................................o...................................................o........69 Inne zastosowania stałych...................................................o........................................69 Operatory...................................................o...................................................o.....................70 Kolejność wykonywania operacji w wyrażeniach...................................................o...70 Porównywanie wartości ...................................................o...........................................71 Konkatenacja łańcuchów znaków...................................................o............................73 Typy danych w szczegółach...................................................o...........................................74 Konwersja typów danych...................................................o.........................................74 Typ danych Variant...................................................o..................................................74 Numeryczne typy danych ...................................................o........................................75 Kiedy używać zmiennych typu Boolean?...................................................o................75 Wartości walutowe...................................................o...................................................o76 Praca z datami i godzinami ...................................................o......................................76 Łańcuchy znaków ...................................................o...................................................o.78 Tablice...................................................o...................................................o.........................78 Elementy tablicy ...................................................o...................................................o...79 Wymiary tablicy...................................................o...................................................o....79 Deklarowanie tablicy ...................................................o...............................................79 Dostęp do elementów tablicy...................................................o...................................81 Spis treści 5 Funkcje i instrukcje wbudowane...................................................o....................................82 Instrukcje, funkcje, metody...................................................o......................................82 Kategorie wbudowanych instrukcji, funkcji i metod..................................................83 Kontrola przepływu programu ...................................................o.......................................84 Anatomia struktury kontrolującej przepływ programu...............................................84 Zagnieżdżone struktury kontrolujące przepływ programu .........................................84 Wyrażenia warunkowe...................................................o.............................................85 Instrukcja If…Then…Else ...................................................o.............................................86 Postać podstawowa: If…Then ...................................................o.................................86 Jednowierszowa instrukcja If…Then ...................................................o......................86 Instrukcja If…Then…Else w działaniu ...................................................o...................87 Więcej warunków w instrukcji If…Then…Else...................................................o......87 Struktura Select Case ...................................................o...................................................o..89 Tworzenie struktury Select Case ...................................................o.............................89 Przykładowa struktura Select Case...................................................o..........................89 Instrukcja Case Else...................................................o.................................................90 Więcej o instrukcjach Case struktury Select Case...................................................o...90 Tworzenie pętli...................................................o...................................................o............91 Pętla Do…Loop w działaniu...................................................o....................................91 Instrukcja Exit Do ...................................................o...................................................o.94 Pętla Do bez słowa kluczowego While lub Until ...................................................o....95 Pętla For…Next ...................................................o...................................................o....95 Pętla For Each…Next ...................................................o..............................................98 Instrukcja GoTo......................................o...................................................o........................98 Instrukcja GoTo w działaniu...................................................o....................................99 Uwagi o instrukcji GoTo ...................................................o.........................................99 Rozdział 4. Programowanie obiektowe ...................................................n............101 Co to jest obiekt?...................................................o...................................................o.......101 Komponenty aplikacji pakietu Office XP są obiektami ...........................................101 Przykłady obiektów ...................................................o...............................................101 Praktyczna definicja obiektu...................................................o..................................102 Klasy a obiekty ...................................................o...................................................o...102 Co to jest model obiektowy?...................................................o..................................103 Formularze są obiektami...................................................o........................................104 Używanie obiektów w kodzie ...................................................o......................................105 Poznawanie obiektów ...................................................o............................................106 Właściwości obiektów ...................................................o...........................................106 Metody ...................................................o...................................................o................108 Zdarzenia...................................................o...................................................o.............109 Praca z obiektami...................................................o...................................................o110 Tworzenie zmiennych obiektowych ...................................................o......................111 Tworzenie nowych obiektów...................................................o.................................113 Instrukcja With...................................................o...................................................o....114 Porównywanie referencji obiektowych...................................................o..................115 Zarządzanie danymi za pomocą kolekcji...................................................o...............115 .118 Tworzenie modułu klasy...................................................o........................................119 Składniki definicji klasy ...................................................o........................................119 Obiekt Termostat w działaniu...................................................o................................121 Moduły klas...................................................o...................................................o.............. Rozdział 5. Tworzenie bezbłędnych programów .................................................123 Typy błędów...................................................o...................................................o..............123 Usuwanie błędów składniowych...................................................o............................123 Usuwanie błędów...................................................o...................................................o124 6 ABC Visual Basic dla aplikacji w Office XP PL Funkcja Auto Data Tips ...................................................o...............................................131 Okno Immediate...................................................o...................................................o........132 Okno Locals ...................................................o...................................................o..............134 Praca z oknem Locals ...................................................o............................................134 Po co edytować wartości zmiennych? ...................................................o...................135 Jak edytuje się wartości zmiennych? ...................................................o.....................135 Okno Watch..........................................o...................................................o........................136 Różnice między oknem Locals a oknem Watch ...................................................o....137 Dodawanie wyrażeń do śledzenia...................................................o..........................137 Praca z oknem Add Watch...................................................o.....................................138 Edytowanie śledzonych wyrażeń...................................................o...........................138 Definiowanie punktów przerwania w oknie Add Watch .............................................139 Instrukcja On Error oraz obiekt Err...................................................o..............................139 Skąd się biorą błędy? ...................................................o.............................................140 Jak działa kod odpowiedzialny za obsługę błędów?.................................................140 Jak napisać kod odpowiedzialny za obsługę błędów? ..............................................141 Rozdział 6. Tworzenie okien dialogowych ...................................................n......145 Proste okna dialogowe ...................................................o.................................................145 Okna komunikatów...................................................o................................................145 Funkcja InputBox...................................................o...................................................o148 Projektowanie formularzy ...................................................o............................................149 Uruchamianie formularzy ...................................................o......................................149 Ile formularzy powinien zawierać program? ...................................................o.........150 Drukowanie formularzy ...................................................o.........................................150 Praca z formularzami ...................................................o...................................................o150 Tworzenie formularza...................................................o............................................150 Dodawanie formantów do formularza ...................................................o...................151 Właściwości formularzy i formantów ...................................................o..........................151 Okno Properties ...................................................o...................................................o..152 Pomoc na temat właściwości ...................................................o.................................153 Zmiana wartości właściwości ...................................................o................................153 Wybierz właściwy obiekt...................................................o.......................................154 Najważniejsze właściwości formularzy i formantów ...............................................154 Edycja formantów ...................................................o...................................................o.....156 Praca z siatką...................................................o...................................................o.............157 Formatowanie formantów ...................................................o............................................158 Menu Format...................................................o...................................................o.......158 Pasek narzędzi UserForm ...................................................o......................................158 Grupowanie formantów ...................................................o.........................................159 Kolejność formantów na stosie obiektów ...................................................o..............159 Formatowanie zestawów formantów ...................................................o.....................160 Inne polecenia menu Format...................................................o..................................161 Praca z formantami...................................................o...................................................o....162 Kolejność dostępu do formantów ...................................................o..........................162 Klawisze dostępu ...................................................o...................................................o163 Sekrety formantów ...................................................o...................................................o....163 Etykiety ...................................................o...................................................o...............164 Pola tekstowe ...................................................o...................................................o......165 Przyciski poleceń ...................................................o...................................................o167 Ramki...................................................o...................................................o..................168 Tworzenie okien dialogowych z kartami...................................................o...............169 Grupy opcji ...................................................o...................................................o.........170 Pola wyboru oraz przełączniki...................................................o...............................171 Spis treści 7 Lista wyboru i lista rozwijana...................................................o................................172 Formanty, dzięki którym można wybierać wartość..................................................174 Dodawanie kodu do formularza ...................................................o...................................175 Wczytywanie i wyświetlanie formularzy...................................................o...............176 Formularz modalny i niemodalny...................................................o..........................178 Odwoływanie się do formularza za pomocą zmiennej .............................................178 Ukrywanie formularza ...................................................o...........................................179 Usuwanie formularza z pamięci operacyjnej...................................................o.........179 Zdarzenia formularza i formantów...................................................o...............................179 Podstawowe zdarzenia ...................................................o...........................................179 Dodawanie kodu do zdarzeń...................................................o..................................180 Składnia procedury zdarzenia ...................................................o................................181 Zdarzenie Click...................................................o...................................................o...182 Zdarzenia Change, BeforeUpdate oraz AfterUpdate ................................................183 Zdarzenia KeyPress, KeyDown oraz KeyUp...................................................o.........184 Projektowanie okien dialogowych ...................................................o...............................184 Przycisk Zamknij lub Anuluj ...................................................o.................................184 Przycisk OK ...................................................o...................................................o........185 Sprawdzanie poprawności danych...................................................o.........................186 Modyfikowanie właściwości formularzy i formantów .............................................188 Formanty ActiveX...................................................o...................................................o.....189 Praca z formantami ActiveX...................................................o..................................189 Formanty ActiveX w programach VBA ...................................................o................191 Niewidoczne formanty ActiveX ...................................................o............................191 Rozdział 7. Tworzenie aplikacji ...................................................n.....................193 Tworzenie aplikacji a technologia COM ...................................................o.....................193 Tworzenie programu...................................................o..............................................195 Automatyzacja pakietu Office XP ...................................................o.........................196 Budowanie dodatków...................................................o...................................................o198 Tworzenie dodatku dla konkretnej aplikacji...................................................o..........199 Tworzenie dodatku COM ...................................................o......................................199 Właściwość niestandardowa w roli zmiennej ...................................................o..............200 Certyfikat cyfrowy ...................................................o...................................................o....201 Ochrona kodu projektu...................................................o.................................................202 Office XP Developer Edition ...................................................o.......................................202 Rozpowszechnianie programów ...................................................o..................................202 Rozpowszechnianie baz danych aplikacji Access...................................................o........203 Skorowidz...................................................n...................................................n...205 Rozdział 1. Visual Basic dla Aplikacji Pakiet Office XP, choć wyposażony w wiele narzędzi i funkcji, nie może zaspokoić po- trzeb wszystkich użytkowników – stąd popularność języka VBA. Jeżeli chcesz dosto- sować do swoich potrzeb, na przykład, aplikację Word, możesz skorzystać z narzędzi do programowania w języku Visual Basic dla Aplikacji (VBA). VBA pozwala tworzyć zarówno proste, jak i złożone programy wykorzystujące ukryte możliwości pakietu Office XP. Edytor języka Visual Basic dla Aplikacji Rysunek 1.1 przedstawia edytor języka Visual Basic dla Aplikacji. Praca z tym edyto- rem zajmuje większość czasu, gdy tworzymy programy usprawniające działanie pa- kietu Office XP. Jedną z zalet VBA jest to, że umiejętności zdobyte podczas nauki pro- gramowania w jednej aplikacji można wykorzystać podczas programowania w innej. Rozdział 2. omawia edytor języka VBA szczegółowo. Przed uruchomieniem edytora należy najpierw uruchomić jedną z aplikacji pakietu Office XP lub inną aplikację, do której dołączono VBA — edytora nie można uruchomić bez uruchomienia jego apli- kacji macierzystej. Po uruchomieniu edytor języka VBA działa jak osobna aplikacja. Kiedy jednak uruchomisz procedurę napisaną w edytorze języka VBA, efekty jej dzia- łania są natychmiast widoczne w aplikacji macierzystej. Moduł kodu Aby zapoznać się z językiem VBA, napiszemy bardzo prostą krótką procedurę. Mimo swojej prostoty, procedura ta nie jest zupełnie bezużyteczna. Wykonaj następujące czynności: 1. 2. Uruchom program Word. Aby uruchomić edytor języka VBA, naciśnij kombinację kclawiszy Alt+F11. 12 ABC Visual Basic dla aplikacji w Office XP PL Rysunek 1.1. Edytor języka Visual Basic dla Aplikacji zawiera okno Project, okno Properties, moduł kodu, pasek menu oraz pasek narzędzi Standard 3. 4. 5. 6. 7. 8. 9. W oknie Project zaznacz (kliknij) element Normal odpowiadający szablonowi programu Word Normal.dot. Aby wstawić moduł kodu, z menu Insert wybierz pozycję Module. Moduł ten otrzyma nazwę Module1. W module kodu Module1 wpisz wiersz kodu 5WD9[ħYKGVN9GTULú#RNKMCELK i naciśnij klawisz Enter. W ten sposób „poinformujesz” VBA, że chcesz napisać podprogram. Zwróć uwagę, że VBA dodał nawiasy do pierwszego wiersza ckodu, a także dopisał wiersz kodu PF5WD. Kursor został umieszczony między pierwszym a ostatnim wierszem procedury. Wpisz poniższy wierszc kodu między pierwszym (5WD9[ħYKGVN9GTULú#RNKMCELK) a ostatnim wierszem ( PF5WD) procedury: /UI$QZ9GTULC#RRNKECVKQP8GTUKQP#RRNKECVKQP$WKNF Naciśnij klawisz Enter. Zwróć uwagę, że VBA sformatował słowa kluczowe #RRNKECVKQP, 8GTUKQP oraz $WKNF, zmieniając pierwszą literę każdego z nich na wielką literę. Aby uruchomić procedurę WyświetlWersjęAplikacji, upewnij się, że kursor jest w niej umieszczony, i naciśnij klawisz F5. VBA wyświetli okno komunikatu z numerem wersji programu Word, z którego korzystasz (crysunek 1.2). Aby zapisać procedurę w szablonie Normal.dot, z menu File wybierz pozycję Save Normal. Aby powrócić do programu Word, z menu File wybierz pozycję Close and Return to Microsoft Word. Procedurę zapisaną w szablonie Normal.dot można uruchomić w dowolnej chwili. W tym celu z menu Narzędzia wybierz pozycję Makro, a następnie — pozycję Makra. Word otworzy okno dialogowe Makra. Zaznacz nazwę procedury (makra), którą chcesz uru- chomić, i kliknij przycisk Uruchom. Rozdział 1. ♦ Visual Basic dla Aplikacji 13 Rysunek 1.2. Efekt działania procedury VBA (okno komunikatu z numerem wersji programu Word) VBA — przegląd Oto krótki przegląd głównych cech języka VBA stosowanego wc pakiecie Office XP:     Każda aplikacja pakietu Office XP posiada edytor jęczyka VBA. Oznacza to, że kod można przenosić z jednej aplikacji do drugiecj. Każda aplikacja pakietu Office XP posiada i udostępcnia własny model obiektowy. Aplikację Word można kontrolować, na przykład, z pozciomu aplikacji Excel (obiekty, modele obiektowe i manipulocwanie nimi omawiamy w dalszej części tego rozdziału). Niektóre obiekty, jak cCommandBar i Assistant, nie należą do modelu obiektowego pojedynczej aplikaccji, ale do modelu obiektowego pakietu Office. VBA jest serwerem automatyczacji umożliwiającym tworzenie dodatków usprawniających pracę w środowiskuc tworzenia programów. Edytor języka VBA jest zintegrowanym środowiskiem tworczenia programów. Jest to miejsce, w którym tworzy się i testuje moducły i formularze. Edytor języka VBA jest bardzo podobny do środowiska twcorzenia programów języka VB. Każda aplikacja pakietu Office XP udostępnia prawiec jednakowe narzędzia do tworzenia programów. Aplikacje, do których dołączono VBA, w tym wszystkie aplikacje pakietu Office XP z wyjątkiem acplikacji Access, korzystają ze wspólnego systemu projektowania okien dialogowych c(w terminologii VBA okno dialogowe nosi nazwę UserForm). Oznacza to, że becz względu na to, w której aplikacji pracujesz, okna dialogowe tworzy csię za pomocą tych samych narzędzi oraz formantów. Ponadto okno dialogowe zaprocjektowane na przykład w Wordzie można wykorzystać w Excelu, często bez konieczności dokonywania 14 ABC Visual Basic dla aplikacji w Office XP PL zmian. Dzięki formantom dostarczanym z VBA tworzy się efektcowne i funkcjonalne okna dialogowe (rysunek 1.3). Poza tym mocżna korzystać z formantów sprzedawanych przez innych producentów (pcatrz podrozdział na temat formantów ActiveX w dalszej części tego rozdzciału). Rysunek 1.3. Okno dialogowe ze standardowymi formantami VBA w różnych aplikacjach Mimo wysiłków firmy Microsoft zmierzających do ujednolicenia języka VBA we wszystkich apli- kacjach pakietu Office, nadal istnieją różnice między odmianami VBA stosowanymi w poszcze- gólnych aplikacjach. Aby na przykład za pomocą kodu wywołać wbudowane okno dialogowe Zapisz jako w programie Word, należy użyć stałej wdDialogFileSaveAs. Aby podobne okno dia- logowe wywołać w programie Excel, należy użyć stałej xlDialogSaveAs. Zwróć uwagę, że stała stosowana w Excelu nie zawiera członu File. Warto również zauważyć, że spośród wszystkich aplikacji pakietu Office żadna nie pozwala kontrolować wbudowanych poleceń za pomocą kodu VBA tak bardzo jak Word.  Można definiować własne obiekty w modułach klas. Dzięki zdefiniowaniu obiektów można korzystać z dobrodziejstw programowancia obiektowego. Ten sam obiekt można wykorzystywać w różnych projektachc, przez co skraca się czas tworzenia programów.  Technologia ADO (ActiveX Data Objects) sprawia, że dokumencty pakietu Office XP mogą pobierać dane z różnych źródeł. Dzięki ADO można pobierać i przechowywać dane bez względu na to, czyc znajdują się one na dysku twardym, serwerze grupy roboczej lub w relcacyjnej bazie danych. Technologia ADO jest łatwiejsza w użyciu i szybsza niżc technologie odpowiedzialne za dostęp do danych wykorzystywane wc poprzednich wersjach pakietu Office, w tym Data Access Objects (DAO) oraz Opcen Database Connectivity (ODBC). Więcej informacji na temat technologii ADO można znaleźć w „ABC Access 2002/ XP PL” (Helion, 2002).  Warunkowa kompilacja kodu ułatwia tworzenie programów.c Dzięki warunkowej kompilacji kodu można stworzyć programy cw różnych wersjach językowych, na przykład w wersji polskiej lub angielcskiej. Warunkową kompilację kodu można również stosować do wskazaniac fragmentów kodu, które mają być wykonane podczas testowania programu. Rozdział 1. ♦ Visual Basic dla Aplikacji 15  Funkcje API zwiększają możliwości języka VBA. Jeżeli biblioteki języka VBA nie zawierają funkcji, której potrzebujesz, możesz sckorzystać z funkcji API (Application Programming Interface) przechowywanych w scystemie Windows w dynamicznych bibliotekach DLL (Dynamic Linked Library).c VBA — pierwsze kroki VBA jest wystarczająco bogatym środowiskiem programowania, by zaspokoić potrzeby profesjonalnych programistów. Naukę języka VBA najlepiej rozpocząć od próby zauto- matyzowania często powtarzanych czynności. Makra to programy VBA Naukę programowania w języku VBA ułatwia Rejestrator makr dostępny w programach Word, PowerPoint i Excel. Makra służą do automatyzacji cczęsto powtarzanych czynności. Rejestrację makra rozpoczyna się od wyświetlania okna dialogowego Rejestrowanie makra, w którym można podać nazwę dla nowego makra i wybrać inne opcje związane z jego rejestracją. Wygląd i dokładna nazwa tego okna zależy od aplikacji. Rysunek 1.4 przedstawia okno dialogowe Rejestrowanie makra programu Word. Rysunek 1.4. Okno dialogowe Rejestrowanie makra programu Word Aby zarejestrować makro, które ustawia skalę wyświetlania dokumentu programu Word na 200 , wykonaj następujące czynności: 1. 2. 3. 4. Z menu Narzędzia wybierz pozycję Makro, a następnie — pozycję Zarejestruj nowe makro. Word otworzy okno dialogowe Rejestrowanie makra. W polu Nazwa makra wpisz nazwę dla nowego makra, na przykład Skala200. Kliknij przycisk OK. Word wyświetli pasek narzędzi Zatrzymaj rejestrowanie z dwiema ikonami Kończenie rejestracji makr oraz Wstrzymywanie rejestratora. Z menu Widok wybierz pozycję Powiększenie, w oknie dialogowym Powiększenie wybierz opcję 200 i kliknij przycisk OK. 16 ABC Visual Basic dla aplikacji w Office XP PL 5. Kliknij ikonę Kończenie rejestracji makr na pasku narzędzi Zatrzymaj rejestrowanie. Po wyłączeniu rejestratora makr ustaw skalę wyświetclania dokumentu na wartość 100 (w tym celu w polu Powiększenie widoku na pasku narzędzi Standardowy wpisz wartość 100 i naciśnij klawisz Enter). Aby uruchomić makro Skala200, które ustawia skalę wyświetlania dokumentu progra- mu Word na 200 , wykonaj następujące czynności: 1. Z menu Narzędzia wybierz pozycję Makro, a następnie — pozycję Makra. Word otworzy okno dialogowe Makra (rysunek 1.5). Rysunek 1.5. Okno dialogowe Makra 2. Zaznacz (kliknij) nazwę makra (w tym przypadku Skala200) i kliknij przycisk Uruchom. Skala wyświetlania dokumentu zmieni się na 200 . Zarejestrowane makra są przechowywane w postaci kodu VBA — nie ma różnicy mię- dzy kodem zarejestrowanego makra a kodem wpisanym przez programistę. Aby obejrzeć kod zarejestrowanego makra, z menu Narzędzia wybierz pozycję Makro, a następnie — pozycję Makra. W oknie dialogowym Makra zaznacz nazwę makra, którego kod chcesz obejrzeć, i kliknij przycisk Edytuj. Zwróć uwagę, że makro to procedura VBA (ściśle mówiąc, makro to podprogram — procedura zadeklarowana ze słowem kluczowym Sub — bez parametrów). Standar- dowo aplikacja pakietu Office umieszcza zarejestrowane makra w module kodu zwią- zanym z bieżącym dokumentem. Moduł kodu może zawierać więcej niż jedno makro (procedurę). Procedury i moduły omawiamy w rozdziale 4. VBA to nie tylko makra Makra radzą sobie znakomicie z automatycznym wykonywaniem często powtarzanych poleceń w określonym porządku. Makro nie jest jednak w stanie zareagować we właści- wy sposób na zmieniające się warunki. Aby utworzyć procedurę dostosowującą swoje zachowanie do bieżących warunków, programista musi napisać kod procedury w mo- dule kodu. Rozdział 1. ♦ Visual Basic dla Aplikacji 17 Warto pisać procedury w języku VBA m.in., po to, by móc:  Tworzyć okna dialogowe. VBA pozwala projektować zarówno proste okna komunikatów z przyciskami Tak, Nie i Anuluj, jak i skomplikowane okna dialogowe z wieloma kartami. VBA jest narzędziem do prcogramowania wizualnego, ponieważ okna dialogowe tworzy się, rysucjąc na formularzach różne elementy. Aby okna dialogowe zaczęły pracować, musisz napisać kokd VBA.  Pobierać dane z baz danych Access, dBase, FoxPro, a takżec z relacyjnych baz danych dostępnych za pomocą interfejsu OLE DB lub ODBCc. Aby przeglądać dane pochodzące z wymienionych źródeł, nacleży korzystać z programu Microsoft Query. Aby natomiast manipulować cnimi, należy napisać procedury w języku VBA.    Dodać do procedury kod uruchamiany, ilekroć w procedurzce wystąpi błąd. Aby nie doszło do zawieszenia makra lub procedury nacpisanej przez programistę w przypadku wystąpienia błędu, można dodać kod odpowciedzialny za obsługę takich sytuacji. Kod obsługujący błędy jest szczególnie cważny, jeżeli programy VBA są używane nie tylko przez ich autora, ale i przezc innych użytkowników. Autor nie może kontrolować warunków, w jakich inni ucżytkownicy uruchamiają jego programy. VBA zawiera kilka instrukcji służących doc tworzenia kodu obsługującego błędy. Utworzyć system pomocy. Można stworzyć pomoc kontekstową i wyświetlać komunikaty, kiedy użytkownik popełni błąd. Można nawetc programować Asystenta pakietu Office, tworząc zestaw wskazówek pocmagających użytkownikowi wykonać złożone zadanie. Ochronić program przed nieautoryzowanym modyfikowaniem kcodu lub kopiowaniem. Kod VBA można zabezpieczyć hasłem, aby nieuprawnione osoby nie miały do niego dostępu. VBA — narzędzie do programowania obiektowego Chociaż Visual Basic dla Aplikacji nie spełnia wszystkich warunków, jakie są stawiane językowi programowania obiektowego, obiekty odrywają fundamentalną rolę w języ- ku VBA. Ten podrozdział jest wprowadzeniem do programowacnia obiektowego. Obiekty VBA są omówione szczegółowo w rozdziale 4. 18 ABC Visual Basic dla aplikacji w Office XP PL Obiekty języka VBA Obiekty są elementami tworzącymi aplikację macierzystą (aplikacją macierzystą jest na przykład Word, Excel i PowerPoint) oraz dokument utworzony za pomocą tej apli- kacji (na przykład dokument programu Word, skoroszyt programu Excel lub prezenta- cja programu PowerPoint). W programie Excel obiektem jest nie tylko skoroszyt, ale i arkusz, komórka arkusza, zakres komórek oraz wykrecs. Obiekty mogą być również bardziej abstrakcyjne. Obiekt WidokNiestandardowy na przykład może reprezentować niestandardowy widok skoroszytu programu Excel. Wi- dok niestandardowy nie jest czymś, co można zobaczyć na ekranie, ale zbiorem usta- wień definiujących wygląd skoroszytu oraz jego opcje drukowania. We wszystkich apli- kacjach, do których dołączono VBA, obiekt Collection reprezentuje kolekcję obiektów traktowanych jako jedna całość. Modele obiektowe Każdy obiekt należy do hierarchii obiektów zdefiniowanej przez aplikację macierzy- stą i przez VBA. Obiekt umieszczony na samym szczycie hierarchii posiada właści- wości, metody i zdarzenia. Jest on również kontenerem innych obiektów (tych, które znajdują się niżej w hierarchii). Obiekty umieszczone poniżej obiektu bazowego rów- nież posiadają właściwości, metody i zdarzenia. Model obiektowy aplikacji, do której dołączono VBA, definiuje hierarchię obiektów, ich właściwości, metody i zdarzenia oraz relacje między obiektami. VBA posiada własny model obiektowy. Zatem, pracując na przykład w aplikacji Word, możesz korzystać z modelu obiektowego Word oraz modelu obiektowego VBA. Część modelu obiektowego aplikacji Word przedstawia rysuneck 1.6. Obiektem bazowym modelu obiektowego aplikacji Word jest obiekt Application. Poniżej znajdują się m.in. obiekty Documents, Paragraphs, Characters, Bookmarks oraz Dialogs. Technologia ActiveX a VBA Termin ActiveX, wprowadzony przez Microsoft, służy do określania zbioru technolo- gii stosowanych w produkcji oraz automatyzacji aplikacji. Jest to standard stosowany przez twórców komponentów ActiveX (formantów) oraz programistów wykorzystu- jących te komponenty do tworzenia aplikacji. Formanty ActiveX Formanty ActiveX to elementy okien dialogowych i pasków narzędzi, za pomocą których użytkownik kieruje aplikacją. Przykładem formantu jest przycisk polecenia, który użyt- kownik może kliknąć, grupa przycisków opcji, z której użytkownik może wybrać jedną opcję, oraz pole tekstowe, gdzie użytkownik może wpcisać i edytować tekst. Rozdział 1. ♦ Visual Basic dla Aplikacji 19 Rysunek 1.6. Część modelu obiektowego aplikacji Word Warto zwrócić uwagę, że można korzystać nie tylko z formantów dostarczanych z VBA, ale również z formantów sprzedawanych przez niezależnych producentów. Formant jest komponentem, który można dodać do formularza i dostosować do potrzeb konkretne- go projektu. Formanty ActiveX można zastosować w aplikacjach pisanych za pomocą języka Visual Basic, C++, Java i oczywiście VBA. Jeżeli żaden z formantów dostarcza- nych z VBA nie odpowiada potrzebom danego projektu, możesz nabyć odpowiedni for- mant od jednej z wielu firm specjalizujących się w produkcji formantów ActiveX. For- mant ActiveX można również utworzyć za pomocą pakietu programistycznego Visual Basic 6.0 (wersja Professional lub Enterprise). Rysunek 1.7 przedstawia okno dialogowe z formantami ActiveX. Niektóre formanty są widoczne podczas działania aplikacji, inne — nie. Mogą one wy- konywać wyspecjalizowanie zadania, na przykład dokonywać obliczeń finansowych. Formanty ActiveX można również wykorzystać do tworzenia stron internetowych wyświetlanych w przeglądarkach internetowych. Więcej informacji na ten temat za- wiera rozdział 6. 20 ABC Visual Basic dla aplikacji w Office XP PL Rysunek 1.7. Okno dialogowe z formantami ActiveX Posiadacze przeglądarek internetowych obsługujących standard ActiveX mogą oglą- dać i używać witryny internetowe zawierające formanty ActiveX. W ten sposób tech- nologia ActiveX staje się dostępna dla użytkowników korzystających z różnych sys- temów operacyjnych. Automatyzacja ActiveX Pisząc program w języku VBA, programista może korzystać nie tylko z obiektów apli- kacji macierzystej, ale także z każdej aplikacji lub komponentu stosujących standard Component Object Model (COM). COM określa, w jaki sposób należy definiować i udo- stępniać obiekty aplikacji, aby mogły z nich korzystać inne aplikacje. Termin automaty- zacja oznacza możliwość aktywowania i kontrolowania obiektów aplikacji COM. Automatyzacja oraz standard COM otwierają olbrzymie możliwości przed programista- mi tworzącymi aplikacje w języku VBA. Można na przykład cstworzyć aplikację przetwa- rzającą informacje pochodzące z dokumentów aplikacji Word, skoroszytów aplikacji Excel, baz danych aplikacji Access i Outlook, prezentacji aplikacji PowerPoint, diagra- mów aplikacji Visio, rysunków technicznych aplikacji AutoCAD itd. Informacje po przetworzeniu można wyświetlić w oknach dialogowych. Technologia DCOM (Distri- buted Component Object Model) pozwala rozpowszechniać komponenty ActiveX w sie- ciach internetowych lub intranetowych. Serwery i kontrolery automatyzacji Serwer automatyzacji to aplikacja, która udostępnia obiekty innym aplikacjom. Kontro- ler automatyzacji to aplikacja, która kontroluje obiekty innej aplikacji. Każda aplika- cja pakietu Office XP może być zarówno serwerem, jack i kontrolerem automatyzacji. Więcej informacji o VBA Aby dowiedzieć się więcej o programowaniu w języku Visual Basic, możesz nabyć jedną z książek poświęconych tej tematyce wydanych prczez Wydawnictwo Helion. Rozdział 1. ♦ Visual Basic dla Aplikacji 21 Informacje na temat VBA można również znaleźć w Internecie. Oto adresy dwóch stron producenta technologii VBA:  msdn.microsoft.com/vba,  msdn.microsoft.com/vbasic. Informacji warto też szukać na stronach internetowycch firmy Microsoft poświęconych konkretnym aplikacjom pakietu Office oraz na stronacch Microsoft Knowledge Base. Oto kilka innych stron internetowych wartych uwagi:  http://download.com.com/2001-2206-0.html?tag=dir  www.geocities.com,  www.cgvb.com,  www.mvps.org/vbnet,  www.vbip.com,  http://searchvb.techtarget.com,  www.codehound.com/vb. Oto lista wybranych czasopism poświęconych językowic VBA:  Microsoft Developer’s Network (MSDN) http://msdn.microsoft.com,  Elements K Journals www.elementkjournals.com,  Microsoft Office Visual Basic for Applications Developcer Informant Communications Group, Inc. 10519 E. Stockton Blvd. Suite 100 Elk Grove, CA 95624-9703 www.informant.com,  Visual Basic Programmer’s Journal, Fawcette Technical Publications, Inc 913 Emerson Ave. Palo Alto CA 94301 www.windx.com.
Pobierz darmowy fragment (pdf)

Gdzie kupić całą publikację:

ABC Visual Basica dla aplikacji w Office XP PL
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ą: