Automatyzacja pracy z użyciem makr - ebook
Automatyzacja pracy z użyciem makr - ebook
Książka wprowadzi Czytelnika kompleksowo w tworzenie makr w Excelu. Przedstawi, jak korzystać z edytora Visual Basic, jak przygotować własne makro i je uruchomić oraz jak wyświetlać okna z własnymi informacjami. Opisujemy również bardziej zaawansowane zagadnienia, m.in. takie jak tworzenie pętli czy instrukcji warunkowych. Publikacja zawiera również przydatne opisy, jak przygotować przykładowe makra automatyzujące często wykonywane operacje. Zawarte w książce makra można wykorzystać w Excelu 2007, 2010 oraz 2013. Powinny również działać we wcześniejszych wersjach programu, choć mogą wymagać drobnych modyfikacji.
Spis treści
1. Informacje wstępne
1.1. Przygotowanie własnej procedury
1.2. Instrukcja MsgBox – wyświetlanie informacji w oknie
1.3. Sposoby uruchamiania makra
2. Zmienne i operacje arytmetyczne
2.1. Wynik dodawania w oknie dialogowym
2.2. Kolejność wykonywania operacji arytmetycznych
2.3. Zmienne w języku VBA
2.4. Działania arytmetyczne za pomocą zmiennych
2.5. Deklarowanie zmiennych
3. Typy zmiennych i operacje na tekstach
3.1. Określanie typu zmiennej w deklaracji
3.2. Łączenie ze sobą dwóch tekstów
3.3. Odczytywanie fragmentu tekstu
4. Operacje na tekście i instrukcja warunkowa If
4.1. Pobranie informacji od użytkownika za pomocą okna dialogowego
4.2. Wyszukiwanie określonego tekstu w innym tekście
4.3. Instrukcja if – tworzenie bloków warunkowych
4.4. Przydatne funkcje tekstowe
5. Operacje na datach i wartościach czasu, rozszerzona instrukcja MsgBox
5.1. Przechowywanie dat i wartości czasu
5.2. Własny format daty
5.3. Przydatne funkcje operujące na datach
5.4. Rozszerzone możliwości instrukcji MsgBox
6. Obiekty, metody i właściwości
6.1. Właściwości obiektu
6.2. Metody obiektu
6.3. Operacje na całym skoroszycie
6.4. Kolekcja – operowanie na większej liczbie obiektów
7. Obiekt Worksheet, pętla po elementach kolekcji i instrukcja Select Case
7.1. Operacje na arkuszach
7.2. Zmienne obiektowe
7.3. Operacje na kolekcji obiektów
7.4. Instrukcje warunkowe tworzone za pomocą instrukcji Select Case
8. Obiekt Range, instrukcja Withi formatowanie komórek
8.1. Operacje na komórkach arkusza
8.2. Formatowanie komórek
8.3. Upraszczanie kodu – zastosowanie instrukcji With
9. Pętle i inne sposoby odwoływania się do komórek
9.1. Przykłady zastosowania właściwości Cells
9.2. Operacje na kolumnach i wierszach
9.3. Pętla skończonaFor… To)
9.4. Pętle nieskończone
10. Zaawansowane możliwości obiektu Range
10.1. Obiekty globalne typu Range
10.2. Przeglądarka obiektów
10.3. Komentarze – umieszczanie w kodzie informacji dla użytkownika
11. Procedury zdarzeń
11.1. Uruchamianie makra przy otwieraniu skoroszytu
11.2. Uruchamianie makr przy zamykaniu skoroszytu
11.3. Uruchamianie kodu przy zmianie wartości w komórkach
12. Formularze UserForm - podstawowe kontrolki
12.1. Tworzenie formularzy do wprowadzania danych
Kategoria: | Poradniki |
Zabezpieczenie: |
Watermark
|
ISBN: | 978-83-269-3772-9 |
Rozmiar pliku: | 3,2 MB |
FRAGMENT KSIĄŻKI
Praca z Excelem potrafi być czasochłonna. Tymczasem nasz kolega z pracy, siedzący przy biurku obok, potrafi przygotować raport w ciągu 5 minut, podczas gdy nam to samo zadanie zajmuje ponad godzinę. Jak to możliwe? Odpowiedź jest prosta: napisał własne makro, które wykonało za niego całą pracę lub znaczną jej część.
Makra to kod napisany w języku Visual Basic for Application (VBA) wykonujący polecenia aplikacji, do której jest dołączony. Wiele z tych poleceń jest niedostępnych z poziomu okna Excela. Makra pozwalają na automatyzację pracy z dokumentami Excela i nie tylko. Mogą wykonywać tysiące poleceń za jednym razem i dlatego są niejako rozszerzeniem możliwości pracy z aplikacją, do której został dołączony edytor Visual Basic.
Jak w przypadku każdego kursu, w pierwszej kolejności należy poznać niezbędne podstawy, które pozwolą później swobodnie budować własne narzędzia w języku Visual Basic. Pierwsze rozdziały wyjaśniają więc podstawowe pojęcia, opisują najprostsze makra i podpowiadają, jak je uruchamiać. W kolejnych rozdziałach znajdziemy coraz bardziej zaawansowane zagadnienia, jak tworzenie pętli czy instrukcji warunkowych. Są w nich również bardzo złożone przykłady makr, które mogą przydać się w pracy. Zobaczymy, np. jak utworzyć formularz pomocny przy wypełnianiu zestawienia z fakturami. Zawarte w książce makra można wykorzystać w Excelu 2007, 2010 oraz 2013. Powinny również działać we wcześniejszych wersjach programu, choć mogą wymagać drobnych modyfikacji.1. Informacje wstępne
Aby rozpocząć pracę z makrami, należy uruchomić edytor Visual Basic. We wszystkich programach pakietu Office można to zrobić, naciskając jednocześnie na klawiaturze lewy +. Można również otworzyć kartę Deweloper i kliknąć Visual Basic. Jeśli nie widać karty Deweloper, przejdźmy do Plik/Opcje/Dostosowywanie wstążki. Na liście Karty główne zaznaczmy Deweloper.
U góry znajduje się menu poleceń i pasek narzędzi Standard. Po lewej stronie u góry znajduje się okno przeglądarki projektu (Project VBAProject). W Excelu znajduje się tam jeden projekt o nazwie dokładnie takiej samej jak nazwa skoroszytu. Znajdują się w nim moduły wszystkich arkuszy zawartych w skoroszycie i dodatkowo moduł noszący nazwę Ten_skoroszyt. W niektórych komputerach okno przeglądarki projektu może zawierać też inne moduły czy projekty, w zależności od tego, czy korzystano już z makr lub instalowano dodatki.
Jeśli w edytorze nie widać przeglądarki projektu i okna właściwości (jak na rysunku 1.1), wciśnijmy najpierw kombinację klawiszy +, a następnie .
Rysunek 1.1. Okno edytora Visual Basic po otwarciu w Excelu
W programie Word (rysunek 1.2) w oknie przeglądarki projektów znajdują się dwa projekty: jeden o nazwie Normal i drugi o nazwie dokładnie takiej samej jak otwarty dokument. Ten drugi projekt zawiera moduł ThisDocument. W innych programach mających edytor Visual Basic jest jeszcze inaczej. O poszczególnych modułach w projektach dowiemy się więcej w kolejnych rozdziałach.
Rysunek 1.2. Okno edytora Visual Basic po otwarciu w Wordzie
Okno po lewej stronie poniżej przeglądarki projektu to okno właściwości. Więcej na temat właściwości dowiemy się w kolejnych rozdziałach. W tym pokażemy, jak utworzyć pierwsze, własne makro.
1.1. Przygotowanie własnej procedury
Makra z reguły są przechowywane w modułach standardowych. Aby wstawić taki moduł do projektu, należy w edytorze Visual Basic z menu Insert wybrać polecenie Module lub skorzystać z paska narzędzi Standard, tak jak to pokazano na rysunku 1.3.
Po wybraniu tego polecenia w oknie edytora Visual Basic pojawi się białe okno, a w oknie przeglądarki projektu zaznaczony będzie moduł standardowy o nazwie Module1 (rysunek 1.4). Białe okno na środku to okno kodu, do którego należy wpisywać polecenia języka Visual Basic.
Rysunek 1.3. Wstawianie modułu standardowego
Makra zawarte są najczęściej wewnątrz procedury, która stanowi blok instrukcji języka Visual Basic. Każda procedura ma nazwę. Nazwa nie może zawierać spacji ani innych niedozwolonych znaków. Jeśli makro będzie wykorzystywane w aplikacjach obcojęzycznych, to nazwa nie powinna również zawierać polskich znaków.
Rysunek 1.4. Okno edytora Visual Basic po wstawieniu modułu standardowego
Jeśli chcemy, aby nazwa zawierała kilka wyrazów, to stosujmy znak podkreślenia, np. Moje_makro, lub każdy wyraz zaczynajmy od wielkiej litery, np. MojeMakro.
Aby stworzyć procedurę:
1. Wpiszmy słowo kluczowe Sub.
2. Naciśnijmy spację.
3. Wpiszmy nazwę procedury, np. MojeMakro, i naciśnijmy klawisz . W oknie kodu pojawi się zapis jak na rysunku 1.5.
Rysunek 1.5. Stworzenie procedury o nazwie MojeMakro
Edytor od razu skoryguje nasz zapis: doda dwa nawiasy na końcu pierwszej linii kodu, a także w pustym wierszu wpisze: End Sub. Zauważmy, że słowa Sub i End Sub są zaznaczone na niebiesko. To są słowa kluczowe i nie wolno używać ich w innym kontekście niż tworzenie procedury. Każda procedura zaczyna się od słowa Sub i kończy instrukcją End Sub.
Pomiędzy tymi dwiema liniami znajdują się instrukcje, które będą wykonywane przez procedurę. Oczywiście w tej chwili nie ma tam żadnej, ale dalej pokażemy, jak dodać instrukcję, która spowoduje wyświetlenie informacji na ekranie w postaci okna.
1.2. Instrukcja MsgBox – wyświetlanie informacji w oknie
Nadszedł czas, aby przygotować pierwsze makro. Będzie to procedura wyświetlająca w oknie dialogowym dowolny tekst.
W tym celu:
1. Kliknijmy w miejscu pustej linii pomiędzy linią oznaczającą początek procedury a linią oznaczającą koniec procedury.
2. Naciśnijmy klawisz , aby kod procedury był bardziej czytelny.
Wprowadzając kod, najlepiej jest używać znaku tabulacji do wyróżniania poszczególnych bloków instrukcji. We wszystkich lekcjach będziemy używać tej konwencji. Można określić, ile spacji będzie zawierał znak tabulacji. Aby to zrobić, użyjmy polecenia Tools/Options i w zakładce Editor wpiszmy liczbę spacji w polu Tab Width. We wszystkich lekcjach będziemy używali szerokości znaku Tab odpowiadającej dwóm spacjom, dlatego najlepiej zmieńmy tę opcję zgodnie z rysunkiem 1.6.
Rysunek 1.6. Zmiana liczby spacji odpowiadającej znakowi tabulacji
3. Wpiszmy słowo MsgBox, a po nim spację.
4. Wpiszmy znak cudzysłowu.
5. Wpiszmy tekst, który chcemy wyświetlić na ekranie, np. Oto moje pierwsze makro.
6. Wpiszmy powtórnie znak cudzysłowu.
7. Naciśnijmy klawisz , ponieważ każda instrukcja kończy się znakiem końca linii.
Rysunek 1.7. Nasze pierwsze makro
1.3. Sposoby uruchamiania makra
Napisaliśmy właśnie pierwsze makro i chcemy je uruchomić. W tej części powiemy o dwóch sposobach uruchamiania procedury. Pierwszy to uruchamianie z poziomu edytora Visual Basic.
W tym celu:
1. Kliknijmy w środku napisanej procedury.
2. Z menu Run wybierzmy polecenie Run Sub/User Form lub wybierzmy to polecenie z paska narzędzi Standard tak, jak pokazano na rysunku 1.8. Można również użyć klawisza , aby uruchomić procedurę.
Rysunek 1.8. Uruchamianie procedury z poziomu edytora Visual Basic
Po uruchomieniu tej procedury ukaże się informacja z tekstem wpisanym po instrukcji MsgBox pomiędzy znakami cudzysłowu. Zostanie wyświetlona w postaci okna widocznego na rysunku 1.9. Kliknijmy OK, aby zamknąć okno.
Rysunek 1.9. Okno z informacją wyświetlone za pomocą instrukcji MsgBox
Czasami potrzeba uruchomić makro bez otwierania edytora Visual Basic. Aby to zrobić z poziomu Excela:
1. Wybierzmy Deweloper/Makr lub Widok/Makra.
2. Otworzy się okno dialogowe Makro. Na liście makr po lewej stronie zaznaczmy to, które chcemy uruchomić.
3. Kliknijmy przycisk Uruchom. Gotowe.
Rysunek 1.10. Okno uruchamiania makr w programie Excel
Darmowy fragment