Szczegóły ebooka

Excel 2010 PL. Programowanie w VBA. Vademecum Walkenbacha

Excel 2010 PL. Programowanie w VBA. Vademecum Walkenbacha

John Walkenbach

Ebook

Opanuj możliwości VBA z największym autorytetem w dziedzinie Excela!

  • Jak projektować przyjazne użytkownikom okna dialogowe?
  • Jak stosować VBA do tworzenia użytecznych aplikacji dla Excela?
  • Jak rozszerzać możliwości Excela i tworzyć praktyczne dodatki?

Nie należysz do osób, które onieśmiela potencjał Excela? Sprawnie tworzysz skoroszyty, wprowadzasz formuły, używasz funkcji arkuszowych i swobodnie posługujesz się Wstążką programu? Czujesz, że drzemie w nim jeszcze ogrom niezwykłych możliwości, ale nie wiesz, jak po nie sięgnąć? Najwyższa pora na naukę z Johnem Walkenbachem - najsłynniejszym ekspertem w dziedzinie Excela! Jeśli poznałeś już podstawowe funkcje tego programu, dzięki tej książce bez trudu opanujesz narzędzia zaawansowane, czyli takie, które naprawdę ułatwią i przyspieszą Twoją codzienną pracę!

Swoją naukę pod okiem mistrza zaczniesz od odświeżenia informacji na temat używania rozmaitych formuł oraz plików stosowanych i generowanych przez Excel. Zaraz potem przejdziesz do fascynującej części, poświęconej projektowaniu aplikacji w tym programie. Dowiesz się, czym taka aplikacja jest i jak szczegółowo wyglądają etapy jej tworzenia. Następnie opanujesz całą niezbędną wiedzę na temat języka VBA, aby sprawnie w nim programować oraz tworzyć funkcje i procedury. Nauczysz się również wykorzystywać jego możliwości podczas używania tabel przestawnych i wykresów. Ponadto wzbogacisz się o informacje na temat projektowania niestandardowych, przyjaznych okien dialogowych UserForm, automatycznej obsługi zdarzeń czy tworzenia praktycznych dodatków dla Excela.

  • Przegląd możliwości Excela 2010
  • Projektowanie aplikacji w programie Excel
  • Język Visual Basic for Applications
  • Zastosowanie formularzy UserForm
  • Niestandardowe okna dialogowe
  • Zaawansowane metody programowania
  • Tabele przestawne, wykresy i obsługa zdarzeń
  • Projektowanie dodatków do Excela
  • Tworzenie systemów pomocy dla aplikacji
  • Tworzenie aplikacji przyjaznych dla użytkownika
  • Metody użycia VBA do pracy z plikami

Posiądź wiedzę profesjonalistów - wykorzystaj wszystkie
możliwości Excela i poszerzaj je!

Sięgnij po mistrzowskie umiejętności! Oto seria podręczników, w których najsłynniejszy ekspert w dziedzinie Excela, John Walkenbach, pokazuje, jak wykrzesać z tego programu maksimum możliwości! Te dedykowane średnio i bardzo zaawansowanym użytkownikom książki pozwalają wyjść poza świat standardowych narzędzi i dają praktyczną wiedzę o tym, jak rozszerzać i dopasowywać funkcjonalność Excela do własnych potrzeb! Fascynują Cię formuły, tworzenie makr, VBA czy projektowanie złożonych, przyjaznych dla użytkownika aplikacji? Nikt nie nauczy Cię więcej o Excelu niż sam mistrz Walkenbach!

O autorze (19)

Przedmowa (21)

CZĘŚĆ I. PODSTAWOWE INFORMACJE (29)

Rozdział 1. Skąd się wziął Excel 2010? (31)

  • Krótka historia arkuszy kalkulacyjnych (31)
    • Wszystko zaczęło się od programu VisiCalc (31)
    • Lotus 1-2-3 (32)
    • Quattro Pro (35)
    • Microsoft Excel (36)
  • Excel jako dobre narzędzie dla projektantów aplikacji (41)
  • Rola Excela w strategii Microsoftu (43)

Rozdział 2. Program Excel w zarysie (45)

  • Myślenie w kategoriach obiektów (45)
  • Skoroszyty (46)
    • Arkusze (46)
    • Arkusze wykresów (48)
    • Arkusze makr XLM (49)
    • Arkusze dialogowe programów Excel 5 i 95 (50)
  • Interfejs użytkownika programu Excel (50)
    • Wprowadzenie do Wstążki (51)
    • Menu podręczne i minipasek narzędzi (57)
    • Okna dialogowe (58)
    • Skróty klawiszowe (59)
    • Tagi inteligentne (59)
    • Panel zadań (60)
  • Dostosowywanie wyświetlania do własnych potrzeb (61)
  • Wprowadzanie danych (61)
  • Formuły, funkcje i nazwy (61)
  • Zaznaczanie obiektów (63)
  • Formatowanie (64)
  • Opcje ochrony (65)
    • Ochrona formuł przed nadpisaniem (65)
    • Ochrona struktury skoroszytu (66)
    • Ochrona skoroszytu przy użyciu hasła (66)
    • Ochrona kodu VBA przy użyciu hasła (67)
  • Wykresy (68)
  • Kształty i obiekty typu SmartArt (68)
  • Dostęp do baz danych (69)
    • Arkuszowe bazy danych (69)
    • Zewnętrzne bazy danych (70)
  • Funkcje internetowe (71)
  • Narzędzia analizy danych (72)
  • Dodatki (73)
  • Makra i programowanie (74)
  • Zgodność formatu plików (74)
  • System pomocy Excela (74)

Rozdział 3. Wybrane zasady stosowania formuł (77)

  • Formuły (77)
  • Obliczanie formuł (78)
  • Odwołania do komórki lub zakresu (79)
    • Dlaczego warto używać odwołań, które nie są względne? (79)
    • Notacja W1K1 (80)
    • Odwołania do innych arkuszy lub skoroszytów (81)
  • Zastosowanie nazw (83)
    • Nadawanie nazw komórkom i zakresom (83)
    • Nadawanie nazw istniejącym odwołaniom (83)
    • Stosowanie nazw z operatorem przecięcia (84)
    • Nadawanie nazw kolumnom i wierszom (85)
    • Obszar obowiązywania nazw (85)
    • Nadawanie nazw stałym (86)
    • Nadawanie nazw formułom (87)
    • Nadawanie nazw obiektom (88)
  • Błędy występujące w formułach (89)
  • Formuły tablicowe (89)
    • Przykładowa formuła tablicowa (90)
    • Kalendarz oparty na formule tablicowej (91)
    • Zalety i wady formuł tablicowych (92)
  • Metody zliczania i sumowania (93)
    • Przykłady formuł zliczających (94)
    • Przykłady formuł sumujących (95)
    • Inne narzędzia zliczające (95)
  • Przetwarzanie daty i czasu (96)
    • Wprowadzanie daty i czasu (96)
    • Przetwarzanie dat sprzed roku 1900 (97)
  • Tworzenie megaformuł (98)

Rozdział 4. Pliki programu Excel (101)

  • Uruchamianie Excela (101)
  • Formaty plików (103)
    • Formaty plików obsługiwane w programie Excel (104)
    • Formaty plików tekstowych (104)
    • Formaty plików baz danych (104)
    • Inne formaty plików (105)
  • Praca z plikami szablonów (106)
    • Przeglądanie dostępnych szablonów (108)
    • Tworzenie szablonów (109)
    • Tworzenie szablonów skoroszytu (110)
  • Budowa plików programu Excel (111)
    • Zaglądamy do wnętrza pliku (112)
    • Dlaczego format pliku jest taki ważny? (115)
  • Plik OfficeUI (116)
  • Plik XLB (117)
  • Pliki dodatków (117)
  • Ustawienia Excela w rejestrze systemu Windows (118)
    • Rejestr systemu Windows (118)
    • Ustawienia Excela (120)

CZĘŚĆ II. PROJEKTOWANIE APLIKACJI W EXCELU (123)

Rozdział 5. Czym jest aplikacja arkusza kalkulacyjnego? (125)

  • Aplikacje arkuszy kalkulacyjnych (125)
  • Projektant i użytkownik końcowy (126)
    • Kim są projektanci i czym się zajmują? (127)
    • Klasyfikacja użytkowników arkuszy kalkulacyjnych (128)
    • Odbiorcy aplikacji arkusza kalkulacyjnego (129)
  • Rozwiązywanie problemów przy użyciu Excela (129)
  • Podstawowe kategorie arkuszy kalkulacyjnych (130)
    • Arkusze robocze (131)
    • Arkusze przeznaczone wyłącznie do użytku prywatnego (131)
    • Aplikacje jednego użytkownika (132)
    • Aplikacje typu "spaghetti" (132)
    • Aplikacje narzędziowe (133)
    • Dodatki zawierające funkcje arkusza (133)
    • Arkusze jednoblokowe (134)
    • Modele warunkowe (134)
    • Aplikacje bazodanowe (przechowujące i udostępniające dane) (134)
    • Aplikacje komunikujące się z bazami danych (135)
    • Aplikacje "pod klucz" (135)

Rozdział 6. Podstawy projektowania aplikacji arkusza kalkulacyjnego (137)

  • Podstawowe etapy projektowania (137)
  • Określanie wymagań użytkownika (138)
  • Planowanie aplikacji spełniającej wymagania użytkownika (139)
  • Wybieranie odpowiedniego interfejsu użytkownika (141)
    • Dostosowywanie Wstążki do potrzeb użytkownika (144)
    • Dostosowywanie menu podręcznego do potrzeb użytkownika (144)
    • Tworzenie klawiszy skrótu (145)
    • Tworzenie niestandardowych okien dialogowych (146)
    • Zastosowanie formantów ActiveX w arkuszu (146)
    • Rozpoczęcie prac projektowych (148)
  • Zadania realizowane z myślą o końcowym użytkowniku (149)
    • Testowanie aplikacji (149)
    • Uodpornianie aplikacji na błędy popełniane przez użytkownika (150)
    • Nadawanie aplikacji przyjaznego, intuicyjnego i estetycznego wyglądu (152)
    • Tworzenie systemu pomocy i dokumentacji przeznaczonej dla użytkownika (154)
    • Dokumentowanie prac projektowych (155)
    • Przekazanie aplikacji użytkownikom (155)
    • Aktualizacja aplikacji (kiedy to konieczne) (156)
  • Pozostałe kwestie dotyczące projektowania (156)
    • Wersja Excela zainstalowana przez użytkownika (157)
    • Wersje językowe (157)
    • Wydajność systemu (157)
    • Tryby karty graficznej (158)

CZĘŚĆ III. JĘZYK VISUAL BASIC FOR APPLICATIONS (159)

Rozdział 7. Wprowadzenie do języka VBA (161)

  • Podstawowe informacje o języku BASIC (161)
  • Język VBA (162)
    • Modele obiektowe (162)
    • Porównanie języka VBA z językiem XLM (162)
  • Wprowadzenie do języka VBA (163)
  • Edytor VBE (165)
    • Wyświetlanie karty Deweloper (166)
    • Uruchamianie edytora VBE (167)
    • Okna edytora VBE (167)
  • Tajemnice okna Project Explorer (169)
    • Dodawanie nowego modułu VBA (170)
    • Usuwanie modułu VBA (171)
    • Eksportowanie i importowanie obiektów (171)
  • Tajemnice okna Code (171)
    • Minimalizacja i maksymalizacja okien (172)
    • Przechowywanie kodu źródłowego języka VBA (172)
    • Wprowadzanie kodu źródłowego języka VBA (173)
  • Dostosowywanie edytora Visual Basic (179)
    • Karta Editor (180)
    • Karta Editor Format (183)
    • Karta General (184)
    • Zastosowanie karty Docking (185)
  • Rejestrator makr Excela (185)
    • Co właściwie zapisuje rejestrator makr? (186)
    • Odwołania względne czy bezwzględne? (187)
    • Opcje związane z rejestrowaniem makr (191)
    • Modyfikowanie zarejestrowanych makr (191)
  • Obiekty i kolekcje (192)
    • Hierarchia obiektów (193)
    • Kolekcje (194)
    • Odwoływanie się do obiektów (195)
  • Właściwości i metody (196)
    • Właściwości obiektów (196)
    • Metody obiektowe (197)
  • Tajemnice obiektu Comment (198)
    • Pomoc dla obiektu Comment (199)
    • Właściwości obiektu Comment (199)
    • Metody obiektu Comment (199)
    • Kolekcja Comments (201)
    • Właściwość Comment (202)
    • Obiekty zawarte w obiekcie Comment (202)
    • Sprawdzanie, czy komórka posiada komentarz (203)
    • Dodawanie nowego obiektu Comment (204)
  • Kilka przydatnych właściwości obiektu Application (205)
  • Tajemnice obiektów Range (206)
    • Właściwość Range (207)
    • Właściwość Cells (209)
    • Właściwość Offset (210)
  • Co należy wiedzieć o obiektach? (212)
    • Podstawowe zagadnienia, które należy zapamiętać (212)
    • Dodatkowe informacje na temat obiektów i właściwości (213)

Rozdział 8. Podstawy programowania w języku VBA (217)

  • Przegląd elementów języka VBA (217)
  • Komentarze (219)
  • Zmienne, typy danych i stałe (220)
    • Definiowanie typów danych (222)
    • Deklarowanie zmiennych (222)
    • Zasięg zmiennych (226)
    • Zastosowanie stałych (229)
    • Praca z łańcuchami tekstu (232)
    • Przetwarzanie dat (232)
  • Instrukcje przypisania (233)
  • Tablice (235)
    • Deklarowanie tablic (236)
    • Deklarowanie tablic wielowymiarowych (236)
    • Deklarowanie tablic dynamicznych (237)
  • Zmienne obiektowe (237)
  • Typy danych definiowane przez użytkownika (238)
  • Wbudowane funkcje VBA (239)
  • Praca z obiektami i kolekcjami (242)
    • Konstrukcja With ... End With (242)
    • Konstrukcja For Each ... Next (243)
  • Sterowanie wykonywaniem procedur (244)
    • Polecenie GoTo (245)
    • Konstrukcja If ... Then (245)
    • Konstrukcja Select Case (249)
    • Wykonywanie bloku instrukcji w ramach pętli (252)

Rozdział 9. Tworzenie procedur w języku VBA (261)

  • Kilka słów o procedurach (261)
    • Deklarowanie procedury Sub (262)
    • Zasięg procedury (263)
  • Wykonywanie procedur Sub (264)
    • Uruchamianie procedury przy użyciu polecenia Run Sub/UserForm (265)
    • Uruchamianie procedury z poziomu okna dialogowego Makro (265)
    • Uruchamianie procedury przy użyciu skrótu z klawiszem Ctrl (266)
    • Uruchamianie procedury za pomocą Wstążki (267)
    • Uruchamianie procedur za pośrednictwem niestandardowego menu podręcznego (267)
    • Wywoływanie procedury z poziomu innej procedury (267)
    • Uruchamianie procedury poprzez kliknięcie obiektu (271)
    • Wykonywanie procedury po wystąpieniu określonego zdarzenia (273)
    • Uruchamianie procedury z poziomu okna Immediate (274)
  • Przekazywanie argumentów procedurom (275)
  • Metody obsługi błędów (278)
    • Przechwytywanie błędów (278)
    • Przykłady kodu źródłowego obsługującego błędy (279)
  • Praktyczny przykład wykorzystujący procedury Sub (282)
    • Cel (283)
    • Wymagania projektowe (283)
    • Co już wiesz (283)
    • Podejście do zagadnienia (284)
    • Co musimy wiedzieć? (285)
    • Wstępne rejestrowanie makr (285)
    • Wstępne przygotowania (286)
    • Tworzenie kodu źródłowego (288)
    • Tworzenie procedury sortującej (289)
    • Dodatkowe testy (292)
    • Usuwanie problemów (293)
    • Dostępność narzędzia (296)
    • Ocena projektu (296)

Rozdział 10. Tworzenie funkcji w języku VBA (299)

  • Porównanie procedur Sub i Function (299)
  • Dlaczego tworzymy funkcje niestandardowe? (300)
  • Twoja pierwsza funkcja (301)
    • Zastosowanie funkcji w arkuszu (301)
    • Zastosowanie funkcji w procedurze języka VBA (302)
    • Analiza funkcji niestandardowej (302)
  • Procedury Function (304)
    • Zasięg funkcji (306)
    • Wywoływanie procedur Function (306)
  • Argumenty funkcji (310)
  • Przykłady funkcji (311)
    • Funkcja bezargumentowa (311)
    • Funkcja jednoargumentowa (313)
    • Funkcje z dwoma argumentami (316)
    • Funkcja pobierająca tablicę jako argument (317)
    • Funkcje z argumentami opcjonalnymi (318)
    • Funkcje zwracające tablicę VBA (319)
    • Funkcje zwracające wartość błędu (322)
    • Funkcje o nieokreślonej liczbie argumentów (323)
  • Emulacja funkcji arkuszowej SUMA (324)
  • Rozszerzone funkcje daty (327)
  • Wykrywanie i usuwanie błędów w funkcjach (329)
  • Okno dialogowe Wstawianie funkcji (330)
    • Zastosowanie metody MacroOptions (332)
    • Definiowanie kategorii funkcji (333)
    • Dodawanie opisu funkcji (334)
  • Zastosowanie dodatków do przechowywania funkcji niestandardowych (335)
  • Korzystanie z Windows API (336)
    • Przykłady zastosowania funkcji interfejsu API systemu Windows (336)
    • Identyfikacja katalogu domowego systemu Windows (337)
    • Wykrywanie wciśnięcia klawisza Shift (338)
    • Dodatkowe informacje na temat funkcji interfejsu API (339)

Rozdział 11. Przykłady i techniki programowania w języku VBA (341)

  • Nauka poprzez praktykę (341)
  • Przetwarzanie zakresów (342)
    • Kopiowanie zakresów (342)
    • Przenoszenie zakresów (344)
    • Kopiowanie zakresu o zmiennej wielkości (344)
    • Zaznaczanie oraz identyfikacja różnego typu zakresów (345)
    • Wprowadzanie wartości do komórki (346)
    • Wprowadzanie wartości do następnej pustej komórki (348)
    • Wstrzymywanie działania makra w celu umożliwienia pobrania zakresu wyznaczonego przez użytkownika (350)
    • Zliczanie zaznaczonych komórek (351)
    • Określanie typu zaznaczonego zakresu (352)
    • Wydajne przetwarzanie komórek zaznaczonego zakresu przy użyciu pętli (353)
    • Usuwanie wszystkich pustych wierszy (356)
    • Powielanie wierszy (357)
    • Określanie, czy zakres zawiera się w innym zakresie (358)
    • Określanie typu danych zawartych w komórce (359)
    • Odczytywanie i zapisywanie zakresów (360)
    • Lepsza metoda zapisywania zakresu (361)
    • Przenoszenie zawartości tablic jednowymiarowych (363)
    • Przenoszenie zawartości zakresu do tablicy typu Variant (363)
    • Zaznaczanie komórek na podstawie wartości (364)
    • Kopiowanie nieciągłego zakresu komórek (365)
  • Przetwarzanie skoroszytów i arkuszy (367)
    • Zapisywanie wszystkich skoroszytów (367)
    • Zapisywanie i zamykanie wszystkich skoroszytów (368)
    • Ukrywanie wszystkich komórek arkusza poza zaznaczonym zakresem (368)
    • Synchronizowanie arkuszy (369)
  • Techniki programowania w języku VBA (370)
    • Przełączanie wartości właściwości typu logicznego (370)
    • Określanie liczby drukowanych stron (371)
    • Wyświetlanie daty i czasu (372)
    • Pobieranie listy czcionek (373)
    • Sortowanie tablicy (374)
    • Przetwarzanie grupy plików (376)
  • Ciekawe funkcje, których możesz użyć w swoich projektach (378)
    • Funkcja FileExists (378)
    • Funkcja FileNameOnly (378)
    • Funkcja PathExists (379)
    • Funkcja RangeNameExists (379)
    • Funkcja SheetExists (380)
    • Funkcja WorkbookIsOpen (381)
    • Pobieranie wartości z zamkniętego skoroszytu (381)
  • Użyteczne, niestandardowe funkcje arkuszowe (382)
    • Funkcje zwracające informacje o formatowaniu komórki (382)
    • Gadający arkusz? (384)
    • Wyświetlanie daty zapisania lub wydrukowania pliku (384)
    • Obiekty nadrzędne (385)
    • Zliczanie komórek, których wartości zawierają się pomiędzy dwoma wartościami (386)
    • Wyznaczanie ostatniej niepustej komórki kolumny lub wiersza (387)
    • Czy dany łańcuch tekstu jest zgodny z wzorcem? (388)
    • Wyznaczanie n-tego elementu łańcucha (390)
    • Zamiana wartości na słowa (390)
    • Funkcja wielofunkcyjna (391)
    • Funkcja SheetOffset (392)
    • Zwracanie maksymalnej wartości ze wszystkich arkuszy (393)
    • Zwracanie tablicy zawierającej unikatowe, losowo uporządkowane liczby całkowite (394)
    • Porządkowanie zakresu w losowy sposób (395)
  • Wywołania funkcji interfejsu Windows API (396)
    • Określanie skojarzeń plików (397)
    • Pobieranie informacji o napędach dyskowych (397)
    • Pobieranie informacji dotyczących drukarki domyślnej (398)
    • Pobieranie informacji o aktualnej rozdzielczości karty graficznej (399)
    • Dodanie dźwięku do aplikacji (400)
    • Odczytywanie zawartości rejestru systemu Windows i zapisywanie w nim danych (402)

CZĘŚĆ IV. PRACA Z FORMULARZAMI USERFORM (405)

Rozdział 12. Tworzenie własnych okien dialogowych (407)

  • Zanim rozpoczniesz tworzenie formularza UserForm (407)
  • Okno wprowadzania danych (407)
    • Funkcja InputBox języka VBA (408)
    • Metoda InputBox Excela (409)
  • Funkcja MsgBox języka VBA (412)
  • Metoda GetOpenFilename programu Excel (415)
  • Metoda GetSaveAsFilename programu Excel (419)
  • Okno wybierania katalogu (419)
  • Wyświetlanie wbudowanych okien dialogowych Excela (420)
  • Wyświetlanie formularza danych (421)
    • Wyświetlanie formularza wprowadzania danych (423)
    • Wyświetlanie formularza wprowadzania danych za pomocą VBA (424)

Rozdział 13. Wprowadzenie do formularzy UserForm (425)

  • Jak Excel obsługuje niestandardowe okna dialogowe (425)
  • Wstawianie nowego formularza UserForm (426)
  • Dodawanie formantów do formularza UserForm (426)
  • Formanty okna Toolbox (428)
    • Formant CheckBox (428)
    • Formant ComboBox (429)
    • Formant CommandButton (429)
    • Formant Frame (429)
    • Formant Image (429)
    • Formant Label (429)
    • Formant ListBox (429)
    • Formant MultiPage (430)
    • Formant OptionButton (430)
    • Formant RefEdit (430)
    • Formant ScrollBar (430)
    • Formant SpinButton (430)
    • Formant TabStrip (430)
    • Formant TextBox (431)
    • Formant ToggleButton (431)
  • Modyfikowanie formantów formularza UserForm (432)
  • Modyfikowanie właściwości formantów (432)
    • Zastosowanie okna Properties (432)
    • Wspólne właściwości (435)
    • Uwzględnienie wymagań użytkowników preferujących korzystanie z klawiatury (435)
  • Wyświetlanie formularza UserForm (438)
    • Wyświetlanie niemodalnych okien formularzy UserForm (438)
    • Wyświetlanie formularza UserForm na podstawie zmiennej (439)
    • Ładowanie formularza UserForm (439)
    • Procedury obsługi zdarzeń (439)
  • Zamykanie formularza UserForm (439)
  • Przykład tworzenia formularza UserForm (441)
    • Tworzenie formularza UserForm (441)
    • Tworzenie kodu procedury wyświetlającej okno dialogowe (444)
    • Testowanie okna dialogowego (444)
    • Dodawanie procedur obsługi zdarzeń (445)
    • Sprawdzanie poprawności danych (447)
    • Zakończenie tworzenia okna dialogowego (447)
  • Zdarzenia powiązane z formularzem UserForm (447)
    • Zdobywanie informacji na temat zdarzeń (448)
    • Zdarzenia formularza UserForm (449)
    • Zdarzenia związane z formantem SpinButton (449)
    • Współpraca formantu SpinButton z formantem TextBox (451)
  • Odwoływanie się do formantów formularza UserForm (453)
  • Dostosowywanie okna Toolbox do własnych wymagań (454)
    • Dodawanie nowych kart (455)
    • Dostosowywanie lub łączenie formantów (455)
    • Dodawanie nowych formantów ActiveX (456)
  • Tworzenie szablonów formularzy UserForm (457)
  • Lista kontrolna tworzenia i testowania formularzy UserForm (458)

Rozdział 14. Przykłady formularzy UserForm (459)

  • Tworzenie formularza UserForm pełniącego funkcję menu (459)
    • Zastosowanie w formularzu UserForm formantów CommandButton (460)
    • Zastosowanie w formularzu UserForm formantu ListBox (460)
  • Zaznaczanie zakresów przy użyciu formularza UserForm (461)
  • Tworzenie okna powitalnego (463)
  • Wyłączanie przycisku Zamknij formularza UserForm (465)
  • Zmiana wielkości formularza UserForm (466)
  • Powiększanie i przewijanie arkusza przy użyciu formularza UserForm (468)
  • Zastosowania formantu ListBox (470)
    • Tworzenie listy elementów formantu ListBox (471)
    • Identyfikowanie zaznaczonego elementu listy formantu ListBox (475)
    • Identyfikowanie wielu zaznaczonych elementów listy formantu ListBox (475)
    • Wiele list w jednej kontrolce ListBox (476)
    • Przenoszenie elementów listy formantu ListBox (478)
    • Zmiana kolejności elementów listy formantu ListBox (479)
    • Wielokolumnowe formanty ListBox (480)
    • Zastosowanie formantu ListBox do wybierania wierszy arkusza (482)
    • Uaktywnianie arkusza za pomocą formantu ListBox (484)
  • Zastosowanie formantu MultiPage na formularzach UserForm (487)
  • Korzystanie z formantów zewnętrznych (488)
  • Animowanie etykiet (490)

Rozdział 15. Zaawansowane techniki korzystania z formularzy UserForm (493)

  • Niemodalne okna dialogowe (493)
  • Wyświetlanie wskaźnika postępu zadania (497)
    • Tworzenie samodzielnego wskaźnika postępu zadania (498)
    • Wyświetlanie wskaźnika postępu zadania za pomocą formantu MultiPage (502)
    • Wyświetlanie wskaźnika postępu zadania bez korzystania z kontrolki MultiPage (504)
  • Tworzenie kreatorów (505)
    • Konfigurowanie formantu MultiPage w celu utworzenia kreatora (506)
    • Dodawanie przycisków do formularza UserForm kreatora (507)
    • Programowanie przycisków kreatora (508)
    • Zależności programowe w kreatorach (509)
    • Wykonywanie zadań za pomocą kreatorów (511)
  • Emulacja funkcji MsgBox (511)
    • Emulacja funkcji MsgBox: kod funkcji MyMsgBox (512)
    • Jak działa funkcja MyMsgBox (513)
    • Wykorzystanie funkcji MyMsgBox do emulacji funkcji MsgBox (515)
  • Formularz UserForm z formantami, których położenie można zmieniać (515)
  • Formularz UserForm bez paska tytułowego (516)
  • Symulacja paska narzędzi za pomocą formularza UserForm (518)
  • Formularze UserForm z możliwością zmiany rozmiaru (520)
  • Obsługa wielu przycisków formularza UserForm za pomocą jednej procedury obsługi zdarzeń (524)
  • Wybór koloru za pomocą formularza UserForm (527)
  • Wyświetlanie wykresów na formularzach UserForm (528)
    • Zapisywanie wykresu w postaci pliku GIF (529)
    • Modyfikacja właściwości Picture formantu Image (530)
  • Tworzenie półprzezroczystych formularzy UserForm (530)
  • Zaawansowane formularze danych (531)
    • Opis ulepszonego formularza danych (533)
    • Instalacja dodatku - ulepszonego formularza danych (533)
  • Puzzle na formularzu UserForm (535)
  • Wideo Poker na formularzu UserForm (536)

CZĘŚĆ V. ZAAWANSOWANE TECHNIKI PROGRAMOWANIA (537)

Rozdział 16. Tworzenie narzędzi dla Excela w języku VBA (539)

  • Kilka słów o narzędziach dla programu Excel (539)
  • Zastosowanie języka VBA do tworzenia narzędzi (540)
  • Co decyduje o przydatności narzędzia? (541)
  • Operacje tekstowe: anatomia narzędzia (541)
    • Kilka słów o programie Operacje tekstowe (542)
    • Określenie wymagań dla narzędzia Operacje tekstowe (543)
    • Skoroszyt narzędzia Operacje tekstowe (543)
    • Jak działa narzędzie Operacje tekstowe? (544)
    • Formularz UserForm dla narzędzia Operacje tekstowe (545)
    • Moduł VBA Module1 (546)
    • Moduł formularza UserForm1 (548)
    • Poprawa wydajności narzędzia Operacje tekstowe (550)
    • Zapisywanie ustawień narzędzia Operacje tekstowe (551)
    • Implementacja procedury Cofnij (553)
    • Wyświetlanie pliku pomocy (554)
    • Umieszczanie poleceń na Wstążce (556)
    • Ocena realizacji projektu (556)
    • Działanie narzędzia Operacje tekstowe (558)
  • Dodatkowe informacje na temat narzędzi Excela (558)

Rozdział 17. Tabele przestawne (559)

  • Przykład prostej tabeli przestawnej (559)
    • Tworzenie tabel przestawnych (560)
    • Analiza zarejestrowanego kodu tworzenia tabeli przestawnej (561)
    • Optymalizacja wygenerowanego kodu tworzącego tabelę przestawną (562)
  • Tworzenie złożonych tabel przestawnych (565)
    • Kod tworzący tabelę przestawną (567)
    • Jak działa złożona tabela przestawna? (568)
  • Jednoczesne tworzenie wielu tabel przestawnych (569)
  • Tworzenie odwróconych tabel przestawnych (572)

Rozdział 18. Wykresy (575)

  • Podstawowe wiadomości o wykresach (575)
    • Lokalizacja wykresu (576)
    • Rejestrator makr a wykresy (576)
    • Model obiektu Chart (577)
  • Tworzenie wykresów osadzonych na arkuszu danych (578)
  • Tworzenie wykresu na arkuszu wykresu (579)
  • Wykorzystanie VBA do uaktywnienia wykresu (580)
  • Przenoszenie wykresu (582)
  • Wykorzystanie VBA do deaktywacji wykresu (582)
  • Sprawdzanie, czy wykres został uaktywniony (583)
  • Usuwanie elementów z kolekcji ChartObjects lub Charts (584)
  • Przetwarzanie wszystkich wykresów w pętli (585)
  • Zmiana rozmiarów i wyrównywanie obiektów ChartObject (587)
  • Eksportowanie wykresów (588)
    • Eksportowanie wszystkich obiektów graficznych (589)
  • Zmiana danych prezentowanych na wykresie (590)
    • Modyfikacja danych wykresu na podstawie aktywnej komórki (592)
    • Zastosowanie języka VBA do identyfikacji zakresu danych prezentowanych na wykresie (593)
  • Wykorzystanie VBA do wyświetlania dowolnych etykiet danych na wykresie (596)
  • Wyświetlanie wykresu w oknie formularza UserForm (598)
  • Zdarzenia związane z wykresami (601)
    • Przykład wykorzystania zdarzeń związanych z wykresami (601)
    • Obsługa zdarzeń dla wykresów osadzonych (604)
    • Przykład: zastosowanie zdarzeń dla wykresów osadzonych (606)
  • Jak ułatwić sobie pracę z wykresami przy użyciu VBA? (608)
    • Drukowanie wykresów osadzonych na arkuszu (608)
    • Ukrywanie serii danych poprzez ukrywanie kolumn (608)
    • Tworzenie wykresów, które nie są połączone z danymi (610)
    • Wykorzystanie zdarzenia MouseOver do wyświetlania tekstu (611)
  • Wykresy animowane (614)
    • Przewijanie wykresów (615)
    • Tworzenie wykresu krzywych hipocykloidalnych (617)
    • Tworzenie wykresu-zegara (618)
  • Tworzenie wykresu interaktywnego bez użycia VBA (619)
    • Przygotowanie danych do utworzenia wykresu interaktywnego (620)
    • Tworzenie przycisków opcji dla interaktywnego wykresu (620)
    • Tworzenie listy miast dla wykresu interaktywnego (621)
    • Tworzenie zakresów danych dla wykresu interaktywnego (621)
    • Utworzenie wykresu interaktywnego (623)
  • Tworzenie wykresów przebiegu w czasie (623)

Rozdział 19. Obsługa zdarzeń (627)

  • Co powinieneś wiedzieć o zdarzeniach (627)
    • Sekwencje zdarzeń (628)
    • Gdzie należy umieścić procedury obsługi zdarzeń? (628)
    • Wyłączanie obsługi zdarzeń (630)
    • Wprowadzanie kodu procedury obsługi zdarzeń (631)
    • Procedury obsługi zdarzeń z argumentami (632)
  • Zdarzenia poziomu skoroszytu (634)
    • Zdarzenie Open (634)
    • Zdarzenie Activate (636)
    • Zdarzenie SheetActivate (636)
    • Zdarzenie NewSheet (636)
    • Zdarzenie BeforeSave (637)
    • Zdarzenie Deactivate (637)
    • Zdarzenie BeforePrint (638)
    • Zdarzenie BeforeClose (639)
  • Zdarzenia poziomu arkusza (641)
    • Zdarzenie Change (641)
    • Monitorowanie zmian w wybranym zakresie komórek (642)
    • Zdarzenie SelectionChange (647)
    • Zdarzenie BeforeDoubleClick (648)
    • Zdarzenie BeforeRightClick (648)
  • Zdarzenia dotyczące wykresów (649)
  • Zdarzenia dotyczące aplikacji (649)
    • Włączenie obsługi zdarzeń poziomu aplikacji (651)
    • Sprawdzanie, czy skoroszyt jest otwarty (653)
    • Monitorowanie zdarzeń poziomu aplikacji (654)
  • Zdarzenia dotyczące formularzy UserForm (655)
  • Zdarzenia niezwiązane z obiektami (655)
    • Zdarzenie OnTime (655)
    • Zdarzenie OnKey (658)

Rozdział 20. Interakcje z innymi aplikacjami (663)

  • Uruchamianie innych aplikacji z poziomu Excela (663)
    • Zastosowanie funkcji Shell języka VBA (663)
    • Zastosowanie funkcji ShellExecute interfejsu Windows API (665)
  • Uaktywnianie aplikacji z poziomu Excela (667)
    • Wykorzystanie instrukcji AppActivate (667)
    • Uaktywnianie aplikacji pakietu Microsoft Office (668)
  • Uruchamianie okien dialogowych Panelu sterowania (668)
  • Wykorzystanie automatyzacji w programie Excel (669)
    • Działania z obiektami innych aplikacji z wykorzystaniem automatyzacji (670)
    • Wczesne i późne wiązanie (670)
    • Funkcja GetObject a CreateObject (673)
    • Prosty przykład późnego wiązania (673)
    • Sterowanie Wordem z poziomu Excela (674)
    • Zarządzanie Excelem z poziomu innej aplikacji (677)
  • Wysyłanie spersonalizowanych wiadomości e-mail z wykorzystaniem Outlooka (678)
  • Wysyłanie wiadomości e-mail z załącznikami z poziomu Excela (682)
  • Zastosowanie metody SendKeys (684)

Rozdział 21. Tworzenie i wykorzystanie dodatków (685)

  • Czym są dodatki? (685)
    • Porównanie dodatku ze standardowym skoroszytem (686)
    • Po co tworzy się dodatki? (687)
  • Menedżer dodatków Excela (688)
  • Tworzenie dodatków (689)
  • Przykład tworzenia dodatku (690)
    • Tworzenie opisu dla dodatku (691)
    • Tworzenie dodatku (692)
    • Instalowanie dodatku (693)
    • Testowanie dodatków (694)
    • Dystrybucja dodatków (694)
    • Modyfikowanie dodatku (695)
  • Porównanie plików XLAM i XLSM (695)
    • Pliki XLAM - przynależność do kolekcji z poziomu VBA (696)
    • Widoczność plików XLSM i XLAM (697)
    • Arkusze i wykresy w plikach XLSM i XLAM (697)
    • Dostęp do procedur VBA w dodatku (698)
  • Przetwarzanie dodatków za pomocą kodu VBA (701)
    • Właściwości obiektu AddIn (703)
    • Korzystanie z dodatku jak ze skoroszytu (706)
    • Zdarzenia związane z obiektami Addin (706)
  • Optymalizacja wydajności dodatków (707)
  • Problemy z dodatkami (708)
    • Zapewnienie, że dodatek został zainstalowany (708)
    • Odwoływanie się do innych plików z poziomu dodatku (710)
    • Wykrywanie właściwej wersji Excela dla dodatku (710)

CZĘŚĆ VI. TWORZENIE APLIKACJI (711)

Rozdział 22. Tworzenie pasków narzędzi (713)

  • Wprowadzenie do pracy ze Wstążką (713)
  • VBA i Wstążka (715)
    • Dostęp do poleceń Wstążki (718)
    • Praca ze Wstążką (719)
    • Aktywowanie karty (721)
  • Dostosowywanie Wstążki do własnych potrzeb (721)
    • Prosty przykład kodu RibbonX (722)
    • Prosty przykład kodu RibbonX - podejście 2 (725)
    • Kolejny przykład kodu RibbonX (730)
    • Demo formantów Wstążki (732)
    • Przykład użycia formantu DynamicMenu (738)
    • Więcej wskazówek dotyczących modyfikacji Wstążki (741)
  • Tworzenie pasków narzędzi w starym stylu (742)
    • Ograniczenia funkcjonalności tradycyjnych pasków narzędzi w Excelu 2010 (742)
    • Kod tworzący pasek narzędzi (743)

Rozdział 23. Praca z menu podręcznym (747)

  • Obiekt CommandBar (747)
    • Rodzaje obiektów CommandBar (748)
    • Wyświetlanie menu podręcznych (748)
    • Odwołania do elementów kolekcji CommandBars (749)
    • Odwołania do formantów w obiekcie CommandBar (750)
    • Właściwości formantów obiektu CommandBar (751)
    • Wyświetlanie wszystkich elementów menu podręcznego (752)
  • Wykorzystanie VBA do dostosowywania menu podręcznego (754)
    • Resetowanie menu podręcznego (755)
    • Wyłączanie menu podręcznego (755)
    • Wyłączanie wybranych elementów menu podręcznego (756)
    • Dodawanie nowego elementu do menu podręcznego Cell (756)
    • Dodawanie nowego podmenu do menu podręcznego (758)
  • Menu podręczne i zdarzenia (761)
    • Automatyczne tworzenie i usuwanie menu podręcznego (761)
    • Wyłączanie lub ukrywanie elementów menu podręcznego (762)
    • Tworzenie kontekstowych menu podręcznych (762)

Rozdział 24. Tworzenie systemów pomocy w aplikacjach (765)

  • Systemy pomocy w aplikacjach Excela (765)
    • Pomoc online (766)
  • Systemy pomocy wykorzystujące komponenty Excela (766)
    • Wykorzystanie komentarzy do tworzenia systemów pomocy (768)
    • Wykorzystanie pól tekstowych do wyświetlania pomocy (769)
    • Wykorzystanie arkusza do wyświetlania tekstu pomocy (770)
    • Wyświetlanie pomocy w oknie formularza UserForm (771)
  • Wyświetlanie pomocy w oknie przeglądarki sieciowej (774)
    • Zastosowanie plików w formacie HTML (774)
    • Zastosowanie plików w formacie MHTML (775)
  • Wykorzystanie systemu HTML Help (776)
    • Wykorzystanie metody Help do wyświetlania pomocy w formacie HTML Help (779)
  • Łączenie pliku pomocy z aplikacją (780)
    • Przypisanie tematów pomocy do funkcji VBA (780)

Rozdział 25. Tworzenie aplikacji przyjaznych dla użytkownika (783)

  • Czym jest aplikacja przyjazna dla użytkownika? (783)
  • Kreator amortyzacji pożyczek (783)
    • Obsługa Kreatora amortyzacji pożyczek (784)
    • Struktura skoroszytu Kreatora amortyzacji pożyczek (785)
    • Jak działa Kreator amortyzacji pożyczek? (786)
    • Potencjalne usprawnienia Kreatora amortyzacji pożyczek (793)
  • Wskazówki dotyczące projektowania aplikacji (793)

CZĘŚĆ VII. INNE ZAGADNIENIA (795)

Rozdział 26. Problem kompatybilności aplikacji (797)

  • Co to jest kompatybilność? (797)
  • Rodzaje problemów ze zgodnością (798)
  • Unikaj używania nowych funkcji i mechanizmów (799)
  • Czy aplikacja będzie działać na komputerach Macintosh? (801)
  • Praca z 64-bitową wersją Excela (802)
  • Tworzenie aplikacji dla wielu wersji narodowych (803)
    • Aplikacje obsługujące wiele języków (805)
    • Obsługa języka w kodzie VBA (805)
    • Wykorzystanie właściwości lokalnych (806)
    • Identyfikacja ustawień systemu (807)
    • Ustawienia daty i godziny (809)

Rozdział 27. Operacje na plikach wykonywane za pomocą kodu VBA (811)

  • Najczęściej wykonywane operacje na plikach (811)
    • Zastosowanie poleceń języka VBA do wykonywania operacji na plikach (812)
    • Zastosowanie obiektu FileSystemObject (816)
  • Wyświetlanie rozszerzonych informacji o plikach (820)
  • Operacje z plikami tekstowymi (821)
    • Otwieranie plików tekstowych (822)
    • Odczytywanie plików tekstowych (823)
    • Zapisywanie danych do plików tekstowych (823)
    • Przydzielanie numeru pliku (823)
    • Określanie lub ustawianie pozycji w pliku (824)
    • Instrukcje pozwalające na odczytywanie i zapisywanie plików (824)
  • Przykłady wykonywania operacji na plikach (825)
    • Importowanie danych z pliku tekstowego (825)
    • Eksportowanie zakresu do pliku tekstowego (827)
    • Importowanie pliku tekstowego do zakresu (828)
    • Rejestrowanie wykorzystania Excela (829)
    • Filtrowanie zawartości pliku tekstowego (830)
    • Eksportowanie zakresu komórek do pliku HTML (830)
    • Eksportowanie zakresu komórek do pliku XLM (832)
  • Pakowanie i rozpakowywanie plików (835)
    • Pakowanie plików do formatu ZIP (836)
    • Rozpakowywanie plików ZIP (838)
  • Działania z obiektami danych ActiveX (ADO) (838)

Rozdział 28. Operacje na składnikach języka VBA (841)

  • Podstawowe informacje o środowisku IDE (841)
  • Model obiektowy środowiska IDE (843)
    • Kolekcja VBProjects (844)
  • Wyświetlanie wszystkich składników projektu VBA (846)
  • Wyświetlanie wszystkich procedur VBA w arkuszu (847)
  • Zastępowanie modułu uaktualnioną wersją (848)
  • Zastosowanie języka VBA do generowania kodu VBA (850)
  • Zastosowanie VBA do umieszczenia formantów na formularzu UserForm (852)
    • Operacje z formularzami UserForm w fazie projektowania i wykonania (852)
    • Dodanie 100 przycisków CommandButton w fazie projektowania (854)
  • Programowe tworzenie formularzy UserForm (855)
    • Prosty przykład formularza UserForm (855)
    • Użyteczny (ale już nie tak prosty) przykład dynamicznego formularza UserForm (857)

Rozdział 29. Moduły klas (863)

  • Czym jest moduł klasy? (863)
  • Przykład: utworzenie klasy NumLock (864)
    • Wstawianie modułu klasy (865)
    • Dodawanie kodu VBA do modułu klasy (865)
    • Wykorzystanie klasy NumLock (867)
  • Dodatkowe informacje na temat modułów klas (868)
    • Programowanie właściwości obiektów (868)
    • Programowanie metod obiektów (870)
    • Zdarzenia definiowane w module klasy (871)
  • Przykład: klasa CSVFileClass (871)
    • Zmienne poziomu modułu dla klasy CSVFileClass (872)
    • Definicje właściwości klasy CSVFileClass (872)
    • Definicje metod klasy CSVFileClass (872)
    • Wykorzystanie obiektów CSVFileClass (874)

Rozdział 30. Praca z kolorami (877)

  • Definiowanie kolorów (877)
    • Model kolorów RGB (878)
    • Model kolorów HSL (878)
    • Konwersja kolorów (879)
  • Skala szarości (880)
    • Zamiana kolorów na skalę szarości (883)
    • Wyświetlanie wykresów w skali szarości (883)
  • Eksperymenty z kolorami (885)
  • Praca z motywami dokumentów (886)
    • Kilka słów o motywach dokumentów (886)
    • Kolory motywów dokumentów (887)
    • Wyświetlanie wszystkich kolorów motywu (890)
  • Praca z obiektami Shape (893)
    • Kolor tła kształtu (893)
    • Kształty i kolory motywów (895)
    • Przykłady kształtów (897)
  • Modyfikacja kolorów wykresów (897)

Rozdział 31. Często zadawane pytania na temat programowania w Excelu (901)

  • FAQ - czyli często zadawane pytania (901)
  • Ogólne pytania dotyczące programu Excel (902)
  • Pytania dotyczące edytora Visual Basic (908)
  • Pytania dotyczące procedur (911)
  • Pytania dotyczące funkcji (916)
  • Pytania dotyczące obiektów, właściwości, metod i zdarzeń (919)
  • Pytania dotyczące formularzy UserForm (928)
  • Pytania dotyczące dodatków (932)
  • Pytania dotyczące pasków poleceń (934)

DODATKI (937)

Dodatek A. Zasoby online dotyczące Excela (939)

  • Pomoc systemowa programu Excel (939)
  • Pomoc techniczna firmy Microsoft (940)
    • Opcje pomocy technicznej (940)
    • Baza wiedzy firmy Microsoft (940)
    • Strona domowa programu Microsoft Excel (940)
    • Strona domowa pakietu Microsoft Office (940)
  • Internetowe grupy dyskusyjne (941)
    • Dostęp do grup dyskusyjnych za pomocą czytników grup dyskusyjnych (941)
    • Dostęp do grup dyskusyjnych za pomocą przeglądarki sieciowej (941)
    • Wyszukiwanie informacji w grupach dyskusyjnych (942)
  • Strony internetowe WWW (943)
    • Strona domowa Spreadsheet (943)
    • Strona Daily Dose of Excel (944)
    • Strona o Excelu Jona Peltiera (944)
    • Pearson Software Consulting (944)
    • Contextures (944)
    • Pointy Haired Dilbert (944)
    • Strony o Excelu Davida McRitchie (945)
    • Mr. Excel (945)

Dodatek B. Instrukcje i funkcje VBA (947)

  • Wywoływanie funkcji Excela w instrukcjach VBA (950)

Dodatek C. Kody błędów VBA (957)

Dodatek D. Pliki dołączone do książki (961)

Skorowidz (977)

  • Tytuł: Excel 2010 PL. Programowanie w VBA. Vademecum Walkenbacha
  • Autor: John Walkenbach
  • Tytuł oryginału: Excel 2010 Power Programming with VBA
  • Tłumaczenie: Grzegorz Kowalczyk
  • ISBN: 978-83-283-3816-6, 9788328338166
  • Data wydania: 2013-07-26
  • Format: Ebook
  • Identyfikator pozycji: e21pwv
  • Wydawca: Helion