Cyfroteka.pl

klikaj i czytaj online

Cyfro
Czytomierz
00285 004553 14271865 na godz. na dobę w sumie
Excel. Tworzenie zaawansowanych aplikacji - książka
Excel. Tworzenie zaawansowanych aplikacji - książka
Autor: Liczba stron: 360
Wydawca: Helion Język publikacji: polski
ISBN: 978-83-246-3423-1 Data wydania:
Lektor:
Kategoria: ebooki >> komputery i informatyka >> aplikacje biurowe >> excel
Porównaj ceny (książka, ebook, audiobook).

Zmierz się z Excelem!

Każdy, kto kiedykolwiek mierzył się z Excelem, wie, że program ten może być użyteczny na tysiąc różnych sposobów. Jednak tylko zaawansowani użytkownicy, na co dzień wykorzystujący go do swoich celów, podejrzewają, że da się w nim zautomatyzować oraz wykonać niemal dowolnie skomplikowane operacje i obliczenia, by ułatwić sobie pracę. Trzeba tylko wiedzieć, jak to zrobić. Samodzielne dochodzenie do takich rozwiązań bywa żmudne i kłopotliwe, a ponadto nie każdy ma na to czas. Na szczęście istnieje prostsze wyjście - można kupić tę książkę i skorzystać z podpowiedzi jej autora. Znajomość procedur obsługi języka VBA może w znacznym stopniu uprościć tworzenie arkuszy kalkulacyjnych i korzystanie z nich. Za stosowaniem takich rozwiązań przemawia łatwość ich stosowania.

Sergiusz Flanczewski proponuje swoim czytelnikom działające przykłady, gotowe do użycia bez żadnych dodatkowych starań, choć przygotowane w taki sposób, by bardziej ambitny użytkownik Excela mógł je bez większych kłopotów uzupełnić o własne pomysły. W książce znajdziesz także opisy procedur konstruowania poszczególnych elementów arkusza kalkulacyjnego, co pozwoli Ci zrozumieć zasady ich działania i maksymalnie wykorzystać ich możliwości. Zaprzęgnij Excel do pracy i rozwiązuj z nim najbardziej uciążliwe biurowe problemy!

Podnieś swój komfort pracy z Excelem - od ręki i na zawsze!


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

Darmowy fragment publikacji:

Wszelkie prawa zastrzeżone. Nieautoryzowane rozpowszechnianie całości lub fragmentu niniejszej publikacji w jakiejkolwiek postaci jest zabronione. Wykonywanie kopii metodą kserograficzną, fotograficzną, a także kopiowanie książki na nośniku filmowym, magnetycznym lub innym powoduje naruszenie praw autorskich niniejszej publikacji. Wszystkie znaki występujące w tekście są zastrzeżonymi znakami firmowymi bądź towarowymi ich właścicieli. Autor oraz Wydawnictwo HELION dołożyli wszelkich starań, by zawarte w tej książce informacje były kompletne i rzetelne. Nie biorą jednak żadnej odpowiedzialności ani za ich wykorzystanie, ani za związane z tym ewentualne naruszenie praw patentowych lub autorskich. Autor oraz Wydawnictwo HELION nie ponoszą również żadnej odpowiedzialności za ewentualne szkody wynikłe z wykorzystania informacji zawartych w książce. Redaktor prowadzący: Ewelina Burska Projekt okładki: Studio Gravite/Olsztyn Obarek, Pokoński, Pazdrijowski, Zaprucki Wydawnictwo HELION ul. Kościuszki 1c, 44-100 GLIWICE tel. 32 231 22 19, 32 230 98 63 e-mail: helion@helion.pl WWW: http://helion.pl (księgarnia internetowa, katalog książek) Drogi Czytelniku! Jeżeli chcesz ocenić tę książkę, zajrzyj pod adres http://helion.pl/user/opinie?extzaa Możesz tam wpisać swoje uwagi, spostrzeżenia, recenzję. ISBN: 978-83-246-3423-1 Copyright © Helion 2012 Printed in Poland. • Kup książkę • Poleć książkę • Oceń książkę • Księgarnia internetowa • Lubię to! » Nasza społeczność Spis treĈci Wstöp ............................................................................................ 13 Rozdziaä 1. Narzödzia automatyzacji prac w Excelu ........................................... 15 Ustawienia Excela do pracy z wáasnymi aplikacjami uĪytkowymi ................................ 16 Karta Deweloper — Excel 2007 ............................................................................... 16 Karta Deweloper — Excel 2010 ............................................................................... 17 Paski narzĊdzi — Excel 2000/XP/2003 .................................................................... 18 BezpieczeĔstwo makr — Excel 2007/2010 .............................................................. 19 BezpieczeĔstwo makr — Excel 2000/XP/2003 ........................................................ 20 Formanty ........................................................................................................................ 21 Formanty formularza Excel 2007/2010 — umieszczanie formantu w arkuszu ........ 22 Formanty dostĊpne z paska narzĊdzi Formularze — Excel 2000/XP/2003 ................. 25 Formanty ActiveX .......................................................................................................... 27 Formanty ActiveX w wersji Excel 2007/2010 ......................................................... 27 Formanty ActiveX w wersji Excel 2000/XP/2003 ................................................... 33 Formularze uĪytkownika (UserForms) ........................................................................... 34 Dodawanie formantów do formularza ...................................................................... 35 WáaĞciwoĞci formularzy ........................................................................................... 36 WyĞwietlanie (aktywacja) formularza ...................................................................... 37 Edytor VBA .................................................................................................................... 37 Obsáuga edytora VBA .............................................................................................. 38 Rozdziaä 2. Makropolecenia ............................................................................. 49 Obsáuga przykáadowych zadaĔ ....................................................................................... 50 Ogólna procedura rejestrowania makra .......................................................................... 50 Przykáady rejestracji makra ...................................................................................... 52 Tworzenie makra za pomocą jĊzyka Microsoft Visual Basic ......................................... 60 Rejestracja makra ze zmianą kodu ........................................................................... 62 Zarządzanie makrami ..................................................................................................... 66 Przypisywanie makra do obiektu, grafiki lub formantu ............................................ 66 Uruchamianie lub usuwanie makra z okna dialogowego Makro .............................. 67 Makro typu Auto_Open ............................................................................................ 67 Rozdziaä 3. Formanty oraz formularze standardowe ........................................... 71 Formanty Pole wyboru i Przycisk opcji .......................................................................... 72 Zadanie 1. ................................................................................................................. 72 Zadanie 2. ................................................................................................................. 75 Formanty typu Pole listy i Pole kombi ........................................................................... 76 Zadanie 3. ................................................................................................................. 76 Zadanie 4. ................................................................................................................. 79 6 Excel. Tworzenie zaawansowanych aplikacji Formanty typu Pasek przewijania i Przycisk pokrĊtáa .................................................... 81 Zadanie 5. ................................................................................................................. 81 Zadanie 6. ................................................................................................................. 83 Formularze standardowe ................................................................................................. 84 Formularze standardowe — wyszukiwanie rekordów wedáug zadanych kryteriów ....... 88 Zadanie 7. ................................................................................................................. 91 Rozdziaä 4. Tabela specyfikacji towarów w dokumencie sprzedaĔy ..................... 95 Zadanie projektowe ........................................................................................................ 95 Obsáuga skoroszytu ........................................................................................................ 97 Arkusz Tabela1 ............................................................................................................... 98 Opis budowy i obsáugi procedur dla wariantu pierwszego ............................................. 99 Kod programu obsáugi zdarzenia klikniĊcia przycisku Modyfikuj ........................... 99 Kod programu obsáugi zdarzenia klikniĊcia przycisku Przywróü ........................... 100 Arkusz Tabela2 ............................................................................................................. 100 Opis budowy i obsáugi procedur dla wariantu drugiego ............................................... 101 Kod programu obsáugi zdarzenia klikniĊcia przycisku Modyfikuj ......................... 101 Kod programu obsáugi zdarzenia klikniĊcia przycisku Przywróü ........................... 102 Rozdziaä 5. Nazwy arkuszy w skoroszycie ....................................................... 105 Zadanie projektowe ...................................................................................................... 105 Obsáuga skoroszytu ...................................................................................................... 106 Opis budowy i obsáugi procedury ................................................................................. 106 Kod programu obsáugi zdarzenia klikniĊcia przycisku Uruchom ........................... 107 Rozdziaä 6. Tworzenie arkuszy w skoroszycie .................................................. 109 Zadanie projektowe ...................................................................................................... 109 Obsáuga skoroszytu ...................................................................................................... 110 Opis budowy i obsáugi procedury ................................................................................. 111 Kod programu obsáugi zdarzenia klikniĊcia przycisku Uruchom ........................... 111 Rozdziaä 7. Usuwanie arkuszy ze skoroszytu ................................................... 113 Zadanie projektowe ...................................................................................................... 113 Obsáuga skoroszytu ...................................................................................................... 115 Opis budowy i obsáugi procedury w wersji pierwszej .................................................. 116 Kod programu obsáugi zdarzenia klikniĊcia przycisku Uruchom ................................... 116 Opis budowy i obsáugi procedury w wersji drugiej ...................................................... 118 Kod programu obsáugi zdarzenia klikniĊcia przycisku PokaĪ listĊ ................................. 119 Kod programu obsáugi zdarzenia klikniĊcia przycisku Ukryj listĊ ................................. 120 Kod programu obsáugi zdarzenia klikniĊcia przycisku UsuĔ zaznaczone arkusze ......... 120 Rozdziaä 8. Zaznaczenie pustych lub wypeänionych komórek albo wierszy ........ 123 Zadanie projektowe ...................................................................................................... 123 Obsáuga skoroszytu ...................................................................................................... 126 Opis budowy i obsáugi procedury ................................................................................. 126 Kod programu obsáugi zdarzenia zmiany pozycji Pole kombi ............................... 127 Kod programu obsáugi zdarzeĔ formantu Pole wyboru .......................................... 128 Kod programu procedury zaznaczenia wierszy ...................................................... 128 Kod programu procedury zaznaczenia komórek .................................................... 130 Rozdziaä 9. Sprawdzanie warunku dla zakresu komórek ................................... 133 Zadanie projektowe ...................................................................................................... 133 Obsáuga skoroszytu ...................................................................................................... 135 Opis budowy i obsáugi procedury ................................................................................. 136 Kod programu obsáugi zdarzenia klikniĊcia przycisku Uruchom ........................... 136 Spis treĈci 7 Rozdziaä 10. Przekazywanie danych pomiödzy procedurami ............................... 139 Zadanie projektowe ...................................................................................................... 139 Obsáuga skoroszytu ...................................................................................................... 141 Opis budowy i obsáugi procedury ................................................................................. 142 Kod programu obsáugi zdarzenia klikniĊcia przycisku Uruchom ........................... 142 Kod programu procedury interpretującej i wyĞwietlającej wyniki obliczeĔ — Makro2 ................................................................................................................. 143 Rozdziaä 11. Okno pobierania zaznaczonego obszaru komórek ........................... 145 Zadanie projektowe ...................................................................................................... 145 Obsáuga skoroszytu ...................................................................................................... 147 Opis budowy i obsáugi procedury ................................................................................. 147 Kod programu obsáugi zdarzenia klikniĊcia przycisku WyĞwietl okno zaznaczenia ................................................................................. 148 Budowa formularza uĪytkownika — Okno zaznaczenia ........................................ 148 Kod programu obsáugi zdarzenia klikniĊcia przycisku Pobrania zaznaczenia ........ 150 Rozdziaä 12. Procedury z wywoäaniem wäasnej funkcji ....................................... 151 Zadanie projektowe ...................................................................................................... 151 Obsáuga skoroszytu ...................................................................................................... 154 Opis budowy i obsáugi procedury w wersji pierwszej .................................................. 155 Kod programu obsáugi zdarzenia klikniĊcia przycisku Uruchom ........................... 155 Opis budowy i obsáugi procedury w wersji drugiej ...................................................... 156 Kod programu obsáugi zdarzenia klikniĊcia przycisku Uruchom ........................... 156 Opis budowy i obsáugi procedur zawartych w Module1 ............................................... 157 Kod programu procedury wyĞwietlającej wynik dziaáania funkcji uĪytkownika ... 157 Kod programu funkcji uĪytkownika ....................................................................... 158 Rozdziaä 13. Sumowanie oraz zliczanie co n-tej komórki — procedury ............... 159 Zadanie projektowe ...................................................................................................... 159 Obsáuga skoroszytu ...................................................................................................... 162 Opis budowy i obsáugi pierwszej procedury ................................................................. 162 Kod programu obsáugi zdarzenia klikniĊcia przycisku Uruchom procedurĊ .......... 163 Opis budowy i obsáugi drugiej procedury ..................................................................... 164 Kod programu obsáugi zdarzenia klikniĊcia przycisku Uruchom procedurĊ .......... 164 Opis budowy i obsáugi trzeciej procedury .................................................................... 165 Kod programu obsáugi zdarzenia klikniĊcia przycisku Uruchom procedurĊ .......... 166 Uwagi koĔcowe do opisanych procedur ....................................................................... 167 Rozdziaä 14. Kopiowanie wierszy ...................................................................... 169 Zadanie projektowe ...................................................................................................... 169 Obsáuga skoroszytu ...................................................................................................... 170 Opis budowy i obsáugi procedury ................................................................................. 171 Aktywacja okna Kopiowanie wierszy — kod programu obsáugi zdarzenia klikniĊcia przycisku Uruchom ............................................................................. 171 Budowa formularza uĪytkownika — okno dialogowe Kopiowanie wierszy .......... 172 Kod programu obsáugi zdarzenia klikniĊcia przycisku Pobierz zaznaczone wiersze .... 174 Kod programu obsáugi zdarzenia klikniĊcia przycisku Wybierz arkusz przeznaczenia ............................................................................. 174 Kod programu obsáugi zdarzenia klikniĊcia przycisku Wykonaj ........................... 175 Kod programu obsáugi zdarzenia zmiany w formancie SpinButton ....................... 176 Uwagi koĔcowe do opisanych procedur ....................................................................... 176 8 Excel. Tworzenie zaawansowanych aplikacji Rozdziaä 15. Wykaz Ĉwiñt — formularz uĔytkownika ......................................... 179 Zadanie projektowe ...................................................................................................... 179 Obsáuga skoroszytu ...................................................................................................... 180 Arkusz Specyfikacja ..................................................................................................... 181 Opis budowy i obsáugi procedury ................................................................................. 182 Aktywacja formularza — kod programu obsáugi zdarzenia klikniĊcia przycisku Aktywuj wykaz Ğwiąt .......................................................... 182 Budowa formularza uĪytkownika — Wykaz dni Ğwiątecznych ............................. 183 Kod programu obsáugi zdarzenia klikniĊcia formantu Przycisk pokrĊtáa ............... 184 Kod programu obsáugi zdarzenia klikniĊcia Listy wyboru ..................................... 185 Kod programu obsáugi zdarzenia aktywacji formularza uĪytkownika .................... 186 Kody procedur zawartych w Module1 .......................................................................... 186 Kod procedury Kolorek .......................................................................................... 187 Kod funkcji Wielkanoc .......................................................................................... 187 Rozdziaä 16. Losowanie bez powtórzeþ — symulator LOTTO .............................. 189 Zadanie projektowe ...................................................................................................... 189 Obsáuga skoroszytu ...................................................................................................... 191 Arkusz Losowanie — RND .......................................................................................... 191 Opis budowy i obsáugi procedury ................................................................................. 192 Aktywacja procedury losowania — kod programu obsáugi zdarzenia klikniĊcia przycisku Losowanie .................. 192 Arkusz Losowanie — kolekcja ..................................................................................... 194 Opis budowy i obsáugi procedury ................................................................................. 195 Aktywacja procedury losowania — kod programu obsáugi zdarzenia klikniĊcia przycisku Losowanie .................. 195 Arkusz Losowanie z wynikiem .................................................................................... 196 Opis budowy i obsáugi procedury ................................................................................. 197 Aktywacja procedury losowania — kod programu obsáugi zdarzenia klikniĊcia przycisku Losowanie .................. 197 Aktywacja procedury losowania — kod programu obsáugi zdarzenia klikniĊcia Wyzeruj wyniki .......................... 199 Kody procedur zawartych w Module1 .......................................................................... 199 Kod procedury Wyniki ........................................................................................... 200 Kod procedury Zeruj .............................................................................................. 201 Rozdziaä 17. Sumowanie komórek wedäug koloru wypeänienia komórki .............. 203 Obsáuga skoroszytu ...................................................................................................... 205 Opis budowy i obsáugi procedury ................................................................................. 206 Kod programu obsáugi zdarzenia klikniĊcia przycisku Uruchom procedurĊ .......... 206 Kod funkcji Nr_kolor() .......................................................................................... 208 Rozdziaä 18. Pasek ikon .................................................................................. 209 Zadanie projektowe ...................................................................................................... 209 Obsáuga skoroszytu ...................................................................................................... 211 Opis budowy i obsáugi procedur — Excel 2007/2010 .................................................. 212 Kod programu obsáugi zdarzenia klikniĊcia przycisku PokaĪ ikony na pasku ....... 213 Kod programu obsáugi zdarzenia klikniĊcia przycisku UsuĔ pasek ikon ............... 214 Kod programu obsáugi zdarzenia klikniĊcia przycisku PokaĪ nazwy pasków ........ 215 Kody procedur zawartych w Module1 .......................................................................... 216 Kod procedury Akcja ............................................................................................. 216 Opis budowy i obsáugi procedury — Excel 2000/XP/2003 .......................................... 217 Kod programu obsáugi zdarzenia klikniĊcia przycisku PokaĪ ikony na pasku ....... 217 Spis treĈci 9 Rozdziaä 19. Pasek narzödzi uĔytkownika ......................................................... 219 Zadanie projektowe ...................................................................................................... 219 Obsáuga skoroszytu ...................................................................................................... 223 Opis budowy i obsáugi procedur — Excel 2007/2010 .................................................. 224 Kod programu obsáugi zdarzenia klikniĊcia przycisku PokaĪ pasek ...................... 224 Kod programu obsáugi zdarzenia klikniĊcia przycisku PokaĪ nazwy pasków ........ 226 Kod programu obsáugi zdarzenia klikniĊcia przycisku UsuĔ pasek ....................... 227 Kody procedur zawartych w Module1 .......................................................................... 228 Kod procedury Akcja ............................................................................................. 228 Rozdziaä 20. Menu uĔytkownika ....................................................................... 231 Zadanie projektowe ...................................................................................................... 231 Obsáuga skoroszytu ...................................................................................................... 236 Opis budowy i obsáugi procedur — Excel 2007/2010 .................................................. 237 Kod programu obsáugi zdarzenia klikniĊcia przycisku PokaĪ menu uĪytkownika ........ 237 Kod programu obsáugi zdarzenia klikniĊcia przycisku UsuĔ menu uĪytkownika .. 237 Kody procedur zawartych w Module1 .......................................................................... 238 Kod programu procedury Nowe_menu .................................................................. 238 Kody procedur dla wáaĞciwoĞci OnAction okreĞlonych przycisków menu ............ 240 Kod programu procedury Menu_lista ..................................................................... 241 Kod programu procedury Wizytowka .................................................................... 241 Kod programu procedury Menu_Usun ................................................................... 242 Rozdziaä 21. Menu podröczne uĔytkownika ....................................................... 243 Zadanie projektowe ...................................................................................................... 243 Obsáuga skoroszytu ...................................................................................................... 244 Opis budowy i obsáugi procedur ................................................................................... 245 Kody programu obsáugi zdarzeĔ obiektu Workbook .............................................. 245 Kody procedur zawartych w Module1 .......................................................................... 245 Kod programu procedury UtworzMenuPodreczne ................................................. 246 Kod procedury Akcja ............................................................................................. 247 Kod programu procedury UsunMenuPodreczne .................................................... 248 Rozdziaä 22. Kalendarz .................................................................................... 249 Zadanie projektowe ...................................................................................................... 249 Obsáuga skoroszytu ...................................................................................................... 250 Arkusz MC_T — obszar kalendarza ............................................................................ 251 Arkusz MC_T — specyfikacja dni Ğwiątecznych ......................................................... 252 Arkusz Wielkanoc ........................................................................................................ 254 Opis budowy i obsáugi procedury ................................................................................. 255 Kody programu obsáugi zdarzeĔ obiektu Worksheet .............................................. 255 Kod procedury zawartej w Module1 ............................................................................ 256 Kod procedury Makro_SW .................................................................................... 256 Rozdziaä 23. Komentarze — formularz uĔytkownika .......................................... 259 Zadanie projektowe ...................................................................................................... 259 Obsáuga skoroszytu ...................................................................................................... 261 Opis budowy i obsáugi procedur ................................................................................... 263 Kod programu obsáugi zdarzenia klikniĊcia przycisku Aktywuj okno Komentarze (aktywacja formularza) ............................................ 263 Budowa formularza uĪytkownika — Komentarze ................................................. 263 Kod programu obsáugi zdarzenia klikniĊcia przycisku Wstaw arkusz z komentarzami ............................................................................ 268 Kod programu obsáugi zdarzenia klikniĊcia przycisku Pobierz tekst z aktywnej komórki… .................................................................... 268 10 Excel. Tworzenie zaawansowanych aplikacji Kod programu obsáugi zdarzenia klikniĊcia przycisku Dodaj/utwórz komentarz .. 269 Kod programu procedury Komentarz ..................................................................... 270 Uwagi koĔcowe do opisanych procedur ....................................................................... 271 Rozdziaä 24. Korespondencja seryjna ............................................................... 273 Zadanie projektowe ...................................................................................................... 273 Obsáuga skoroszytu ...................................................................................................... 275 Arkusz Adresat ............................................................................................................. 275 Arkusz Koperta ............................................................................................................. 276 Opis budowy i obsáugi procedury ................................................................................. 277 Kod programu obsáugi zdarzenia klikniĊcia przycisku Pobierz dane ..................... 277 Kod programu obsáugi zdarzenia klikniĊcia przycisku WyczyĞü listĊ .................... 278 Kod programu obsáugi zdarzenia klikniĊcia przycisku Wydruk z potwierdzeniem ................................................................................... 279 Kod programu obsáugi zdarzenia klikniĊcia przycisku Wydruk bez potwierdzenia .................................................................................. 280 Uwagi koĔcowe ............................................................................................................ 281 Rozdziaä 25. Jednoröki bandyta ........................................................................ 283 Zadanie projektowe ...................................................................................................... 283 Arkusz Gra ................................................................................................................... 285 Konstrukcja formularza uĪytkownika ........................................................................... 287 Formularz Tabela wygranych ................................................................................. 287 Opis budowy i obsáugi procedury ................................................................................. 290 Kod programu obsáugi zdarzenia klikniĊcia przycisku Tabela ............................... 291 Kod programu obsáugi zdarzenia klikniĊcia przycisku Start .................................. 291 Kod programu obsáugi zdarzenia klikniĊcia przycisku Stop ................................... 293 Rozdziaä 26. Formatowanie warunkowe ............................................................ 295 Zadanie projektowe ...................................................................................................... 295 Obsáuga skoroszytu ...................................................................................................... 298 Opis budowy i obsáugi procedury arkusza kalkulacyjnego Warunek_1 ....................... 298 Kod programu obsáugi zdarzenia klikniĊcia przycisku Uruchom ........................... 299 Opis budowy i obsáugi procedury arkusza kalkulacyjnego Warunek_2 ....................... 300 Kod programu obsáugi zdarzenia klikniĊcia przycisku Uruchom ........................... 300 Opis budowy i obsáugi procedury arkusza kalkulacyjnego ZáoĪenie warunków .......... 301 Kod programu obsáugi zdarzenia klikniĊcia przycisku Uruchom ........................... 301 Uwagi koĔcowe do opisanych procedur ....................................................................... 303 Formatowanie wiĊcej niĪ jednej kolumny .............................................................. 304 Rozdziaä 27. Funkcje ....................................................................................... 307 Dystrybucja funkcji (procedur) ..................................................................................... 307 Plik typu *.bas .............................................................................................................. 307 Eksportowanie pliku typu *.bas ............................................................................. 307 Importowanie pliku typu *.bas ............................................................................... 309 Plik dodatków Excela ................................................................................................... 310 Instalowanie dodatku w wersji Excel 2000/XP/2003 ............................................. 312 Instalowanie dodatku w wersji Excel 2007 ............................................................ 314 Usuwanie instalacji dodatku ......................................................................................... 316 Zapisywanie pliku jako dodatku Excel ......................................................................... 317 Funkcja obliczająca datĊ Wielkanocy ........................................................................... 318 Uwagi dotyczące stosowania funkcji Wielkanoc() ................................................. 322 Funkcja zamiany wartoĞci liczbowej dodatniej na zapis sáowny .................................. 322 Uwagi dotyczące stosowania funkcji Slox() ........................................................... 331 Uwagi dotyczące stosowania funkcji Slox_M() ..................................................... 332 Spis treĈci 11 Funkcja sumująca (lub zliczająca) co n-tą komórkĊ w kolumnie, a zaczynająca od komórki znajdującej siĊ w okreĞlonym wierszu ............................. 333 Funkcja sumująca (lub zliczająca) co n-tą komórkĊ w kolumnie, a zaczynająca od komórki znajdującej siĊ w pierwszym wierszu .............................. 335 Funkcja sumująca (lub zliczająca) co n-tą komórkĊ w kolumnie, a zaczynająca od komórki znajdującej siĊ w i-tym wierszu ....................................... 338 Uwagi dotyczące stosowania funkcji: Suma0_co, Suma1_co, Suma_od_co .......... 341 Funkcje i instrukcje uĪyte do budowy kodu VBA ........................................................ 342 Funkcja Val ............................................................................................................ 342 Funkcja Mid ........................................................................................................... 342 Funkcja Fix ............................................................................................................. 343 Funkcja Format ...................................................................................................... 343 Funkcja Len ............................................................................................................ 345 Funkcja String ........................................................................................................ 345 Funkcja Array ......................................................................................................... 345 Instrukcja For...Next ............................................................................................... 346 Instrukcja For Each...Next ...................................................................................... 346 Instrukcja If...Then...Else ....................................................................................... 347 Funkcja DateDiff .................................................................................................... 348 ZawartoĈè CD............................................................................... 351 Skorowidz ................................................................................... 353 12 Excel. Tworzenie zaawansowanych aplikacji Rozdziaä 2. Makropolecenia JeĞli w programie Microsoft Excel jakieĞ zadania są czĊsto powtarzane, moĪna zautomatyzowaü ich wykonywanie za pomocą makra. Makro jest serią poleceĔ i funkcji przechowywanych w module jĊzyka Microsoft Visual Basic i moĪe byü uruchomione zawsze wtedy, gdy trzeba wykonaü zadanie, którego makro dotyczy. JeĪeli np. do komórek czĊsto są wprowadzane dáugie ciągi tekstowe, moĪna utworzyü makro tak formatujące komórki, aby znajdujący siĊ w nich tekst byá zawijany. WaĪnym elementem w procesie konstrukcji makra jest odpowiednie jego skonfigurowa- nie, tzn. takie, aby moĪna byáo áatwo je uruchamiaü, np. wybierając z listy wyĞwietlanej w oknie dialogowym Makro. Aby makro uruchamiaáo siĊ zawsze po klikniĊciu okreĞlonego przycisku lub naciĞniĊciu kombinacji klawiszy, moĪna przypisaü je do przycisku paska narzĊdzi, klawisza skrótu lub obiektu graficznego umieszczonego w arkuszu. Instrukcja MSOffice okreĞla makro jako akcjĊ lub zestaw akcji, które moĪna tworzyü w celu zautomatyzowania czĊsto wykonywanych zadaĔ. Mówiąc proĞciej, jeĪeli chcemy np. otworzyü obiekt (arkusz, formularz) lub przejĞü w arkuszu do okreĞlonego wiersza w sposób „programowy”, tzn. bez wykonywania kolejnych poleceĔ z menu i (lub) okien dialogowych, moĪemy wybraü odpowiednią akcjĊ, czyli polecenie, i przypisaü ją do procedury obsáugi zdarzenia wybranego formantu (np. do zdarzenia, jakim jest klik- niĊcie formantu typu przycisk). NastĊpnie moĪna uruchomiü makro, aby powtórzyü lub „odtworzyü” polecenia. Po popeá- nieniu báĊdu podczas rejestrowania makra korekty wprowadzane przez uĪytkownika są równieĪ rejestrowane. JĊzyk Visual Basic przechowuje kaĪde makro w nowym module doáączonym do skoroszytu. Podczas rejestrowania makra wszystkie kroki konieczne do wykonania akcji są reje- strowane przez rejestrator makr. Poruszanie siĊ po WstąĪce (menu) nie jest uwzglĊd- nione wĞród rejestrowanych kroków. 50 Excel. Tworzenie zaawansowanych aplikacji Obsäuga przykäadowych zadaþ Opis konstrukcji i obsáugi skoroszytów bĊdzie bardziej zrozumiaáy, jeĞli zostaną one skopiowane z zaáączonej páyty CD w dowolne miejsce na dysku twardym, np. do katalogu Moje dokumenty. W tym celu musisz wykonaü nastĊpujące czynnoĞci: 1. Uruchom program Excel. 2. WáóĪ páytĊ CD do napĊdu CD-ROM. 3. Wybierz polecenie Plik/Otwórz, a nastĊpnie w oknie dialogowym Otwieranie, na liĞcie rozwijalnej Szukaj w: ustaw ĞcieĪkĊ dostĊpu do napĊdu CD-ROM. 4. Odszukaj katalog Przyklady, a w nim (odpowiednio): a) plik Lista.xls — jeĪeli uĪywasz Excela w wersjach 2000/XP/2003 — otwórz go, klikając dwukrotnie myszą jego nazwĊ lub raz przycisk Otwórz; b) plik Lista.xlsm — jeĪeli uĪywasz Excela w wersjach 2007/2010 — otwórz go, klikając dwukrotnie myszą jego nazwĊ lub raz przycisk Otwórz; c) plik Podpis.xls — jeĪeli uĪywasz Excela w wersjach 2000/XP/2003 — otwórz go, klikając dwukrotnie myszą jego nazwĊ lub raz przycisk Otwórz; d) plik Podpis.xlsm — jeĪeli uĪywasz Excela w wersjach 2007/2010 — otwórz go, klikając dwukrotnie myszą jego nazwĊ lub raz przycisk Otwórz; e) plik Nikt_tylko_ja.xls — jeĪeli uĪywasz Excela w wersjach 2000/XP/2003 — otwórz go, klikając dwukrotnie myszą jego nazwĊ lub raz przycisk Otwórz; f) plik Nikt_tylko_ja.xlsm — jeĪeli uĪywasz Excela w wersjach 2007/2010 — otwórz go, klikając dwukrotnie myszą jego nazwĊ lub raz przycisk Otwórz. 5. Polecenie otwarcia pliku moĪe spowodowaü aktywacjĊ komunikatu (okna dialogowego) zawierającego ostrzeĪenie dotyczące bezpieczeĔstwa makr, w takim przypadku wykonaj czynnoĞci opisane w rozdziale 1. tej ksiąĪki. 6. Wybierz polecenie Plik/Zapisz jako, a nastĊpnie w oknie dialogowym Zapisz jako, na liĞcie rozwijalnej Zapisz w: ustaw ĞcieĪkĊ dostĊpu do katalogu C:Moje dokumenty, po czym kliknij przycisk Zapisz. Wykonanie punktu 6. pozwoli na swobodną aktualizacjĊ komórek wczytanego przykáadu. Ogólna procedura rejestrowania makra Oto ogólna procedura rejestrowania makra. 1. Na karcie Deweloper w grupie Kod kliknij przycisk Zarejestruj makro. 2. Po aktywacji okna dialogowego Rejestrowanie makra (rysunek 2.1) w polu Nazwa makra wprowadĨ nazwĊ makra (domyĞlnie wyĞwietlona jest nazwa Makro…). Rozdziaä 2. i Makropolecenia 51 Rysunek 2.1. Okno dialogowe Rejestrowanie makra Pierwszy znak nazwy makra musi byè literñ. Kolejne znaki mogñ byè literami, licz- bami lub znakami podkreĈlenia. Spacje nie sñ dozwolone w nazwie makra; do od- dzielania wyrazów mogñ säuĔyè znaki podkreĈlenia. Gdy nazwa makra jest uĔywana równieĔ jako odwoäanie do komórki, moĔe zostaè wyĈwietlony komunikat o bäödzie dotyczñcy nieprawidäowej nazwy makra. 3. Przyporządkuj procedurze uruchamiania makra kombinacjĊ klawiszy przez klikniĊcie myszą w polu Klawisz skrótu, a nastĊpnie wprowadzenie wielkiej lub maáej litery. Aby zapoznaè siö z listñ przypisanych juĔ w programie Excel kombinacji klawiszy skrótów (z klawiszem Ctrl), zobacz punkt pomocy Klawisze skrótu i klawisze funk- cyjne programu Excel. 4. Z listy Przechowuj makro w: wybierz opcjĊ okreĞlającą miejsce, w którym makro ma byü przechowywane. Aby makro byäo dostöpne przy kaĔdym uĔyciu programu Excel, naleĔy po rozwiniö- ciu listy zaznaczyè pozycjö Osobisty skoroszyt makr. Gdy zostanie wybrana pozycja Osobisty skoroszyt makr, program Excel utworzy, jeĈli jeszcze nie istnieje, ukryty osobisty skoroszyt makr (Personal.xlsb) i zapisze w nim makro. 5. Opcjonalnie doáącz opis makra, wpisując odpowiedni tekst w polu Opis. 6. Kliknij przycisk OK, aby rozpocząü rejestrowanie. 7. Wykonaj dziaáania (akcje), które mają zostaü zarejestrowane. 8. Po wykonaniu wszystkich (okreĞlonych) akcji na karcie Deweloper w grupie Kod kliknij przycisk Zatrzymaj rejestrowanie. 52 Excel. Tworzenie zaawansowanych aplikacji Przykäady rejestracji makra Wiele czynnoĞci wykonywanych w aplikacji Excel — które są powtarzalne, a z re- guáy polegają na manualnych czynnoĞciach „obróbki” komórek lub ich obszarów — moĪna zautomatyzowaü. Procedury wspomnianej automatyzacji moĪemy okreĞliü za pomocą makropolecenia, które moĪe byü uruchomione zawsze, gdy trzeba wykonaü dane zadania. Podczas rejestrowania makra program Excel przechowuje informacje o kaĪdym kroku uĪytkownika wykonującego seriĊ poleceĔ. Przykáad rejestracji makra przeĞledzimy na poniĪszych zadaniach. Zadanie 1. NaleĪy zaprojektowaü makro pozwalające na sortowanie danych zawartych w skoroszycie Lista.xlsx. CzynnoĞü sortowania powinna nastąpiü wedáug nastĊpujących kryteriów.  Sortowanie przebiega wedáug kolumny B, a nastĊpnie wedáug kolumny C.  Kolumna B jest sortowana w porządku rosnącym.  Kolumna C jest sortowana w porządku malejącym  Makro uruchamiane jest za pomocą skrótu klawiaturowego Ctrl+Shift+S. Dane zawarte w arkuszu Pracownicy umieszczone są w trzech kolumnach, w których (kolejno) zawarte są nastĊpujące informacje:  nazwisko i imiĊ pracownika,  oznaczenie komórki organizacyjnej, w której okreĞlony pracownik jest zatrudniony,  numer ewidencyjny pracownika. Tak skonstruowana tabela nie posiada nagáówków kolumn (rysunek 2.2). Rysunek 2.2. Wygląd fragmentu przykáadowej tabeli Rozdziaä 2. i Makropolecenia 53 Aby skonstruowaü (zarejestrowaü) makropolecenie automatyzujące procedurĊ sorto- wania, postĊpuj wedáug nastĊpujących kroków: 1. Uruchom rejestrator makr, czyli kliknij przycisk Zarejestruj makro (rysunek 2.3) znajdujący siĊ na karcie Deweloper w grupie Kod. Rysunek 2.3. Procedura uruchomienia rejestratora makr 2. Dziaáanie z punktu 1. spowoduje aktywacjĊ okna dialogowego Rejestrowanie makra, w którym w polu Nazwa makra pozostaw domyĞlną nazwĊ Makro1 (rysunek 2.4, oznaczenie 1). Rysunek 2.4. Okno dialogowe Rejestrowanie makra 3. W polu Klawisz skrótu (rysunek 2.4, oznaczenie 2) wpisz duĪą literĊ S, co spowoduje, Īe kaĪde uruchomienie makra nastĊpowaü bĊdzie po wciĞniĊciu klawiszy Ctrl+Shift+S. 4. Za pomocą przycisku oznaczonego na rysunku 2.4 symbolem 3 rozwiĔ listĊ Przechowuj makro w:, po czym wybierz opcjĊ Ten skoroszyt (rysunek 2.5). Rysunek 2.5. Lista rozwijana Przechowuj makro w: 5. W polu Opis wpisz tekst: Sortowanie pracowników (rysunek 2.4, oznaczenie 4). 6. Po wykonaniu czynnoĞci opisanych w punkcie 6. naciĞnij przycisk OK, co spowoduje zamkniĊcie okna dialogowego. Od tej chwili wszystkie czynnoĞci wykonane przez uĪytkownika zostaną zapamiĊtane przez Excel i zapisane w formie kodu VBA. 54 Excel. Tworzenie zaawansowanych aplikacji 7. Zaznacz caáe kolumny A, B oraz kolumnĊ C (rysunek 2.6). Rysunek 2.6. Procedura zaznaczenia kolumn 8. Na karcie Dane kliknij przycisk Sortuj (rysunek 2.7). Rysunek 2.7. Karta Dane, polecenie Sortuj 9. Dziaáanie z punktu 8. spowoduje wyĞwietlenie okna dialogowego Sortowanie (rysunek 2.8). Rysunek 2.8. Procedura wyboru sortowania wedáug kolumny 10. Na liĞcie rozwijanej Sortuj wedáug wybierz opcjĊ Kolumna B. 11. Na liĞcie Sortowanie pozostaw opcjĊ WartoĞci. 12. Na liĞcie KolejnoĞü wybierz opcjĊ Od Z do A (rysunek 2.9). Rysunek 2.9. Wybór kolejnoĞci sortowania Rozdziaä 2. i Makropolecenia 55 13. Po wykonaniu dziaáaĔ okreĞlonych w punkcie 12. naciĞnij przycisk OK, co spowoduje zamkniĊcie okna dialogowego Sortowanie i przejĞcie do okna dialogowego OstrzeĪenie sortowania, w którym zaznacz (lub pozostaw zaznaczoną) opcjĊ Sortuj jak liczbĊ wszystko, co wygląda na liczbĊ (rysunek 2.10). Rysunek 2.10. Okno dialogowe OstrzeĪenie sortowania 14. Kliknij przycisk OK znajdujący siĊ w dolnej czĊĞci okna dialogowego Sortowanie, co spowoduje wykonanie procedury sortowania wedáug okreĞlonych parametrów. 15. Kliknij kartĊ Deweloper, po czym naciĞnij przycisk zatrzymania rejestrowania makra Zatrzymaj rejestrowanie (rysunek 2.11). Rysunek 2.11. Polecenie Zatrzymaj rejestrowanie Od tej chwili, gdy chcemy posortowaü (np. po dopisaniu nowego pracownika) nasze zestawienie, wystarczy nacisnąü kombinacjĊ klawiszy Ctrl+Shift+S. Zadanie 2. Trzeba zaprojektowaü makro pozwalające na podgląd wydruku danych zawartych w skoroszycie Lista.xlsx. Makro uruchamiane jest za pomocą klikniĊcia w obszarze ksztaátu „prostokąt o zaokrąglonych rogach” wyĞwietlonego w postaci 3D (rysunek 2.12). Rysunek 2.12. Wygląd ksztaátu uruchamiającego makro drukowania 56 Excel. Tworzenie zaawansowanych aplikacji Gdy chcesz skonstruowaü (zarejestrowaü) makropolecenie automatyzujące procedurĊ sortowania, wykonaj nastĊpujące kroki: 1. Na karcie Wstawianie w grupie Ilustracje rozwiĔ (kliknij w miejscu strzaáki) przycisk Ksztaáty, po czym po rozwiniĊciu palety ksztaátów w grupie Prostokąty kliknij ikonĊ Prostokąt zaokrąglony (rysunek 2.13, oznaczenie 1). Rysunek 2.13. Procedura wyboru ksztaátu 2. Po zmianie wskaĨnika myszy na znak + wciĞnij (i przytrzymaj w tym stanie) lewy przycisk myszy, a nastĊpnie narysuj na arkuszu prostokąt (rysunek 2.14). Po osiągniĊciu okreĞlonej wielkoĞci zwolnij lewy przycisk myszy. Rysunek 2.14. Procedura rysowania ksztaátu 3. Na karcie Formatowanie w grupie Style ksztaátów rozwiĔ listĊ dostĊpnych stylów — kliknij przycisk oznaczony symbolem 1 na rysunku 2.15. Rysunek 2.15. Grupa Style ksztaátów 4. Wybierz (kliknij) ikonĊ reprezentującą Intensywny efekt — Akcent 2; jest to ikona oznaczona symbolem 1 na rysunku 2.16. 5. Po zmianie ksztaátu prostokąta wstawionego do arkusza kliknij w jego obszarze prawym przyciskiem myszy, a nastĊpnie z menu podrĊcznego wybierz polecenie Edytuj tekst (rysunek 2.17). Rozdziaä 2. i Makropolecenia 57 Rysunek 2.16. Wybór stylu ksztaátu Rysunek 2.17. Menu podrĊczne, polecenie Edytuj tekst 6. Po wykonaniu czynnoĞci okreĞlonych w punkcie 5.:  wpisz tekst DRUKUJ,  zaznacz wpisany tekst, po czym za pomocą (automatycznie wyĞwietlonego) paska formatowania okreĞl czcionkĊ: Calibri o rozmiarze 14 pkt. — pogrubioną (rysunek 2.18). Rysunek 2.18. Procedura okreĞlenia parametrów czcionki 58 Excel. Tworzenie zaawansowanych aplikacji 7. Kliknij dowolną komórkĊ znajdującą siĊ w obszarze zawierającym dane, po czym na karcie Deweloper w grupie Kod kliknij przycisk Zarejestruj makro (rysunek 2.19). Rysunek 2.19. RozpoczĊcie procedury rejestrowania makra 8. Po aktywacji okna dialogowego Rejestrowanie makra (rysunek 2.20) wprowadĨ nastĊpujące zapisy:  w polu Nazwa makra wpisz tekst MD,  kliknij pole Klawisz skrótu, po czym wpisz duĪą literĊ D,  na liĞcie rozwijanej Przechowuj makro w: wybierz opcjĊ Ten skoroszyt,  w polu Opis wpisz tekst: Drukowanie kolumn. Rysunek 2.20. Wygląd okna dialogowego Rejestrowanie makra z zapisami okreĞlonymi w punkcie 8. 9. Zamknij okno dialogowe Rejestrowanie makra, klikając przycisk OK. 10. Kliknij Przycisk pakietu Office (rysunek 2.21, oznaczenie 1). 11. Dziaáanie wykonane w punkcie 10. spowoduje otwarcie podglądu wydruku (rysunek 2.22); w nim kliknij przycisk Zamknij podgląd wydruku. 12. Po zamkniĊciu okna podglądu wydruku nastąpi powrót do aktywnego arkusza, w którym na karcie Deweloper w grupie Kod kliknij przycisk Zatrzymaj rejestrowanie (rysunek 2.23). Rozdziaä 2. i Makropolecenia 59 Rysunek 2.21. Uruchomienie polecenia Podgląd wydruku Rysunek 2.22. Fragment okna podglądu wydruku Rysunek 2.23. ZakoĔczenie procedury rejestracji makra 13. Kliknij prawym przyciskiem myszy w obszarze ksztaátu DRUKUJ, po czym z menu podrĊcznego wybierz polecenie Przypisz makro (rysunek 2.24). Rysunek 2.24. Menu podrĊczne ksztaátu DRUKUJ 60 Excel. Tworzenie zaawansowanych aplikacji 14. Dziaáanie wykonane w punkcie 13. spowoduje aktywacjĊ okna dialogowego Przypisywanie makra (rysunek 2.25), w nim na liĞcie przewijanej kliknij nazwĊ MD, po czym zamknij okno dialogowe, klikając przycisk OK. Rysunek 2.25. Okno dialogowe Przypisywanie makra 15. Po powrocie do aktywnego arkusza kliknij dowolną komórkĊ, co spowoduje zakoĔczenie trybu edycji ksztaátu DRUKUJ. Od tej chwili, gdy chcemy wyĞwietliü okno podglądu wydruku, wystarczy nacisnąü kombinacjĊ klawiszy Ctrl+Shift+D lub naprowadziü wskaĨnik myszy na ksztaát DRUKUJ, po czym po zmianie jego wyglądu (wskaĨnik przybierze postaü „rączki”, co pokazano na rysunku 2.26) kliknąü lewym przyciskiem myszy Rysunek 2.26. Wygląd wskaĨnika myszy w postaci „rączki” Tworzenie makra za pomocñ jözyka Microsoft Visual Basic Aby utworzyü makro za pomocą jĊzyka programowania VBA naleĪy oczywiĞcie znaü ten jĊzyk. Uruchomienie samego edytora VBA musisz wykonaü w nastĊpujących krokach. 1. Upewnij siĊ Īe karta Deweloper jest dostĊpna. 2. Aby tymczasowo ustawiü poziom bezpieczeĔstwa pozwalający na wáączanie wszystkich makr, wykonaj nastĊpujące czynnoĞci. 3. Na karcie Deweloper w grupie Kod kliknij przycisk BezpieczeĔstwo makr (rysunek 2.27). Rozdziaä 2. i Makropolecenia 61 Rysunek 2.27. Karta Deweloper, grupa Kod 4. W obszarze Ustawienia makr kliknij opcjĊ Wáącz wszystkie makra (niezalecane, moĪe zostaü uruchomiony niebezpieczny kod), a nastĊpnie kliknij przycisk OK. Aby nie dopuĈciè do uruchomienia potencjalnie niebezpiecznego kodu, zaleca siö po zakoþczeniu pracy z makrami powrót do ustawieþ, które wyäñczajñ wszystkie makra. 5. Na karcie Deweloper w grupie Kod kliknij przycisk Visual Basic. 6. W menu Insert kliknij polecenie Module (rysunek 2.28). Rysunek 2.28. Menu Insert, polecenie Module 7. W oknie kodu moduáu (obszar oznaczony symbolem 1 na rysunku 2.29) wpisz lub skopiuj kod makra, którego chcesz uĪyü. Rysunek 2.29. Okno kodu moduáu 8. Aby uruchomiü makro z poziomu okna moduáu, naciĞnij klawisz F5. 9. Po napisaniu makra kliknij w menu File (plik) polecenie Close and Return to Microsoft Excel (zamknij i powróü do programu Excel). 62 Excel. Tworzenie zaawansowanych aplikacji Kopiowanie czöĈci makra w celu utworzenia innego makra 1. Upewnij siĊ, Īe karta Deweloper jest dostĊpna. 2. Ustaw poziom bezpieczeĔstwa w sposób pozwalający na wáączanie wszystkich makr. 3. Otwórz skoroszyt zawierający makro, które chcesz skopiowaü. 4. Na karcie Deweloper w grupie Kod kliknij przycisk Makra. 5. W polu Nazwa makra kliknij nazwĊ makra, które chcesz skopiowaü. 6. Kliknij przycisk Edytuj. 7. W oknie kodu Edytora Visual Basic zaznacz wiersze makra, które chcesz skopiowaü. Aby skopiowaè caäe makro, zaznacz równieĔ wiersze Sub i End Sub. 8. W menu Edit (edycja) kliknij polecenie Copy (kopiuj). MoĔna takĔe kliknñè prawym przyciskiem myszy, a nastöpnie kliknñè w menu skrótów polecenie Copy lub nacisnñè klawisze Ctrl+C. 9. W oknie kodu w polu Procedure kliknij moduá, w którym chcesz umieĞciü kod. 10. W menu Edit kliknij polecenie Paste (wklej). MoĔna takĔe kliknñè prawym przyciskiem myszy, a nastöpnie w menu skrótów kliknñè polecenie Paste lub nacisnñè klawisze Ctrl+V. Rejestracja makra ze zmianñ kodu Sporządzając róĪnego rodzaju zestawienia, z reguáy umieszczamy w nich informacje, kiedy i przez kogo zostaáy wykonane. CzynnoĞci te uáatwiü moĪe zaprojektowanie okreĞlonego makropolecenia wykonującego „za nas” tĊ pracĊ. Wynikiem dziaáania takiego makropolecenia jest automatyczne umieszczenie „wizytówki” wykonawcy dokumentu o wyglądzie pokazanym na rysunku 2.30, w miejscu wskazanym przez uĪytkownika. Rysunek 2.30. Wygląd „wizytówki” Rozdziaä 2. i Makropolecenia 63 ProcedurĊ budowy makropolecenia (przykáadowo w aplikacji Excel 2003) naleĪy przeprowadziü wedáug nastĊpujących kroków: 1. Z menu NarzĊdzia wybierz polecenia Makro/Zarejestruj nowe makro. 2. W oknie dialogowym Rejestruj Makro (pokazanym na rysunku 2.31): a) w polu Nazwa makra: wpisz nazwĊ tworzonej procedury makropolecenia, w naszym przypadku bĊdzie to tekst Podpis, b) w polu Klawisz skrótu: naciĞnij klawisz Shift i wpisz np. literĊ P, c) z listy rozwijanej Przechowuj makro w: wybierz opcjĊ Skoroszyt makr osobistych. Rysunek 2.31. Okno dialogowe Rejestrowanie makra Pierwszy znak nazwy makra musi byè literñ. Inne znaki mogñ byè literami, liczbami lub znakami podkreĈlenia. W nazwie makra niedozwolone sñ spacje; znaki pod- kreĈlenia mogñ säuĔyè do oddzielania säów. Nie naleĔy uĔywaè nazwy makra, która jest takĔe odwoäaniem do komórki. W przeciwnym przypadku zostanie wyĈwietlony komunikat o bäödzie informujñcy, Ĕe nazwa makra jest nieprawidäowa. 3. Po wykonaniu czynnoĞci opisanych w punkcie 2. naciĞnij przycisk OK, co spowoduje przejĞcie arkusza w stan rejestracji, czyli zapamiĊtania w postaci kodu VBA wszystkich czynnoĞci wykonywanych od tej pory w arkuszu. Pojawi siĊ pasek narzĊdzi Zatrzymywanie rejestracji (rysunek 2.32). Rysunek 2.32. Pasek narzĊdzi Zatrzymywanie rejestracji 4. Na karcie narzĊdzi Wstawianie kliknij przycisk Pole tekstowe (rysunek 2.33), a nastĊpnie narysuj pole tekstowe w dowolnej czĊĞci arkusza. Rysunek 2.33. Pasek narzĊdzi Rysowanie 64 Excel. Tworzenie zaawansowanych aplikacji 5. Pole wypeánij tekstem w sposób pokazany na rysunku 2.34 (jest to przykáad). WielkoĞü oraz rodzaj czcionki okreĞl za pomocą standardowych procedur udostĊpnianych z paska narzĊdzi Formatowanie. Dodaj cieĔ do pola tekstowego za pomocą przycisku oznaczonego symbolem 2 na rysunku 2.33. Rysunek 2.34. Wygląd gotowego projektu pola tekstowego 6. Po zaprojektowaniu wyglądu pola tekstowego kliknij dowolną komórkĊ arkusza. 7. Na pasku narzĊdzi Zatrzymaj rejestrowanie naciĞnij przycisk zatrzymywania rejestrowania makropolecenia. 8. NaciĞnij kombinacjĊ klawiszy Alt+F11, powodując tym samym aktywacjĊ edytora kodu VBA. 9. W oknie projektów rozwiĔ gaáąĨ VBAProjekt(PERSONAL.XLS), po czym kliknij nazwĊ moduáu (w naszym przykáadzie Module1 — rysunek 2.35, oznaczenie 1). Rysunek 2.35. Wygląd okna projektów VBA 10. Po wykonaniu czynnoĞci okreĞlonych w punkcie 9. w prawym oknie edytora pojawi siĊ kod makropolecenia, który pokazano poniĪej. Sub Podpis() Podpis Makro Makro zarejestrowane 2011-07-31, autor sergio Klawisz skrótu: Ctrl+Shift+P Application.CommandBars( Drawing ).Visible = True ActiveSheet.Shapes.AddTextbox(msoTextOrientationHorizontal, 106.5, 27.75, ´217.5, 44.25).Select Selection.Characters.Text = Wykonađ: Sergiusz Flanczewski Chr(10) Dnia: ´2011-07-31 With Selection.Characters(Start:=1, Length:=9).Font Rozdziaä 2. i Makropolecenia 65 .Name = Czcionka tekstu podstawowego .FontStyle = Standardowy .Size = 11 .Strikethrough = False .Superscript = False .Subscript = False .OutlineFont = False .Shadow = False .Underline = xlUnderlineStyleNone .ColorIndex = 1 End With With Selection.Characters(Start:=10, Length:=20).Font .Name = Script MT Bold .FontStyle = Standardowy .Size = 18 .Strikethrough = False .Superscript = False .Subscript = False .OutlineFont = False .Shadow = False .Underline = xlUnderlineStyleNone .ColorIndex = 1 End With With Selection.Characters(Start:=30, Length:=17).Font .Name = Czcionka tekstu podstawowego .FontStyle = Standardowy .Size = 11 .Strikethrough = False .Superscript = False .Subscript = False .OutlineFont = False .Shadow = False .Underline = xlUnderlineStyleNone .ColorIndex = 1 End With Selection.HorizontalAlignment = xlCenter Range( A1 ).Select End Sub 11. Dokonaj uzupeánieĔ i zmian kodu w sposób pokazany poniĪej (modyfikacje kodu zapisane pogrubioną kursywą). Pozostaáą czĊĞü kodu pozostaw bez zmian. Wprowadzone poprawki spowodują, Īe:  pole tekstowe zostanie umieszczone w aktywnej komórce (komórce klikniĊtej przed naciĞniĊciem skrótu klawiaturowego makropolecenia),  pole zostanie automatycznie uzupeánione o datĊ systemową. Sub Podpis() Podpis Makro Makro zarejestrowane 2011-07-31, autor sergio Klawisz skrótu: Ctrl+Shift+P L = ActiveCell.Left T = ActiveCell.Top Application.CommandBars( Drawing ).Visible = True 66 Excel. Tworzenie zaawansowanych aplikacji ActiveSheet.Shapes.AddTextbox(msoTextOrientationHorizontal, L, T, 217.5, ´44.25).Select Selection.Characters.Text = Wykonađ: Sergiusz Flanczewski Chr(10) ´ Dnia:’ Date 12. Zapisz modyfikacjĊ kodu i zamknij edytor, wydając z menu File (rysunek 2.36) polecenia Save, a nastĊpnie Close and Return to Microsoft Excel. Rysunek 2.36. Menu File, polecenie Save Od tej chwili w kaĪdym otwartym arkuszu po wciĞniĊciu klawiszy Ctrl+Shift+P zo- stanie automatycznie wstawione zaprojektowane przez nas pole tekstowe, a jego górny lewy róg bĊdzie umieszczony w górnym lewym rogu komórki aktywnej. Zarzñdzanie makrami Po zarejestrowaniu makra moĪna przy uĪyciu edytora Visual Basic przeglądaü jego kod w celu korygowania báĊdów lub zmieniania czynnoĞci wykonywanych przez to makro. JeĪeli np. makro zawijające tekst w komórce ma go takĪe pogrubiaü, moĪna zarejestrowaü makro sáuĪące do pogrubiania tekstu, a nastĊpnie skopiowaü jego in- strukcje do makra zawijającego tekst w komórce. Edytor Visual Basic to program, który zostaá zaprojektowany tak, aby uáatwiaü wpisywanie i edytowanie kodu makr początkującym uĪytkownikom i zapewniaü obszerną pomoc w trybie online. Aby wpro- wadzaü proste zmiany w makrach, nie trzeba znaü metod programowania ani skáadni jĊzyka Visual Basic. Korzystając z edytora Visual Basic, moĪna edytowaü makra, ko- piowaü je z jednego moduáu do innego, kopiowaü makra z jednego skoroszytu do in- nego, zmieniaü nazwy moduáów, w których są przechowywane makra lub zmieniaü nazwy makr. Przypisywanie makra do obiektu, grafiki lub formantu W arkuszu kliknij prawym przyciskiem myszy obiekt, grafikĊ lub formant, do którego ma zostaü przypisane istniejące makro, a nastĊpnie w menu podrĊcznym kliknij pole- cenie Przypisz makro. Po aktywacji okna dialogowego Przypisywanie makra z listy rozwijanej Nazwa makra wybierz (kliknij) makro, które chcesz przypisaü. Rozdziaä 2. i Makropolecenia 67 Od tej chwili, gdy chcesz uruchomiü makro, musisz naprowadziü wskaĨnik myszy na okreĞloną grafikĊ (formant formularza), po czym po zmianie jego wyglądu (wskaĨnik przybierze postaü „rączki”) kliknąü lewym przyciskiem myszy. Uruchamianie lub usuwanie makra z okna dialogowego Makro Aby uruchomiü lub usunąü makro, musisz wykonaü nastĊpujące kroki. 1. Otwórz skoroszyt zawierający makro, które chcesz usunąü. 2. Upewnij siĊ, Īe karta Deweloper jest dostĊpna. 3. Na karcie Deweloper w grupie Kod kliknij przycisk Makra. 4. Po aktywacji okna dialogowego Makro (rysunek 2.37) na liĞcie Makra w: wybierz pozycjĊ Ten skoroszyt. Rysunek 2.37. Okno dialogowe Makro 5. Wykonaj jedną z czynnoĞci. a) Aby uruchomiü makro, w polu Nazwa makra kliknij nazwĊ makra, które chcesz uruchomiü, po czym kliknij przycisk Uruchom. b) Aby usunąü makro, w polu Nazwa makra kliknij nazwĊ makra, które chcesz usunąü, po czym kliknij przycisk UsuĔ. Makro typu Auto_Open JeĞli makro zostanie zarejestrowane i zapisane pod nazwą Auto_Open, bĊdzie uru- chamiane za kaĪdym razem, gdy zostanie otwarty zawierający je skoroszyt. Gdy makro byáo napisane za pomocą jĊzyka VBA, musi siĊ znajdowaü w procedurze ob- sáugi zdarzenia Open otwieranego skoroszytu. Tworzenie makra dziaáającego przy otwieraniu skoroszytu przeĞledzimy na poniĪej opisanym przykáadzie. 68 Zadanie 3. Excel. Tworzenie zaawansowanych aplikacji NaleĪy za pomocą jĊzyka VBA utworzyü procedurĊ, która bezpoĞrednio po otwarciu okreĞlonego skoroszytu (w naszym przypadku skoroszytu o nazwie Nikt_tylko_ja) bĊdzie wyĞwietlaáa w oknie typu InputBox komunikat podający nazwĊ uĪytkownika komputera oraz wymagaáa od uĪytkownika skoroszytu podania hasáa dostĊpu do zasobu. W przypadku niewprowadzenia hasáa lub jego báĊdnego podania skoroszyt Nikt_tylko_ja zostanie automatycznie zamkniĊty. Okno InputBox przedstawiono na rysunku 2.38. Rysunek 2.38. RozpoczĊcie dziaáania projektowanej procedury Rozwiązanie 1. Otwórz aplikacjĊ Excel 2007 (lub Excel 2010), po czym zapisz nowo otwarty skoroszyt pod nazwą Nikt_tylko_ja.xlsm jako skoroszyt programu Excel z obsáugą makr. Gdy pracujesz z wersjñ Excel 2000/XP/2003, zapisz skoroszyt pod nazwñ Nikt_tylko_ja.xls jako skoroszyt programu Microsoft Excel. 2. Upewnij siĊ, Īe karta Deweloper jest dostĊpna. JeĈli karta Deweloper nie jest dostöpna, aby jñ wyĈwietliè, wykonaj poniĔsze czynnoĈci: 1. kliknij kartö Plik, a nastöpnie kliknij pozycjö Opcje; 2. w kategorii Dostosowywanie WstñĔki na liĈcie Gäówne karty zaznacz pole wy- boru Deweloper, a nastöpnie kliknij przycisk OK. Aby tymczasowo ustawiè poziom bezpieczeþstwa pozwalajñcy na wäñczanie wszystkich makr, wykonaj nastöpujñce czynnoĈci: 1. na karcie Deweloper w grupie Kod kliknij przycisk Bezpieczeþstwo makr; 2. w obszarze Ustawienia makr kliknij opcjö Wäñcz wszystkie makra (niezalecane, moĔe zostaè uruchomiony niebezpieczny kod), a nastöpnie kliknij przycisk OK. Rozdziaä 2. i Makropolecenia 69 3. Na karcie Deweloper w grupie Kod kliknij przycisk Visual Basic. Gdy pracujesz z wersjñ Excel 2000/XP/2003, naciĈnij kombinacjö klawiszy Alt+F11. 4. W oknie Project — VBA Project kliknij pozycjĊ Ten_skoroszyt (ThisWorkbook) (rysunek 2.39). Rysunek 2.39. Okno Project — VBAProject 5. Za pomocą przycisków opisanych na rysunku 2.40 symbolami 1 oraz 2 wybierz odpowiednio: nazwĊ obiektu — Workbook oraz zdarzenie — Open. Rysunek 2.40. Okno kodu obiektu 6. W oknie kodu (obszar oznaczony symbolem 3 na rysunku 2.40) wpisz poniĪszy kod makra. Private Sub Workbook_Open() RozpoczĊcie procedury Workbook_Open Dim Tekst, haslo As String Deklaracja zmiennej Tekst oraz zmiennej haslo jako zmiennych typu String Tekst = Witaj Application.UserName . Chr(10) Jeħli to TY, to wprowadļ hasđo dostúpu. haslo = InputBox(prompt:=Tekst, Title:= Powitanie ) Aktywacja okna InputBox proszącego o wprowadzenie hasáa dostĊpu do arkusza. Hasáo podane przez uĪytkownika zostanie zapisane w zmiennej haslo 70 Excel. Tworzenie zaawansowanych aplikacji If Trim(haslo) helion Then Sprawdzenie, czy zmienna haslo jest róĪna od Īądanego áaĔcucha znaków — w naszym przypadku wyraĪeniu helion. JeĪeli warunek jest speániony, zostanie wykonany wydruk koperty. Do porównania przyjĊto zmienną hasđo, z której usuniĊto wszystkie spacje z lewej oraz prawej strony ciągu — funkcja Trim() Workbooks( Nikt_tylko_ja.xlsm ).Close SaveChanges:=False Instrukcja zamkniĊcia skoroszytu Nikt_tylko_ja.xlsm bez zapamiĊtania zmian. End If End Sub Koniec sprawdzania warunku dla zmiennej haslo ZakoĔczenie procedury Workbook_Open 7. Aby uruchomiü makro z poziomu okna moduáu, naciĞnij klawisz F5. 8. Po napisaniu makra kliknij w menu File (plik) polecenie Close and Return to Microsoft Excel (zamknij i powróü do programu Excel). 9. Po powrocie do aplikacji Excel zamknij skoroszyt Nikt_tylko_ja, po czym uruchom go ponownie i sprawdĨ dziaáanie zaprojektowanej procedury. Aby skoroszyt Excel zostaä uruchomiony bez wäñczania makra typu Auto_Open, podczas jego otwierania naleĔy przytrzymaè klawisz Shift. Skorowidz Analysis ToolPak, 310 arkusz Tabela1, 98 arkusz Tabela2, 100 autofiltr, 281 A B bezpieczeĔstwo makr, 19, 20 C COM, Component Object Model, 310 D deklaracja staáych, 42 Const, 42 nazwa_staáej, 42 type, 42 wyraĪenie, 42 deklaracja zmiennych, 41 Dim, 41 Explicit, 41 Implicit, 41 Private, 41 Public, 41 Static, 41 dodatek Funkcje_Exp2003, 314 instalacja (Excel 2000/XP
Pobierz darmowy fragment (pdf)

Gdzie kupić całą publikację:

Excel. Tworzenie zaawansowanych aplikacji
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ą: