Excel 2016 PL. Programowanie w VBA. Vademecum Walkenbacha - Onepress

Tytuł oryginału: Excel 2016 Power Programming with VBA (Mr. Spreadsheet's Bookshelf)
Tłumaczenie: Grzegorz Kowalczyk
ISBN: 978-83-283-2859-4
stron: 864, Format: ebook
Data wydania: 2016-12-22
Księgarnia: Onepress
Cena książki: 49,50 zł (poprzednio: 99,00 zł)
Oszczędzasz: 50% (-49,50 zł)
	Wielu z nas nie wyobraża sobie pracy bez Excela. Studenci, naukowcy, biznesmeni, analitycy, księgowi, a nawet gospodynie domowe znajdują dla tego potężnego arkusza kalkulacyjnego najróżniejsze zastosowania. Mimo że możliwości Excela są imponujące, można je jeszcze rozszerzać i budować aplikacje szczególnego przeznaczenia za pomocą dostarczonego przez Microsoft narzędzia — języka Visual Basic for Applications (VBA). Wystarczy tylko poznać składnię i zasady programowania w VBA!
Niniejsza książka jest zaktualizowanym wydaniem unikalnego przewodnika po języku VBA. W przystępny sposób wyjaśniono tu wiele złożonych zagadnień, dzięki czemu szybko zaczniesz pisać programy, które automatyzują wykonywanie różnych zadań w Excelu. Będą to zarówno proste makra, jak i wyrafinowane aplikacje i narzędzia, pozwalające na zaawansowaną interakcję z użytkownikiem. Układ treści w książce pozwala zarówno na systematyczną naukę VBA, jak i szybkie wyszukanie porad i wskazówek umożliwiających rozwiązanie konkretnego zadania. Nie zabrakło również wielu praktycznych przykładów gotowego do użycia kodu.
Najważniejsze zagadnienia ujęte w książce:
- podstawy programowania w VBA, w tym tworzenie funkcji i procedur
 - projektowanie aplikacji arkusza kalkulacyjnego
 - automatyzacja operacji na tabelach przestawnych i wykresach
 - integracja aplikacji Excela z innymi aplikacjami, takimi jak Word czy Outlook
 - praca z zewnętrznymi źródłami danych
 - formularze UserForm
 
Połącz VBA z Excelem i napisz najlepszą aplikację!
Michael Alexander to Microsoft Certified Application Developer (MCAD) i laureat prestiżowego tytułu Microsoft MVP, który otrzymał za bezustanne wspieranie użytkowników Excela. Jest również autorem kilku książek o zaawansowanych technikach analitycznych dla biznesu w MS Excel i Access.
Dick Kusleika od ponad dwudziestu lat pracuje z pakietem Office, a od dwunastu lat zdobywa tytuł Microsoft MVP. Ma ogromne doświadczenia w opracowywaniu rozwiązań bazujących na MS Excel i Access. Jest cenionym szkoleniowcem w dziedzinie obsługi pakietu Office w Australii i w USA.
Osoby które kupowały "Excel 2016 PL. Programowanie w VBA. Vademecum Walkenbacha", wybierały także:
- E-booki. Poradnik dla początkujących e-czytelników 19,67 zł, (5,90 zł -70%)
 - OpenOffice.ux.pl w biurze i nie tylko 46,56 zł, (14,90 zł -68%)
 - Excel zaawansowany. 45 trików w Excelu na formatowanie i porządkowanie danych 77,13 zł, (30,85 zł -60%)
 - Internet a prawo - jak si 47,00 zł, (21,15 zł -55%)
 - Microsoft Excel. Kurs video. Wykresy i wizualizacja danych 198,98 zł, (99,49 zł -50%)
 
Spis treści
Excel 2016 PL. Programowanie w VBA. Vademecum Walkenbacha eBook -- spis treści
O autorach (19)
O korektorze merytorycznym (19)
Przedmowa (21)
- Zakres zagadnień (21)
 - Co musisz wiedzieć? (22)
 - Czym musisz dysponować? (22)
 - Konwencje zastosowane w książce (23) 	
- Polecenia Excela (23)
 - Polecenia edytora VBA (24)
 - Konwencje związane z klawiaturą (24)
 
 - Znaczenie ikon (25)
 - Struktura książki (26) 	
- Część I: Wprowadzenie do języka Excel VBA (26)
 - Część II: Zaawansowane techniki programowania (26)
 - Część III: Praca z formularzami UserForm (26)
 - Część IV: Tworzenie aplikacji (27)
 - Dodatki (27)
 
 - Przykłady (27)
 - Narzędzie Power Utility Pak (27)
 
CZĘŚĆ I. WPROWADZENIE DO JĘZYKA EXCEL VBA (29)
Rozdział 1. Podstawy projektowania aplikacji arkusza kalkulacyjnego (31)
- Czym jest aplikacja arkusza kalkulacyjnego? (31)
 - Etapy projektowania aplikacji (33)
 - Określanie wymagań użytkownika (33)
 - Planowanie aplikacji spełniającej wymagania użytkownika (35)
 - Wybieranie odpowiedniego interfejsu użytkownika (37) 	
- Dostosowywanie Wstążki do potrzeb użytkownika (38)
 - Dostosowywanie menu podręcznego do potrzeb użytkownika (38)
 - Tworzenie klawiszy skrótu (39)
 - Tworzenie niestandardowych okien dialogowych (39)
 - Zastosowanie formantów ActiveX w arkuszu (40)
 - Rozpoczęcie prac projektowych (42)
 
 - Zadania realizowane z myślą o końcowym użytkowniku (43) 	
- Testowanie aplikacji (43)
 - Uodpornianie aplikacji na błędy popełniane przez użytkownika (45)
 - Nadawanie aplikacji przyjaznego, intuicyjnego i estetycznego wyglądu (47)
 - Tworzenie systemu pomocy i dokumentacji przeznaczonej dla użytkownika (48)
 - Dokumentowanie prac projektowych (48)
 - Przekazanie aplikacji użytkownikom (49)
 - Aktualizacja aplikacji (kiedy to konieczne) (49)
 
 - Inne kwestie dotyczące projektowania (50) 	
- Wersja Excela zainstalowana przez użytkownika (50)
 - Wersje językowe (50)
 - Wydajność systemu (51)
 - Tryby karty graficznej (51)
 
 
Rozdział 2. Wprowadzenie do języka VBA (53)
- Rejestrator makr Excela (53) 	
- Tworzenie pierwszego makra (54)
 - Porównanie rejestrowania makr z odwołaniami względnymi i bezwzględnymi (58)
 - Inne zagadnienia związane z makrami (63)
 
 - Praca z edytorem Visual Basic Editor (VBE) (68) 	
- Podstawowe elementy edytora VBE (68)
 - Tajemnice okna Project (70)
 - Tajemnice okna Code (72)
 - Dostosowywanie środowiska edytora Visual Basic (76)
 - Karta Editor Format (78)
 - Karta General (79)
 - Karta Docking (80)
 
 - Podstawowe informacje o języku VBA (80) 	
- Obiekty (81)
 - Kolekcje (82)
 - Właściwości (82)
 
 - Tajemnice obiektów Range (87) 	
- Wyszukiwanie właściwości obiektów Range (87)
 - Właściwość Range (87)
 - Właściwość Cells (89)
 - Właściwość Offset (92)
 
 - Podstawowe zagadnienia, które należy zapamiętać (93)
 - Nie panikuj - nie jesteś sam (95) 	
- Przeczytaj resztę książki (95)
 - Pozwól Excelowi napisać makro za Ciebie (96)
 - Korzystaj z systemu pomocy (96)
 - Używaj przeglądarki obiektów (97)
 - Szukaj kodu w internecie (98)
 - Wykorzystuj fora dyskusyjne użytkowników Excela (99)
 - Odwiedzaj blogi ekspertów (99)
 - Poszukaj szkolenia wideo na YouTube (100)
 - Ucz się z Microsoft Office Dev Center (100)
 - Analizuj inne aplikacje Excela, które są używane w Twojej organizacji (101)
 - Zapytaj lokalnego guru (101)
 
 
Rozdział 3. Podstawy programowania w języku VBA (103)
- Przegląd elementów języka VBA (103)
 - Komentarze (106)
 - Zmienne, typy danych i stałe (107) 	
- Definiowanie typów danych (108)
 - Deklarowanie zmiennych (110)
 - Zasięg zmiennych (113)
 - Zastosowanie stałych (116)
 - Praca z łańcuchami tekstu (118)
 - Przetwarzanie dat (118)
 
 - Instrukcje przypisania (120)
 - Tablice (122) 	
- Deklarowanie tablic (123)
 - Deklarowanie tablic wielowymiarowych (123)
 - Deklarowanie tablic dynamicznych (124)
 
 - Zmienne obiektowe (124)
 - Typy danych definiowane przez użytkownika (126)
 - Wbudowane funkcje VBA (127)
 - Praca z obiektami i kolekcjami (130) 	
- Polecenie With ... End With (130)
 - Polecenie For Each ... Next (131)
 
 - Sterowanie sposobem wykonywania procedur (133) 	
- Polecenie GoTo (134)
 - Polecenie If ... Then (135)
 - Polecenie Select Case (139)
 - Wykonywanie bloku instrukcji w ramach pętli (143)
 
 
Rozdział 4. Tworzenie procedur w języku VBA (153)
- Kilka słów o procedurach (153) 	
- Deklarowanie procedury Sub (154)
 - Zasięg procedury (155)
 
 - Wykonywanie procedur Sub (157) 	
- Uruchamianie procedury przy użyciu polecenia Run Sub/UserForm (158)
 - Uruchamianie procedury z poziomu okna dialogowego Makro (158)
 - Uruchamianie procedury przy użyciu skrótu z klawiszem Ctrl (159)
 - Uruchamianie procedury za pomocą Wstążki (160)
 - Uruchamianie procedur za pośrednictwem niestandardowego menu podręcznego (161)
 - Wywoływanie procedury z poziomu innej procedury (161)
 - Uruchamianie procedury poprzez kliknięcie obiektu (166)
 - Wykonywanie procedury po wystąpieniu określonego zdarzenia (168)
 - Uruchamianie procedury z poziomu okna Immediate (169)
 
 - Przekazywanie argumentów procedurom (170)
 - Metody obsługi błędów (173) 	
- Przechwytywanie błędów (174)
 - Przykłady kodu źródłowego obsługującego błędy (175)
 
 - Praktyczny przykład wykorzystujący procedury Sub (179) 	
- Cel (179)
 - Wymagania projektowe (179)
 - Co już wiesz (180)
 - Podejście do zagadnienia (181)
 - Wstępne rejestrowanie makr (181)
 - Przygotowania (183)
 - Tworzenie kodu źródłowego (184)
 - Tworzenie procedury sortującej (185)
 - Dodatkowe testy (190)
 - Usuwanie problemów (191)
 - Dostępność narzędzia (194)
 - Ocena projektu (195)
 
 
Rozdział 5. Tworzenie funkcji w języku VBA (197)
- Porównanie procedur Sub i Function (198)
 - Dlaczego tworzymy funkcje niestandardowe? (198)
 - Twoja pierwsza funkcja (199) 	
- Zastosowanie funkcji w arkuszu (200)
 - Zastosowanie funkcji w procedurze języka VBA (201)
 - Analiza funkcji niestandardowej (201)
 
 - Procedury Function (204) 	
- Zasięg funkcji (205)
 - Wywoływanie procedur Function (206)
 
 - Argumenty funkcji (209)
 - Przykłady funkcji (210) 	
- Funkcja bezargumentowa (210)
 - Funkcje jednoargumentowe (213)
 - Funkcje z dwoma argumentami (216)
 - Funkcja pobierająca tablicę jako argument (217)
 - Funkcje z argumentami opcjonalnymi (218)
 - Funkcje zwracające tablicę VBA (220)
 - Funkcje zwracające wartość błędu (223)
 - Funkcje o nieokreślonej liczbie argumentów (224)
 
 - Emulacja funkcji arkuszowej SUMA (226)
 - Rozszerzone funkcje daty (229)
 - Wykrywanie i usuwanie błędów w funkcjach (231)
 - Okno dialogowe Wstawianie funkcji (233) 	
- Zastosowanie metody MacroOptions (233)
 - Definiowanie kategorii funkcji (235)
 - Dodawanie opisu funkcji (237)
 
 - Zastosowanie dodatków do przechowywania funkcji niestandardowych (237)
 - Korzystanie z Windows API (238) 	
- Przykłady zastosowania funkcji interfejsu API systemu Windows (239)
 - Identyfikacja katalogu domowego systemu Windows (239)
 - Wykrywanie wciśnięcia klawisza Shift (241)
 - Dodatkowe informacje na temat funkcji interfejsu API (242)
 
 
Rozdział 6. Obsługa zdarzeń (243)
- Co powinieneś wiedzieć o zdarzeniach (243) 	
- Sekwencje zdarzeń (245)
 - Gdzie należy umieścić procedury obsługi zdarzeń? (245)
 - Wyłączanie obsługi zdarzeń (247)
 - Tworzenie kodu procedury obsługi zdarzeń (248)
 - Procedury obsługi zdarzeń z argumentami (249)
 
 - Zdarzenia poziomu skoroszytu (251) 	
- Zdarzenie Open (253)
 - Zdarzenie Activate (254)
 - Zdarzenie SheetActivate (254)
 - Zdarzenie NewSheet (254)
 - Zdarzenie BeforeSave (255)
 - Zdarzenie Deactivate (255)
 - Zdarzenie BeforePrint (256)
 - Zdarzenie BeforeClose (257)
 
 - Zdarzenia poziomu arkusza (259) 	
- Zdarzenie Change (260)
 - Monitorowanie zmian w wybranym zakresie komórek (261)
 - Zdarzenie SelectionChange (266)
 - Zdarzenie BeforeDoubleClick (267)
 - Zdarzenie BeforeRightClick (268)
 
 - Zdarzenia dotyczące aplikacji (269) 	
- Włączenie obsługi zdarzeń poziomu aplikacji (271)
 - Sprawdzanie, czy skoroszyt jest otwarty (271)
 - Monitorowanie zdarzeń poziomu aplikacji (273)
 
 - Zdarzenia niezwiązane z obiektami (273) 	
- Zdarzenie OnTime (274)
 - Zdarzenie OnKey (275)
 
 
Rozdział 7. Przykłady i techniki programowania w języku VBA (281)
- Nauka poprzez praktykę (281)
 - Przetwarzanie zakresów (282) 	
- Kopiowanie zakresów (282)
 - Przenoszenie zakresów (284)
 - Kopiowanie zakresu o zmiennej wielkości (284)
 - Zaznaczanie oraz identyfikacja różnego typu zakresów (286)
 - Zmiana rozmiaru zakresu komórek (288)
 - Wprowadzanie wartości do komórki (289)
 - Wprowadzanie wartości do następnej pustej komórki (291)
 - Wstrzymywanie działania makra w celu umożliwienia pobrania zakresu wyznaczonego przez użytkownika (292)
 - Zliczanie zaznaczonych komórek (294)
 - Określanie typu zaznaczonego zakresu (295)
 - Wydajne przetwarzanie komórek zaznaczonego zakresu przy użyciu pętli (297)
 - Usuwanie wszystkich pustych wierszy (300)
 - Powielanie wierszy (301)
 - Określanie, czy zakres zawiera się w innym zakresie (303)
 - Określanie typu danych zawartych w komórce (303)
 - Odczytywanie i zapisywanie zakresów (305)
 - Lepsza metoda zapisywania danych do zakresu komórek (306)
 - Przenoszenie zawartości tablic jednowymiarowych (309)
 - Przenoszenie zawartości zakresu do tablicy typu Variant (309)
 - Zaznaczanie komórek na podstawie wartości (310)
 - Kopiowanie nieciągłego zakresu komórek (312)
 
 - Przetwarzanie skoroszytów i arkuszy (314) 	
- Zapisywanie wszystkich skoroszytów (314)
 - Zapisywanie i zamykanie wszystkich skoroszytów (315)
 - Ukrywanie wszystkich komórek arkusza poza zaznaczonym zakresem (315)
 - Tworzenie spisu treści zawierającego hiperłącza (317)
 - Synchronizowanie arkuszy (318)
 
 - Techniki programowania w języku VBA (319) 	
- Przełączanie wartości właściwości typu logicznego (319)
 - Wyświetlanie daty i czasu (320)
 - Wyświetlanie czasu w formie przyjaznej dla użytkownika (321)
 - Pobieranie listy czcionek (323)
 - Sortowanie tablicy (324)
 - Przetwarzanie grupy plików (326)
 
 - Ciekawe funkcje, których możesz użyć w swoich projektach (327) 	
- Funkcja FileExists (328)
 - Funkcja FileNameOnly (328)
 - Funkcja PathExists (329)
 - Funkcja RangeNameExists (329)
 - Funkcja SheetExists (330)
 - Funkcja WorkbookIsOpen (330)
 - Pobieranie wartości z zamkniętego skoroszytu (331)
 
 - Użyteczne, niestandardowe funkcje arkuszowe (333) 	
- Funkcje zwracające informacje o formatowaniu komórki (333)
 - Wyświetlanie daty zapisania lub wydrukowania pliku (335)
 - Obiekty nadrzędne (337)
 - Zliczanie komórek, których wartości zawierają się pomiędzy dwoma wartościami (338)
 - Wyznaczanie ostatniej niepustej komórki kolumny lub wiersza (339)
 - Czy dany łańcuch tekstu jest zgodny ze wzorcem? (340)
 - Wyznaczanie n-tego elementu łańcucha (342)
 - Zamiana wartości na postać słowną (343)
 - Funkcja wielofunkcyjna (344)
 - Funkcja SHEETOFFSET (345)
 - Zwracanie maksymalnej wartości ze wszystkich arkuszy (345)
 - Zwracanie tablicy zawierającej unikatowe, losowo uporządkowane liczby całkowite (347)
 - Porządkowanie zakresu w losowy sposób (348)
 - Sortowanie zakresów (350)
 
 - Wywołania funkcji interfejsu Windows API (351) 	
- Deklaracje API (351)
 - Określanie skojarzeń plików (352)
 - Pobieranie informacji dotyczących drukarki domyślnej (354)
 - Pobieranie informacji o aktualnej rozdzielczości karty graficznej (355)
 - Odczytywanie zawartości rejestru systemu Windows i zapisywanie w nim danych (356)
 
 
CZĘŚĆ II. ZAAWANSOWANE TECHNIKI PROGRAMOWANIA (359)
Rozdział 8. Tabele przestawne (361)
- Przykład prostej tabeli przestawnej (361) 	
- Tworzenie tabel przestawnych (362)
 - Analiza zarejestrowanego kodu tworzącego tabelę przestawną (365)
 - Optymalizacja wygenerowanego kodu tworzącego tabelę przestawną (365)
 
 - Tworzenie złożonych tabel przestawnych (368) 	
- Kod tworzący tabelę przestawną (370)
 - Jak działa złożona tabela przestawna? (371)
 
 - Jednoczesne tworzenie wielu tabel przestawnych (373)
 - Tworzenie odwróconych tabel przestawnych (376)
 
Rozdział 9. Wykresy (379)
- Podstawowe wiadomości o wykresach (379) 	
- Lokalizacja wykresu (380)
 - Rejestrator makr a wykresy (381)
 - Model obiektu Chart (381)
 
 - Tworzenie wykresów osadzonych na arkuszu danych (383)
 - Tworzenie wykresu na arkuszu wykresu (384)
 - Modyfikowanie wykresów (385)
 - Wykorzystanie VBA do uaktywnienia wykresu (386)
 - Przenoszenie wykresu (387)
 - Wykorzystanie VBA do dezaktywacji wykresu (389)
 - Sprawdzanie, czy wykres został uaktywniony (389)
 - Usuwanie elementów z kolekcji ChartObjects lub Charts (390)
 - Przetwarzanie wszystkich wykresów w pętli (391)
 - Zmiana rozmiarów i wyrównywanie obiektów ChartObject (394)
 - Tworzenie dużej liczby wykresów (395)
 - Eksportowanie wykresów (398) 	
- Eksportowanie wszystkich obiektów graficznych (398)
 
 - Zmiana danych prezentowanych na wykresie (400) 	
- Modyfikacja danych wykresu na podstawie aktywnej komórki (401)
 - Zastosowanie języka VBA do identyfikacji zakresu danych prezentowanych na wykresie (403)
 
 - Wykorzystanie VBA do wyświetlania dowolnych etykiet danych na wykresie (406)
 - Wyświetlanie wykresu w oknie formularza UserForm (410)
 - Zdarzenia związane z wykresami (412) 	
- Przykład wykorzystania zdarzeń związanych z wykresami (413)
 - Obsługa zdarzeń dla wykresów osadzonych (416)
 - Przykład zastosowania zdarzeń dla wykresów osadzonych (417)
 
 - Jak ułatwić sobie pracę z wykresami przy użyciu VBA? (419) 	
- Drukowanie wykresów osadzonych na arkuszu (420)
 - Tworzenie wykresów, które nie są połączone z danymi (420)
 - Wykorzystanie zdarzenia MouseOver do wyświetlania tekstu (422)
 - Przewijanie wykresów (425)
 
 - Tworzenie wykresów przebiegu w czasie (427)
 
Rozdział 10. Interakcje z innymi aplikacjami (431)
- Automatyzacja zadań w pakiecie Microsoft Office (431) 	
- Koncepcja wiązań (432)
 - Przykład prostej automatyzacji (435)
 
 - Sterowanie bazą danych Access z poziomu Excela (435) 	
- Uruchamianie zapytań bazy danych Access z poziomu Excela (436)
 - Uruchamianie makr Accessa z poziomu Excela (437)
 
 - Sterowanie edytorem Word z poziomu Excela (438) 	
- Przesyłanie danych z Excela do dokumentu Worda (438)
 - Symulacja tworzenia korespondencji seryjnej z użyciem Worda (439)
 
 - Sterowanie programem PowerPoint z poziomu Excela (442) 	
- Przesyłanie danych z Excela do prezentacji PowerPoint (442)
 - Przesyłanie wszystkich wykresów z arkusza Excela do prezentacji PowerPoint (443)
 - Zamiana skoroszytu na prezentację PowerPoint (445)
 
 - Sterowanie programem Outlook z poziomu Excela (446) 	
- Wysyłanie aktywnego skoroszytu jako załącznika (446)
 - Wysyłanie wybranego zakresu komórek jako załącznika wiadomości (447)
 - Wysyłanie pojedynczego arkusza jako załącznika wiadomości (449)
 - Wysyłanie wiadomości do wszystkich adresatów z listy kontaktów (450)
 
 - Uruchamianie innych aplikacji z poziomu Excela (451) 	
- Zastosowanie funkcji Shell języka VBA (451)
 - Zastosowanie funkcji ShellExecute interfejsu Windows API (453)
 - Wykorzystanie instrukcji AppActivate (455)
 - Uruchamianie okien dialogowych Panelu sterowania (456)
 
 
Rozdział 11. Praca z danymi zewnętrznymi i plikami (457)
- Praca z danymi ze źródeł zewnętrznych (457) 	
- Ręczne tworzenie połączenia z zewnętrznymi źródłami danych (458)
 - Ręczna modyfikacja połączeń z zewnętrznymi źródłami danych (461)
 - Zastosowanie języka VBA do tworzenia dynamicznych połączeń danych (463)
 - Przechodzenie w pętli przez wszystkie połączenia skoroszytu (465)
 
 - Zastosowanie ADO i VBA do pobierania danych ze źródeł zewnętrznych (466) 	
- Ciąg połączenia (466)
 - Deklarowanie zestawu rekordów (468)
 - Odwołania do biblioteki obiektów ADO (469)
 - Łączenie wszystkiego razem w kodzie procedury (470)
 - Zastosowanie obiektów ADO w aktywnym skoroszycie (472)
 
 - Operacje z plikami tekstowymi (474) 	
- Otwieranie plików tekstowych (475)
 - Odczytywanie plików tekstowych (476)
 - Zapisywanie danych do plików tekstowych (476)
 - Przydzielanie numeru pliku (476)
 - Określanie lub ustawianie pozycji w pliku (477)
 - Instrukcje pozwalające na odczytywanie i zapisywanie plików (478)
 
 - Przykłady wykonywania operacji na plikach (478) 	
- Importowanie danych z pliku tekstowego (478)
 - Eksportowanie zakresu do pliku tekstowego (479)
 - Importowanie pliku tekstowego do zakresu (480)
 - Logowanie wykorzystania Excela (481)
 - Filtrowanie zawartości pliku tekstowego (482)
 
 - Najczęściej wykonywane operacje na plikach (483) 	
- Zastosowanie poleceń języka VBA do wykonywania operacji na plikach (483)
 - Zastosowanie obiektu FileSystemObject (488)
 
 - Pakowanie i rozpakowywanie plików (491) 	
- Pakowanie plików do formatu ZIP (492)
 - Rozpakowywanie plików ZIP (493)
 
 
CZĘŚĆ III. PRACA Z FORMULARZAMI USERFORM (495)
Rozdział 12. Tworzenie własnych okien dialogowych (497)
- Zanim rozpoczniesz tworzenie formularza UserForm (497)
 - Okno wprowadzania danych (498) 	
- Funkcja InputBox języka VBA (498)
 - Metoda Application.InputBox (500)
 
 - Funkcja MsgBox języka VBA (504)
 - Metoda GetOpenFilename programu Excel (509)
 - Metoda GetSaveAsFilename programu Excel (513)
 - Okno wybierania katalogu (514)
 - Wyświetlanie wbudowanych okien dialogowych Excela (514)
 - Wyświetlanie formularza danych (517) 	
- Wyświetlanie formularza wprowadzania danych (518)
 - Wyświetlanie formularza wprowadzania danych za pomocą VBA (519)
 
 
Rozdział 13. Wprowadzenie do formularzy UserForm (521)
- Jak Excel obsługuje niestandardowe okna dialogowe (521)
 - Wstawianie nowego formularza UserForm (522)
 - Dodawanie formantów do formularza UserForm (523)
 - Formanty okna Toolbox (524) 	
- Formant CheckBox (524)
 - Formant ComboBox (525)
 - Formant CommandButton (525)
 - Formant Frame (525)
 - Formant Image (526)
 - Formant Label (526)
 - Formant ListBox (526)
 - Formant MultiPage (526)
 - Formant OptionButton (526)
 - Formant RefEdit (527)
 - Formant ScrollBar (527)
 - Formant SpinButton (527)
 - Formant TabStrip (527)
 - Formant TextBox (527)
 - Formant ToggleButton (528)
 
 - Modyfikowanie formantów formularza UserForm (529)
 - Modyfikowanie właściwości formantów (531) 	
- Zastosowanie okna Properties (531)
 - Wspólne właściwości (533)
 - Uwzględnienie wymagań użytkowników preferujących korzystanie z klawiatury (535)
 
 - Wyświetlanie formularza UserForm (537) 	
- Zmiana położenia formularza na ekranie (538)
 - Wyświetlanie niemodalnych okien formularzy UserForm (538)
 - Wyświetlanie formularza UserForm na podstawie zmiennej (539)
 - Ładowanie formularza UserForm (539)
 - Procedury obsługi zdarzeń (539)
 
 - Zamykanie formularza UserForm (540)
 - Przykład tworzenia formularza UserForm (542) 	
- Tworzenie formularza UserForm (542)
 - Tworzenie kodu procedury wyświetlającej okno dialogowe (545)
 - Testowanie okna dialogowego (545)
 - Dodawanie procedur obsługi zdarzeń (547)
 - Zakończenie tworzenia okna dialogowego (548)
 
 - Zdarzenia powiązane z formularzem UserForm (549) 	
- Zdobywanie informacji na temat zdarzeń (549)
 - Zdarzenia formularza UserForm (550)
 - Zdarzenia związane z formantem SpinButton (551)
 - Współpraca formantu SpinButton z formantem TextBox (553)
 
 - Odwoływanie się do formantów formularza UserForm (556)
 - Dostosowywanie okna Toolbox do własnych wymagań (558) 	
- Dodawanie nowych kart (558)
 - Dostosowywanie lub łączenie formantów (559)
 - Dodawanie nowych formantów ActiveX (560)
 
 - Tworzenie szablonów formularzy UserForm (561)
 - Lista kontrolna tworzenia i testowania formularzy UserForm (563)
 
Rozdział 14. Przykłady formularzy UserForm (565)
- Tworzenie formularza UserForm pełniącego funkcję menu (566) 	
- Zastosowanie przycisków CommandButton w formularzach UserForm (566)
 - Zastosowanie formantów ListBox w formularzach UserForm (567)
 
 - Zaznaczanie zakresów przy użyciu formularza UserForm (568)
 - Tworzenie okna powitalnego (570)
 - Wyłączanie przycisku Zamknij formularza UserForm (573)
 - Zmiana wielkości formularza UserForm (574)
 - Powiększanie i przewijanie arkusza przy użyciu formularza UserForm (575)
 - Zastosowania formantu ListBox (577) 	
- Tworzenie listy elementów formantu ListBox (578)
 - Identyfikowanie zaznaczonego elementu listy formantu ListBox (584)
 - Identyfikowanie wielu zaznaczonych elementów listy formantu ListBox (585)
 - Wiele list w jednym formancie ListBox (586)
 - Przenoszenie elementów listy formantu ListBox (587)
 - Zmiana kolejności elementów listy formantu ListBox (589)
 - Wielokolumnowe formanty ListBox (591)
 - Zastosowanie formantu ListBox do wybierania wierszy arkusza (593)
 - Uaktywnianie arkusza za pomocą formantu ListBox (596)
 - Filtrowanie zawartości listy za pomocą pola tekstowego (598)
 
 - Zastosowanie formantu MultiPage na formularzach UserForm (601)
 - Korzystanie z formantów zewnętrznych (602)
 - Animowanie etykiet (605)
 
Rozdział 15. Zaawansowane techniki korzystania z formularzy UserForm (609)
- Niemodalne okna dialogowe (610)
 - Wyświetlanie wskaźnika postępu zadania (614) 	
- Tworzenie samodzielnego wskaźnika postępu zadania (615)
 - Wyświetlanie wskaźnika postępu zintegrowanego z formularzem UserForm (619)
 - Tworzenie innych, niegraficznych wskaźników postępu (623)
 
 - Tworzenie kreatorów (626) 	
- Konfigurowanie formantu MultiPage w celu utworzenia kreatora (628)
 - Dodawanie przycisków do formularza UserForm kreatora (628)
 - Programowanie przycisków kreatora (629)
 - Zależności programowe w kreatorach (631)
 - Wykonywanie zadań za pomocą kreatorów (632)
 
 - Emulacja funkcji MsgBox (633) 	
- Emulacja funkcji MsgBox: kod funkcji MyMsgBox (635)
 - Jak działa funkcja MyMsgBox (636)
 - Wykorzystanie funkcji MyMsgBox do emulacji funkcji MsgBox (638)
 
 - Formularz UserForm z formantami, których położenie można zmieniać (638)
 - Formularz UserForm bez paska tytułowego (640)
 - Symulacja paska narzędzi za pomocą formularza UserForm (642)
 - Emulowanie panelu zadań za pomocą formularza UserForm (644)
 - Formularze UserForm z możliwością zmiany rozmiaru (646)
 - Obsługa wielu przycisków formularza UserForm za pomocą jednej procedury obsługi zdarzeń (651)
 - Wybór koloru za pomocą formularza UserForm (654)
 - Wyświetlanie wykresów na formularzach UserForm (656) 	
- Zapisywanie wykresu w postaci pliku GIF (657)
 - Modyfikacja właściwości Picture formantu Image (657)
 
 - Tworzenie półprzezroczystych formularzy UserForm (657)
 - Układanka na formularzu UserForm (660)
 - Poker na formularzu UserForm (661)
 
CZĘŚĆ IV. TWORZENIE APLIKACJI (663)
Rozdział 16. Tworzenie i wykorzystanie dodatków (665)
- Czym są dodatki? (665) 	
- Porównanie dodatku ze standardowym skoroszytem (666)
 - Po co tworzy się dodatki? (667)
 
 - Menedżer dodatków Excela (669)
 - Tworzenie dodatków (671)
 - Przykład tworzenia dodatku (672) 	
- Tworzenie opisu dla dodatku (674)
 - Tworzenie dodatku (674)
 - Instalowanie dodatku (676)
 - Testowanie dodatków (677)
 - Dystrybucja dodatków (677)
 - Modyfikowanie dodatku (677)
 
 - Porównanie plików XLAM i XLSM (679) 	
- Pliki XLAM - przynależność do kolekcji z poziomu VBA (679)
 - Widoczność plików XLSM i XLAM (680)
 - Arkusze i wykresy w plikach XLSM i XLAM (680)
 - Dostęp do procedur VBA w dodatku (681)
 
 - Przetwarzanie dodatków za pomocą kodu VBA (685) 	
- Dodawanie nowych elementów do kolekcji AddIns (685)
 - Usuwanie elementów z kolekcji AddIns (687)
 - Właściwości obiektu AddIn (687)
 - Korzystanie z dodatku jak ze skoroszytu (691)
 - Zdarzenia związane z obiektami AddIn (691)
 
 - Optymalizacja wydajności dodatków (692)
 - Problemy z dodatkami (693) 	
- Upewnij się, że dodatek został zainstalowany (693)
 - Odwoływanie się do innych plików z poziomu dodatku (695)
 - Wykrywanie właściwej wersji Excela dla dodatku (696)
 
 
Rozdział 17. Praca ze Wstążką (697)
- Wprowadzenie do pracy ze Wstążką (697)
 - Dostosowywanie Wstążki do własnych potrzeb (700) 	
- Dodawanie nowych przycisków do Wstążki (700)
 - Dodawanie przycisków do paska narzędzi Szybki dostęp (703)
 - Ograniczenia w dostosowywaniu Wstążki (703)
 
 - Modyfikowanie Wstążki za pomocą kodu RibbonX (705) 	
- Dodawanie przycisków do istniejącej karty (705)
 - Dodawanie pola wyboru do istniejącej karty (712)
 - Demo formantów Wstążki (716)
 - Przykład użycia formantu DynamicMenu (724)
 - Więcej wskazówek dotyczących modyfikacji Wstążki (726)
 
 - VBA i Wstążka (728) 	
- Dostęp do poleceń Wstążki (729)
 - Praca ze Wstążką (730)
 - Aktywowanie karty (732)
 
 - Tworzenie pasków narzędzi w starym stylu (732) 	
- Ograniczenia funkcjonalności tradycyjnych pasków narzędzi w Excelu 2007 i nowszych wersjach (733)
 - Kod tworzący pasek narzędzi (733)
 
 
Rozdział 18. Praca z menu podręcznym (737)
- Obiekt CommandBar (737) 	
- Rodzaje obiektów CommandBar (738)
 - Wyświetlanie menu podręcznych (738)
 - Odwołania do elementów kolekcji CommandBars (740)
 - Odwołania do formantów obiektu CommandBar (740)
 - Właściwości formantów obiektu CommandBar (742)
 - Wyświetlanie wszystkich elementów menu podręcznego (743)
 
 - Wykorzystanie VBA do dostosowywania menu podręcznego (746) 	
- Menu podręczne w jednodokumentowym interfejsie Excela (746)
 - Resetowanie menu podręcznego (748)
 - Wyłączanie menu podręcznego (749)
 - Wyłączanie wybranych elementów menu podręcznego (750)
 - Dodawanie nowego elementu do menu podręcznego Cell (750)
 - Dodawanie nowego podmenu do menu podręcznego (753)
 - Ograniczanie zasięgu modyfikacji menu podręcznego do jednego skoroszytu (755)
 
 - Menu podręczne i zdarzenia (756) 	
- Automatyczne tworzenie i usuwanie menu podręcznego (756)
 - Wyłączanie lub ukrywanie elementów menu podręcznego (757)
 - Tworzenie kontekstowych menu podręcznych (758)
 
 
Rozdział 19. Tworzenie systemów pomocy w aplikacjach (761)
- Systemy pomocy w aplikacjach Excela (761)
 - Systemy pomocy wykorzystujące komponenty Excela (764) 	
- Wykorzystanie komentarzy do tworzenia systemów pomocy (764)
 - Wykorzystanie pól tekstowych do wyświetlania pomocy (766)
 - Wykorzystanie arkusza do wyświetlania tekstu pomocy (767)
 - Wyświetlanie pomocy w oknie formularza UserForm (768)
 
 - Wyświetlanie pomocy w oknie przeglądarki sieciowej (772) 	
- Zastosowanie plików w formacie HTML (772)
 - Zastosowanie plików w formacie MHTML (773)
 
 - Wykorzystanie systemu HTML Help (775) 	
- Wykorzystanie metody Help do wyświetlania pomocy w formacie HTML Help (778)
 - Łączenie pliku pomocy z aplikacją (779)
 - Przypisanie tematów pomocy do funkcji VBA (779)
 
 
Rozdział 20. Moduły klas (783)
- Czym jest moduł klasy? (783) 	
- Wbudowane moduły klas (784)
 - Niestandardowe moduły klas (785)
 
 - Tworzymy klasę NumLock (786) 	
- Wstawianie modułu klasy (786)
 - Dodawanie kodu VBA do modułu klasy (787)
 - Zastosowanie klasy NumLock (789)
 
 - Programowanie właściwości, metod i zdarzeń (790) 	
- Programowanie właściwości obiektów (790)
 - Programowanie metod obiektów (792)
 - Zdarzenia modułu klasy (792)
 
 - Zdarzenia obiektu QueryTable (793)
 - Tworzenie klas przechowujących inne klasy (797) 	
- Tworzenie klas CSalesRep oraz CSalesReps (797)
 - Tworzenie klas CInvoice oraz CInvoices (799)
 - Wypełnianie klasy nadrzędnej obiektami (801)
 - Obliczanie prowizji (802)
 
 
Rozdział 21. Problem kompatybilności aplikacji (805)
- Co to jest kompatybilność? (805)
 - Rodzaje problemów ze zgodnością (806)
 - Unikaj używania nowych funkcji i mechanizmów (808)
 - Czy aplikacja będzie działać na komputerach Macintosh? (810)
 - Praca z 64-bitową wersją Excela (811)
 - Tworzenie aplikacji dla wielu wersji narodowych (813) 	
- Aplikacje obsługujące wiele języków (813)
 - Obsługa języka w kodzie VBA (816)
 - Wykorzystanie właściwości lokalnych (816)
 - Identyfikacja ustawień systemu (817)
 - Ustawienia daty i godziny (819)
 
 
DODATKI (821)
Dodatek A. Instrukcje i funkcje VBA (823)
Skorowidz (833)





