Excel 2007 PL. Programowanie w VBA. Vademecum profesjonalisty - Helion
Tytuł oryginału: Excel 2007 Power Programming with VBA (Mr. Spreadsheet's Bookshelf)
TÅ‚umaczenie: Grzegorz Kowalczyk
ISBN: 978-83-246-2224-5
stron: 992, Format: 172x245, okładka: twarda
Data wydania: 2009-11-23
Księgarnia: Helion
Cena książki: 119,00 zł
Poznaj zaawansowane możliwości Excela i spraw,
aby program pracował dla Ciebie!
- Jak definiować kolory w kodzie VBA?
- Jak napisać procedurę obsługi zdarzenia?
- Jak utworzyć nową kategorię funkcji?
Jeśli zajmujesz się tworzeniem aplikacji w ramach arkusza kalkulacyjnego, z którego korzystają inni użytkownicy, i zależy Ci na jak najszerszym wykorzystaniu możliwości Excela, powinieneś skorzystać z tej książki. W Excelu 2007 wprowadzono całkiem sporo nowych funkcji i mechanizmów, a dzięki informacjom zawartym w tym profesjonalnym podręczniku nauczysz się pisać programy automatyzujące wykonywanie wielu zadań w tym programie. Zdobędziesz wiedzę, która sprawi, że to on będzie pracował dla Ciebie!
Książka "Excel 2007 PL. Programowanie w VBA. Vademecum profesjonalisty" jest wręcz przepełniona procedurami, wskazówkami i pomysłami pozwalającymi na rozszerzenie funkcjonalności Excela 2007 przy użyciu języka Visual Basic for Applications. Z podręcznika, napisanego przez jeden z największych autorytetów w tej dziedzinie, dowiesz się, jak dostosowywać do własnych potrzeb formularze UserForm, kreować nowe narzędzia, wykorzystywać VBA do pracy z wykresami i tabelami przestawnymi, a także tworzyć procedury obsługi zdarzeń. Nauczysz się również pracować z procedurami i funkcjami oraz pisać programy współpracujące z innymi aplikacjami.
- Projektowanie aplikacji w programie Excel
- Język Visual Basic for Applications
- Zastosowanie formularzy UserForm
- Zaawansowane metody programowania
- Formularze i moduły klas
- Tworzenie dodatków do Excela
- Niestandardowe okna dialogowe
- Tworzenie systemów pomocy dla aplikacji
- Tabele przestawne, wykresy i obsługa zdarzeń
Zwiększ możliwości Excela i projektuj wspaniałe aplikacje!
Osoby które kupowały "Excel 2007 PL. Programowanie w VBA. Vademecum profesjonalisty", wybierały także:
- Excel 2019. Kurs video. Postaw pierwsze kroki! 79,00 zł, (31,60 zł -60%)
- Power Query i Power Pivot. Kurs video. Poznaj narzędzia Excel BI 249,00 zł, (99,60 zł -60%)
- Excel zaawansowany. 45 trików w Excelu na formatowanie i porządkowanie danych 77,13 zł, (30,85 zł -60%)
- Excel 2016 i programowanie VBA. Kurs video. Poziom drugi. Zaawansowane techniki tworzenia makr 69,00 zł, (27,60 zł -60%)
- Excel - tabele przestawne. Kurs video. Raporty i analiza danych 39,90 zł, (15,96 zł -60%)
Spis treści
Excel 2007 PL. Programowanie w VBA. Vademecum profesjonalisty -- spis treści
O autorze (25)
Przedmowa (27)
Część I: Podstawowe informacje (35)
Rozdział 1. Skąd się wziął Excel 2007? (37)
- Historia arkuszy kalkulacyjnych w zarysie (37)
- Wszystko zaczęło się od programu VisiCalc (37)
- Lotus 1-2-3 (38)
- Quattro Pro (41)
- Microsoft Excel (42)
- Excel jako dobre narzędzie dla projektantów aplikacji (47)
- Rola Excela w strategii Microsoftu (48)
Rozdział 2. Program Excel w zarysie (49)
- Myślenie w kategoriach obiektów (49)
- Skoroszyty (50)
- Arkusze (50)
- Arkusze wykresów (52)
- Arkusze makr XLM (52)
- Arkusze dialogowe programów Excel 5 i 95 (52)
- Interfejs użytkownika programu Excel (53)
- Wprowadzenie do Wstążki (54)
- Menu podręczne (59)
- Okna dialogowe (60)
- Skróty klawiszowe (61)
- Tagi inteligentne (62)
- Panel zadań (62)
- Dostosowywanie wyświetlania do własnych potrzeb (63)
- Wprowadzanie danych (63)
- Formuły, funkcje i nazwy (64)
- Zaznaczanie obiektów (65)
- Formatowanie (66)
- Formatowanie wartości numerycznych (66)
- Formatowanie wyglÄ…du arkusza (66)
- Opcje ochrony (67)
- Ochrona formuł przed nadpisaniem (67)
- Ochrona struktury skoroszytu (68)
- Ochrona skoroszytu przy użyciu hasła (69)
- Ochrona kodu VBA przy użyciu hasła (69)
- Wykresy (70)
- Kształty i obiekty typu SmartArt (70)
- Dostęp do baz danych (71)
- Arkuszowe bazy danych (72)
- Zewnętrzne bazy danych (72)
- Funkcje internetowe (73)
- Narzędzia analizy danych (73)
- Konspekty (73)
- Dodatek Analysis ToolPak (74)
- Tabele przestawne (74)
- Dodatek Solver (74)
- Funkcje związane z językiem XML (75)
- Dodatki (75)
- Makra i programowanie (75)
- Zgodność formatu plików (75)
- System pomocy Excela (76)
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 (82)
- Nadawanie nazw komórkom i zakresom (83)
- Nadawanie nazw istniejącym odwołaniom (84)
- Stosowanie nazw z operatorem przecięcia (85)
- 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 (88)
- Formuły tablicowe (89)
- Przykład formuły tablicowej (90)
- Kalendarz oparty na formule tablicowej (91)
- Zalety i wady formuł tablicowych (92)
- Metody zliczania i sumowania (92)
- Przykłady formuł zliczających (93)
- Przykłady formuł sumujących (93)
- Inne narzędzia zliczające (93)
- Przetwarzanie daty i czasu (93)
- Wprowadzanie daty i czasu (95)
- Stosowanie dat sprzed roku 1900 (96)
- Tworzenie megaformuł (97)
Rozdział 4. Pliki programu Excel (99)
- Uruchamianie Excela (99)
- Formaty plików (102)
- Formaty plików obsługiwane w programie Excel (102)
- Formaty plików tekstowych (102)
- Formaty plików baz danych (102)
- Inne formaty plików (103)
- Praca z plikami szablonów (105)
- Przeglądanie dostępnych szablonów (105)
- Tworzenie szablonów (106)
- Tworzenie własnych szablonów skoroszytu (108)
- Budowa plików programu Excel (109)
- Zaglądamy do wnętrza pliku (109)
- Dlaczego format pliku jest taki ważny? (112)
- Plik QAT (113)
- Plik XLB (114)
- Pliki dodatków (114)
- Ustawienia Excela w rejestrze systemu Windows (115)
- Rejestr systemu Windows (115)
- Ustawienia Excela (116)
Część II: Projektowanie aplikacji w Excelu (119)
Rozdział 5. Czym jest aplikacja arkusza kalkulacyjnego? (121)
- Robocza definicja aplikacji arkusza kalkulacyjnego (121)
- Projektant i użytkownik końcowy (123)
- Kim sÄ… projektanci i czym siÄ™ zajmujÄ…? (123)
- Klasyfikacja użytkowników arkuszy kalkulacyjnych (124)
- Odbiorcy aplikacji arkusza kalkulacyjnego (125)
- Rozwiązywanie problemów przy użyciu Excela (125)
- Podstawowe kategorie arkuszy kalkulacyjnych (127)
- Arkusze robocze (127)
- Arkusze przeznaczone wyłącznie do użytku prywatnego (128)
- Aplikacje jednego użytkownika (128)
- Aplikacje typu "spaghetti" (128)
- Aplikacje użytkowe (129)
- Dodatki zawierajÄ…ce funkcje arkusza (130)
- Arkusze jednoblokowe (130)
- Modele warunkowe (130)
- Aplikacje bazodanowe (przechowujące dane i udzielające do nich dostępu) (131)
- Aplikacje komunikujÄ…ce siÄ™ z bazami danych (131)
- Aplikacje "pod klucz" (131)
Rozdział 6. Podstawy projektowania aplikacji arkusza kalkulacyjnego (133)
- Podstawowe etapy projektowania (133)
- Określanie wymagań użytkownika (134)
- Planowanie aplikacji spełniającej wymagania użytkownika (135)
- Wybieranie najwłaściwszego interfejsu użytkownika (138)
- Dostosowywanie Wstążki do potrzeb użytkownika (139)
- Dostosowywanie menu podręcznego do potrzeb użytkownika (140)
- Tworzenie klawiszy skrótu (140)
- Tworzenie niestandardowych okien dialogowych (141)
- Zastosowanie formantów ActiveX w arkuszu (142)
- Rozpoczęcie prac projektowych (144)
- Zadania realizowane z myślą o końcowym użytkowniku (144)
- Testowanie aplikacji (144)
- Uodpornianie aplikacji na błędy popełniane przez użytkownika (146)
- Nadawanie aplikacji przyjaznego, intuicyjnego i estetycznego wyglÄ…du (148)
- Tworzenie systemu pomocy i dokumentacji przeznaczonej dla użytkownika (149)
- Dokumentowanie prac projektowych (149)
- Przekazanie aplikacji użytkownikom (150)
- Aktualizacja aplikacji (kiedy to konieczne) (151)
- Pozostałe kwestie dotyczące projektowania (151)
- Wersja Excela zainstalowana przez użytkownika (151)
- Wersje językowe (152)
- Wydajność systemu (152)
- Tryby karty graficznej (152)
Część III: Język Visual Basic for Applications (155)
Rozdział 7. Wprowadzenie do języka VBA (157)
- Podstawowe informacje o języku BASIC (157)
- Język VBA (158)
- Modele obiektowe (158)
- Porównanie języka VBA z językiem XLM (159)
- Wprowadzenie do języka VBA (159)
- Edytor VBE (162)
- Wyświetlanie karty Deweloper (163)
- Uruchamianie edytora VBE (163)
- Okna edytora VBE (164)
- Tajemnice okna Project Explorer (166)
- Dodawanie nowego modułu VBA (167)
- Usuwanie modułu VBA (167)
- Eksportowanie i importowanie obiektów (167)
- Tajemnice okna Code (168)
- Minimalizacja i maksymalizacja okien (168)
- Przechowywanie kodu źródłowego języka VBA (169)
- Wprowadzanie kodu źródłowego języka VBA (169)
- Dostosowywanie edytora Visual Basic (176)
- Karta Editor (176)
- Karta Editor Format (179)
- Karta General (180)
- Zastosowanie karty Docking (180)
- Rejestrator makr Excela (181)
- Co właściwie zapisuje rejestrator makr? (182)
- Odwołania względne czy bezwzględne? (182)
- Opcje zwiÄ…zane z rejestrowaniem makr (186)
- Modyfikowanie zarejestrowanych makr (187)
- Obiekty i kolekcje (189)
- Hierarchia obiektów (189)
- Kolekcje (190)
- Odwoływanie się do obiektów (190)
- Właściwości i metody (191)
- Właściwości obiektów (191)
- Metody obiektowe (192)
- Tajemnice obiektu Comment (194)
- Pomoc dla obiektu Comment (194)
- Właściwości obiektu Comment (194)
- Metody obiektu Comment (195)
- Kolekcja Comments (196)
- Właściwość Comment (197)
- Obiekty zawarte w obiekcie Comment (197)
- Sprawdzanie, czy komórka posiada komentarz (198)
- Dodanie nowego obiektu Comment (199)
- Kilka przydatnych właściwości obiektu Application (199)
- Tajemnice obiektów Range (201)
- Właściwość Range (201)
- Właściwość Cells (204)
- Właściwość Offset (205)
- Co należy wiedzieć o obiektach? (207)
- Podstawowe zagadnienia, które należy zapamiętać (207)
- Dodatkowe informacje na temat obiektów i właściwości (208)
Rozdział 8. Podstawy programowania w języku VBA (211)
- Przegląd elementów języka VBA (211)
- Komentarze (213)
- Zmienne, typy danych i stałe (214)
- Definiowanie typów danych (216)
- Deklarowanie zmiennych (216)
- Zasięg zmiennych (220)
- Zastosowanie stałych (223)
- Praca z łańcuchami tekstu (226)
- Zastosowanie dat (226)
- Instrukcje przypisania (227)
- Tablice (229)
- Deklarowanie tablic (229)
- Deklarowanie tablic wielowymiarowych (230)
- Deklarowanie tablic dynamicznych (230)
- Zmienne obiektowe (231)
- Typy danych definiowane przez użytkownika (232)
- Wbudowane funkcje VBA (233)
- Praca z obiektami i kolekcjami (234)
- Konstrukcja With ... End With (234)
- Konstrukcja For Each ... Next (236)
- Sterowanie wykonywaniem procedur (238)
- Polecenie GoTo (239)
- Konstrukcja If ... Then (239)
- Konstrukcja Select Case (243)
- Wykonywanie bloku instrukcji w ramach pętli (246)
Rozdział 9. Tworzenie procedur w języku VBA (255)
- Kilka słów o procedurach (255)
- Deklarowanie procedury Sub (256)
- Zasięg procedury (257)
- Wykonywanie procedur Sub (258)
- Uruchamianie procedury przy użyciu polecenia Run Sub/UserForm (259)
- Uruchamianie procedury z poziomu okna dialogowego Makro (259)
- Uruchamianie procedury przy użyciu skrótu z klawiszem Ctrl (260)
- Uruchamianie procedury za pomocą Wstążki (261)
- Uruchamianie procedur za pośrednictwem niestandardowego menu podręcznego (261)
- Wywoływanie procedury z poziomu innej procedury (261)
- Uruchamianie procedury poprzez kliknięcie obiektu (265)
- Wykonywanie procedury po wystąpieniu określonego zdarzenia (267)
- Uruchamianie procedury z poziomu okna Immediate (267)
- Przekazywanie argumentów procedurom (268)
- Metody obsługi błędów (271)
- Przechwytywanie błędów (272)
- Przykłady kodu źródłowego obsługującego błędy (273)
- Praktyczny przykład wykorzystujący procedury Sub (275)
- Cel (276)
- Wymagania projektowe (276)
- Co już wiesz (276)
- Podejście do zagadnienia (277)
- Co musimy wiedzieć? (277)
- Wstępne rejestrowanie makr (278)
- Wstępne przygotowania (279)
- Tworzenie kodu źródłowego (280)
- Tworzenie procedury sortujÄ…cej (281)
- Dodatkowe testy (285)
- Usuwanie problemów (286)
- Dostępność narzędzia (289)
- Ocena projektu (289)
Rozdział 10. Tworzenie funkcji w języku VBA (291)
- Porównanie procedur Sub i Function (291)
- Dlaczego tworzymy funkcje niestandardowe? (292)
- Pierwszy przykład procedury Function (293)
- Funkcja niestandardowa (293)
- Zastosowanie funkcji w arkuszu (293)
- Zastosowanie funkcji w procedurze języka VBA (294)
- Analiza funkcji niestandardowej (294)
- Procedury Function (296)
- Deklarowanie funkcji (296)
- Zasięg funkcji (298)
- Wywoływanie procedur Function (298)
- Argumenty procedury Function (300)
- Przykłady funkcji (300)
- Funkcja pozbawiona argumentów (301)
- Funkcja z jednym argumentem (303)
- Funkcje z dwoma argumentami (306)
- Funkcja pobierajÄ…ca tablicÄ™ jako argument (307)
- Funkcje z argumentami opcjonalnymi (308)
- Funkcje zwracajÄ…ce tablicÄ™ VBA (309)
- Funkcje zwracające wartość błędu (312)
- Funkcje o nieokreślonej liczbie argumentów (313)
- Emulowanie funkcji SUMA Excela (314)
- Wykrywanie i usuwanie błędów w funkcjach (317)
- Okno dialogowe Wstawianie funkcji (318)
- Definiowanie kategorii funkcji (319)
- Dodawanie opisu funkcji (320)
- Zastosowanie dodatków do przechowywania funkcji niestandardowych (321)
- Korzystanie z Windows API (322)
- Przykłady zastosowania funkcji interfejsu API systemu Windows (323)
- Identyfikacja katalogu domowego systemu Windows (323)
- Wykrywanie wciśnięcia klawisza Shift (324)
- Dodatkowe informacje na temat funkcji interfejsu API (325)
Rozdział 11. Przykłady i techniki programowania w języku VBA (327)
- Przetwarzanie zakresów (328)
- Kopiowanie zakresów (328)
- Przenoszenie zakresów (329)
- Kopiowanie zakresu o zmiennej wielkości (330)
- Zaznaczanie różnego typu zakresów i identyfikowanie ich (330)
- Wprowadzanie wartości do komórki (332)
- Wprowadzanie wartości do następnej pustej komórki (334)
- Wstrzymywanie działania makra w celu umożliwienia pobrania zakresu wyznaczonego przez użytkownika (335)
- Zliczanie zaznaczonych komórek (336)
- Określanie typu zaznaczonego zakresu (337)
- Wydajne przetwarzanie komórek zaznaczonego zakresu przy użyciu pętli (338)
- Usuwanie wszystkich pustych wierszy (341)
- Powielanie wierszy (342)
- Określanie, czy zakres zawiera się w innym zakresie (344)
- Określanie typu danych zawartych w komórce (344)
- Odczytywanie i zapisywanie zakresów (345)
- Lepsza metoda zapisywania zakresu (346)
- Przenoszenie zawartości tablic jednowymiarowych (348)
- Przenoszenie zawartości zakresu do tablicy typu Variant (348)
- Zaznaczanie maksymalnej wartości zakresu (349)
- Kopiowanie nieciągłego zakresu komórek (350)
- Przetwarzanie skoroszytów i arkuszy (352)
- Zapisywanie wszystkich skoroszytów (352)
- Zapisywanie i zamykanie wszystkich skoroszytów (352)
- Ukrywanie wszystkich komórek arkusza poza zaznaczonym zakresem (353)
- Synchronizowanie arkuszy (354)
- Techniki programowania w języku VBA (355)
- Przełączanie wartości właściwości typu logicznego (355)
- Określanie liczby drukowanych stron (356)
- Wyświetlanie daty i czasu (356)
- Pobieranie listy czcionek (358)
- Sortowanie tablicy (359)
- Przetwarzanie grupy plików (361)
- Ciekawe funkcje, których możesz użyć w swoich projektach (362)
- Funkcja FileExists (363)
- Funkcja FileNameOnly (363)
- Funkcja PathExists (363)
- Funkcja RangeNameExists (364)
- Funkcja SheetExists (364)
- Funkcja WorkbookIsOpen (364)
- Pobieranie wartości z zamkniętego skoroszytu (365)
- Użyteczne, niestandardowe funkcje arkuszowe (367)
- Funkcje zwracające informacje o formatowaniu komórki (367)
- GadajÄ…cy arkusz? (368)
- Wyświetlanie daty zapisania lub wydrukowania pliku (369)
- Obiekty nadrzędne (369)
- Zliczanie komórek, których wartości zawierają się pomiędzy dwoma wartościami (370)
- Zliczanie widocznych komórek zakresu (371)
- Wyznaczanie ostatniej niepustej komórki kolumny lub wiersza (372)
- Czy dany łańcuch tekstu jest zgodny z wzorcem? (373)
- Wydzielanie n-tego elementu łańcucha (374)
- Funkcja wielofunkcyjna (375)
- Funkcja SheetOffset (376)
- Zwracanie maksymalnej wartości ze wszystkich arkuszy (377)
- Zwracanie tablicy zawierającej unikatowe, losowo uporządkowane liczby całkowite (378)
- Porządkowanie zakresu w losowy sposób (379)
- Wywołania funkcji interfejsu Windows API (381)
- Określanie skojarzeń plików (381)
- Pobieranie informacji o napędach dyskowych (382)
- Pobieranie informacji dotyczących drukarki domyślnej (382)
- Pobieranie informacji o aktualnej rozdzielczości karty graficznej (383)
- Dodanie dźwięku do aplikacji (384)
- Odczytywanie zawartości rejestru systemu Windows i zapisywanie w nim danych (386)
Część IV: Praca z formularzami UserForm (389)
Rozdział 12. Metody tworzenia własnych okien dialogowych (391)
- Zanim rozpoczniesz tworzenie formularza UserForm (391)
- Okno wprowadzania danych (392)
- Funkcja InputBox języka VBA (392)
- Metoda InputBox Excela (394)
- Funkcja MsgBox języka VBA (396)
- Metoda GetOpenFilename programu Excel (399)
- Metoda GetSaveAsFilename programu Excel (402)
- Okno wybierania katalogu (403)
- Wybieranie katalogu przy użyciu funkcji interfejsu Windows API (403)
- Wybieranie katalogu przy użyciu obiektu FileDialog (405)
- Wyświetlanie wbudowanych okien dialogowych Excela (406)
- Zastosowanie kolekcji Dialogs (407)
- Wykonywanie poleceń znajdujących się na Wstążce (408)
- Wyświetlanie formularza danych (408)
- Wyświetlanie formularza wprowadzania danych (410)
- Wyświetlanie formularza wprowadzania danych za pomocą VBA (410)
Rozdział 13. Wprowadzenie do formularzy UserForm (411)
- Jak Excel obsługuje niestandardowe okna dialogowe (412)
- Wstawianie nowego formularza UserForm (412)
- Dodawanie formantów do formularza UserForm (412)
- Formanty okna Toolbox (414)
- Formant CheckBox (414)
- Formant ComboBox (414)
- Formant CommandButton (415)
- Formant Frame (415)
- Formant Image (415)
- Formant Label (415)
- Formant ListBox (415)
- Formant MultiPage (415)
- Formant OptionButton (416)
- Formant RefEdit (416)
- Formant ScrollBar (416)
- Formant SpinButton (416)
- Formant TabStrip (416)
- Formant TextBox (416)
- Formant ToggleButton (418)
- Modyfikowanie kontrolek formularza UserForm (418)
- Modyfikowanie właściwości formantów (418)
- Zastosowanie okna Properties (420)
- Wspólne właściwości (421)
- Zdobywanie dodatkowych informacji o właściwościach (421)
- Uwzględnienie wymagań użytkowników preferujących korzystanie z klawiatury (422)
- Wyświetlanie i zamykanie formularzy UserForm (424)
- Wyświetlanie formularza UserForm (424)
- Zamykanie formularza UserForm (425)
- Procedury obsługi zdarzeń (426)
- Przykład tworzenia formularza UserForm (427)
- Tworzenie formularza UserForm (427)
- Tworzenie kodu procedury wyświetlającej okno dialogowe (429)
- Testowanie okna dialogowego (430)
- Dodawanie procedur obsługi zdarzeń (431)
- Sprawdzanie poprawności danych (432)
- Zakończenie tworzenia okna dialogowego (433)
- Zdarzenia powiÄ…zane z formularzem UserForm (433)
- Zdobywanie informacji na temat zdarzeń (433)
- Zdarzenia formularza UserForm (434)
- Zdarzenia zwiÄ…zane z formantem SpinButton (435)
- Współpraca formantu SpinButton z formantem TextBox (436)
- Odwoływanie się do formantów formularza UserForm (439)
- Dostosowywanie okna Toolbox do własnych wymagań (440)
- Modyfikacja ikon lub tekstu podpowiedzi (440)
- Dodawanie nowych zakładek (440)
- Dostosowywanie lub łączenie formantów (440)
- Dodawanie nowych formantów ActiveX (441)
- Tworzenie szablonów formularzy UserForm (442)
- Lista kontrolna tworzenia i testowania formularzy UserForm (442)
Rozdział 14. Przykłady formularzy UserForm (445)
- Tworzenie formularza UserForm pełniącego funkcję menu (445)
- Zastosowanie w formularzu UserForm formantów CommandButton (446)
- Zastosowanie w formularzu UserForm kontrolki ListBox (446)
- Zaznaczanie zakresów przy użyciu formularza UserForm (447)
- Tworzenie okna powitalnego (449)
- Wyłączanie przycisku Zamknij formularza UserForm (451)
- Zmiana wielkości formularza UserForm (451)
- Powiększanie i przewijanie arkusza przy użyciu formularza UserForm (453)
- Zastosowania formantu ListBox (455)
- Formant ListBox (455)
- Tworzenie listy elementów formantu ListBox (456)
- Identyfikowanie zaznaczonego elementu listy formantu ListBox (460)
- Identyfikowanie wielu zaznaczonych elementów listy formantu ListBox (460)
- Wiele list w jednej kontrolce ListBox (461)
- Przenoszenie elementów listy formantu ListBox (462)
- Zmiana kolejności elementów listy formantu ListBox (464)
- Wielokolumnowe formanty ListBox (465)
- Zastosowanie formantu ListBox do wybierania wierszy arkusza (467)
- Uaktywnianie arkusza za pomocÄ… formantu ListBox (469)
- Zastosowanie formantu MultiPage na formularzach UserForm (471)
- Korzystanie z formantów zewnętrznych (472)
- Animowanie etykiet (474)
Rozdział 15. Zaawansowane techniki korzystania z formularzy UserForm (477)
- Niemodalne okna dialogowe (478)
- Wyświetlanie wskaźnika postępu zadania (481)
- Tworzenie samodzielnego wskaźnika postępu zadania (482)
- Wyświetlanie wskaźnika postępu zadania za pomocą formantu MultiPage (485)
- Wyświetlanie wskaźnika postępu zadania bez korzystania z kontrolki MultiPage (488)
- Tworzenie kreatorów (489)
- Konfigurowanie formantu MultiPage w celu utworzenia kreatora (489)
- Dodawanie przycisków do formularza UserForm kreatora (490)
- Programowanie przycisków kreatora (491)
- Zależności programowe w kreatorach (492)
- Wykonywanie zadań za pomocą kreatorów (494)
- Emulacja funkcji MsgBox (495)
- Emulacja funkcji MsgBox: kod funkcji MyMsgBox (495)
- Jak działa funkcja emulująca MsgBox? (496)
- Wykorzystanie funkcji MyMsgBox do emulacji funkcji MsgBox (498)
- Formularz UserForm z formantami, których położenie można zmieniać (498)
- Formularz UserForm bez paska tytułowego (499)
- Symulacja paska narzędzi za pomocą formularza UserForm (500)
- Formularze UserForm z możliwością zmiany rozmiaru (502)
- Obsługa wielu przycisków formularza UserForm za pomocą jednej procedury obsługi zdarzeń (506)
- Wybór koloru za pomocą formularza UserForm (508)
- Wyświetlanie wykresów na formularzach UserForm (510)
- Sposób postępowania przy wyświetlaniu wykresów na formularzach UserForm (511)
- Zapisywanie wykresu w postaci pliku GIF (511)
- Modyfikacja właściwości Picture formantu Image (511)
- Zaawansowane formularze danych (512)
- Opis ulepszonego formularza danych (512)
- Instalacja dodatku - ulepszonego formularza danych (513)
- Puzzle na formularzu UserForm (514)
Część V: Zaawansowane techniki programowania (517)
Rozdział 16. Tworzenie narzędzi dla Excela w języku VBA (519)
- Kilka słów o narzędziach dla programu Excel (519)
- Zastosowanie języka VBA do tworzenia narzędzi (520)
- Co decyduje o przydatności narzędzia? (521)
- Operacje tekstowe: anatomia narzędzia (521)
- Podstawy tworzenia narzędzia Operacje tekstowe (522)
- Określenie wymagań dla narzędzia Operacje tekstowe (522)
- Skoroszyt narzędzia Operacje tekstowe (523)
- Jak działa narzędzie Operacje tekstowe? (523)
- Formularz UserForm dla narzędzia Operacje tekstowe (524)
- Moduł VBA Module1 (525)
- Moduł formularza UserForm1 (528)
- Poprawa wydajności narzędzia Operacje tekstowe (530)
- Zapisywanie ustawień narzędzia Operacje tekstowe (531)
- Implementacja procedury Cofnij (532)
- Wyświetlanie pliku pomocy (535)
- Umieszczanie poleceń na Wstążce (535)
- Ocena realizacji projektu (538)
- Działanie narzędzia Operacje tekstowe (539)
- Dodatkowe informacje na temat narzędzi Excela (539)
Rozdział 17. Tabele przestawne (541)
- Przykład prostej tabeli przestawnej (541)
- Tworzenie tabel przestawnych (542)
- Analiza zarejestrowanego kodu tworzenia tabeli przestawnej (543)
- Optymalizacja wygenerowanego kodu tworzÄ…cego tabelÄ™ przestawnÄ… (544)
- Tworzenie złożonych tabel przestawnych (545)
- Dane dla złożonej tabeli przestawnej (546)
- Kod tworzÄ…cy tabelÄ™ przestawnÄ… (546)
- Jak działa złożona tabela przestawna? (548)
- Jednoczesne tworzenie wielu tabel przestawnych (549)
- Tworzenie odwróconych tabel przestawnych (552)
Rozdział 18. Wykresy (555)
- Podstawowe wiadomości o wykresach (555)
- Położenie wykresu (556)
- Rejestrator makr a wykresy (556)
- Model obiektu Chart (558)
- Popularne techniki języka VBA dotyczące wykresów (559)
- Tworzenie wykresów osadzonych na arkuszu danych (559)
- Tworzenie wykresu na arkuszu wykresu (561)
- Wykorzystanie VBA do uaktywnienia wykresu (561)
- Przenoszenie wykresu (562)
- Wykorzystanie VBA do deaktywacji wykresu (563)
- Sprawdzanie, czy wykres został uaktywniony (564)
- Usuwanie elementów z kolekcji ChartObjects lub Charts (564)
- Przetwarzanie wszystkich wykresów w pętli (565)
- Zmiana rozmiarów i wyrównywanie obiektów ChartObject (567)
- Eksportowanie wykresów (568)
- Eksportowanie wszystkich obiektów graficznych (569)
- Formatowanie wykresów za pomocą VBA (570)
- Formatowanie wykresu (570)
- Kolejne przykłady formatowania wykresów (572)
- Zmiana danych prezentowanych na wykresie (574)
- Modyfikacja danych wykresu na podstawie aktywnej komórki (574)
- Zastosowanie języka VBA do identyfikacji zakresu danych prezentowanych na wykresie (577)
- Wykorzystanie VBA do wyświetlania dowolnych etykiet danych na wykresie (580)
- Wyświetlanie wykresu w oknie formularza UserForm (582)
- Zdarzenia zwiÄ…zane z wykresami (584)
- Przykład wykorzystania zdarzeń związanych z wykresami (584)
- Obsługa zdarzeń dla wykresów osadzonych (587)
- Przykład: zastosowanie zdarzeń dla wykresów osadzonych (589)
- Jak ułatwić sobie pracę z wykresami? (591)
- Drukowanie wykresów osadzonych na arkuszu (591)
- Wyświetlanie pokazu wykresów (591)
- Ukrywanie serii danych poprzez ukrywanie kolumn (592)
- Tworzenie wykresów, które nie są połączone z danymi (593)
- Wykorzystanie zdarzenia MouseOver do wyświetlania tekstu (594)
- Wykresy animowane (597)
- Przewijanie wykresów (598)
- Tworzenie wykresu krzywych hipocykloidalnych (600)
- Tworzenie wykresu-zegara (601)
- Tworzenie wykresu interaktywnego bez użycia VBA (602)
- Przygotowanie danych do utworzenia wykresu interaktywnego (603)
- Tworzenie przycisków opcji dla interaktywnego wykresu (603)
- Tworzenie listy miast dla wykresu interaktywnego (604)
- Tworzenie zakresów danych dla wykresu interaktywnego (605)
- Utworzenie wykresu interaktywnego (605)
Rozdział 19. Obsługa zdarzeń (607)
- Typy zdarzeń, które Excel może monitorować (608)
- Co powinieneś wiedzieć o zdarzeniach (608)
- Sekwencje zdarzeń (609)
- Gdzie należy umieścić procedury obsługi zdarzeń? (609)
- Wyłączanie obsługi zdarzeń (610)
- Wprowadzanie kodu procedury obsługi zdarzeń (611)
- Procedury obsługi zdarzeń z argumentami (612)
- Zdarzenia poziomu skoroszytu (614)
- Zdarzenie Open (615)
- Zdarzenie Activate (616)
- Zdarzenie SheetActivate (616)
- Zdarzenie NewSheet (617)
- Zdarzenie BeforeSave (617)
- Zdarzenie Deactivate (617)
- Zdarzenie BeforePrint (618)
- Zdarzenie BeforeClose (619)
- Zdarzenia poziomu arkusza (621)
- Zdarzenie Change (622)
- Monitorowanie zmian w wybranym zakresie komórek (623)
- Zdarzenie SelectionChange (627)
- Zdarzenie BeforeDoubleClick (628)
- Zdarzenie BeforeRightClick (628)
- Zdarzenia dotyczące wykresów (629)
- Zdarzenia dotyczÄ…ce aplikacji (630)
- Włączenie obsługi zdarzeń poziomu aplikacji (630)
- Sprawdzanie, czy skoroszyt jest otwarty (633)
- Monitorowanie zdarzeń poziomu aplikacji (634)
- Zdarzenia dotyczÄ…ce formularzy UserForm (636)
- Zdarzenia niezwiÄ…zane z obiektami (637)
- Zdarzenie OnTime (637)
- Zdarzenie OnKey (638)
Rozdział 20. Interakcje z innymi aplikacjami (643)
- Uruchamianie innych aplikacji z poziomu Excela (643)
- Zastosowanie funkcji Shell języka VBA (644)
- Zastosowanie funkcji ShellExecute interfejsu Windows API (646)
- Uaktywnianie aplikacji z poziomu Excela (647)
- Wykorzystanie instrukcji AppActivate (647)
- Uaktywnianie aplikacji pakietu Microsoft Office (648)
- Uruchamianie okien dialogowych Panelu sterowania (648)
- Wykorzystanie automatyzacji w programie Excel (649)
- Działania z obiektami innych aplikacji z wykorzystaniem automatyzacji (650)
- Wczesne i późne wiązanie (650)
- Prosty przykład późnego wiązania (653)
- ZarzÄ…dzanie Wordem z poziomu Excela (654)
- ZarzÄ…dzanie Excelem z poziomu innej aplikacji (657)
- Wysyłanie spersonalizowanych wiadomości e-mail z wykorzystaniem Outlooka (659)
- Wysyłanie wiadomości e-mail z załącznikami z poziomu Excela (662)
- Zastosowanie metody SendKeys (664)
- Działania z obiektami danych ActiveX (ADO) (666)
Rozdział 21. Tworzenie i wykorzystanie dodatków (669)
- Czym sÄ… dodatki? (669)
- Porównanie dodatku ze standardowym skoroszytem (670)
- Po co tworzy siÄ™ dodatki? (670)
- Menedżer dodatków Excela (672)
- Tworzenie dodatków (673)
- Przykład tworzenia dodatku (674)
- Konfiguracja skoroszytu dla przykładowego dodatku (674)
- Tworzenie opisu dla dodatku (675)
- Tworzenie dodatku (675)
- Instalowanie dodatku (677)
- Testowanie dodatków (677)
- Dystrybucja dodatków (678)
- Modyfikowanie dodatku (678)
- Porównanie plików XLAM i XLSM (679)
- Rozmiar i struktura plików XLSM i XLAM (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 (683)
- Kolekcja AddIns (683)
- Właściwości obiektu AddIn (685)
- Korzystanie z dodatku jak ze skoroszytu (687)
- Zdarzenia zwiÄ…zane z obiektami AddIn (688)
- Optymalizacja wydajności dodatków (688)
- Problemy z dodatkami (689)
- Zapewnienie, że dodatek został zainstalowany (689)
- Odwoływanie się do innych plików z poziomu dodatku (691)
- Wykrywanie właściwej wersji Excela dla dodatku (692)
Część VI: Tworzenie aplikacji (693)
Rozdział 22. Tworzenie pasków narzędzi (695)
- Wprowadzenie do pracy ze Wstążką (695)
- Karty (696)
- VBA i Wstążka (699)
- Dostęp do poleceń Wstążki (700)
- Praca ze Wstążką (701)
- Aktywowanie karty (702)
- Dostosowywanie Wstążki do własnych potrzeb (704)
- Prosty przykład kodu RibbonX (704)
- Więcej informacji o przykładzie modyfikacji Wstążki (707)
- Kolejny przykład kodu RibbonX (708)
- Demo formantów Wstążki (712)
- Przykład użycia formantu DynamicMenu (717)
- Więcej wskazówek dotyczących modyfikacji Wstążki (720)
- Tworzenie pasków narzędzi w starym stylu (721)
- Ograniczenia funkcjonalności tradycyjnych pasków narzędzi w Excelu 2007 (722)
- Kod tworzący pasek narzędzi (722)
Rozdział 23. Praca z menu podręcznym (725)
- Obiekt CommandBar (725)
- Rodzaje obiektów CommandBar (726)
- Wyświetlanie menu podręcznych (726)
- Odwoływanie się do elementów kolekcji CommandBars (727)
- Odwołania do formantów w obiekcie CommandBar (728)
- Właściwości formantów obiektu CommandBar (729)
- Wyświetlanie wszystkich elementów menu podręcznego (730)
- Wykorzystanie VBA do dostosowywania menu podręcznego (731)
- Resetowanie menu podręcznego (731)
- Wyłączanie menu podręcznego (732)
- Wyłączanie wybranych elementów menu podręcznego (733)
- Dodawanie nowego elementu do menu podręcznego Cell (733)
- Dodawanie nowego podmenu do menu podręcznego (735)
- Menu podręczne i zdarzenia (737)
- Automatyczne tworzenie i usuwanie menu podręcznego (737)
- Wyłączanie lub ukrywanie elementów menu podręcznego (738)
- Tworzenie kontekstowych menu podręcznych (739)
Rozdział 24. Tworzenie systemów pomocy w aplikacjach (743)
- Dlaczego należy tworzyć systemy pomocy w aplikacjach? (743)
- Systemy pomocy wykorzystujÄ…ce komponenty Excela (744)
- Wykorzystanie komentarzy do tworzenia systemów pomocy (746)
- Wykorzystanie pól tekstowych do wyświetlania pomocy (747)
- Wykorzystanie arkusza do wyświetlania tekstu pomocy (748)
- Wyświetlanie pomocy w oknie formularza UserForm (749)
- Wyświetlanie pomocy w oknie przeglądarki sieciowej (752)
- Zastosowanie plików w formacie HTML (752)
- Zastosowanie plików w formacie MHTML (753)
- Wykorzystanie systemu HTML Help (754)
- Wykorzystanie metody Help do wyświetlania pomocy w formacie HTML Help (756)
- Zastosowanie funkcji API do wyświetlania pomocy w formacie HTML Help (757)
- PowiÄ…zanie pliku pomocy z aplikacjÄ… (757)
- Przypisanie tematów pomocy do funkcji VBA (758)
Rozdział 25. Tworzenie aplikacji przyjaznych dla użytkownika (761)
- Czym jest aplikacja przyjazna dla użytkownika? (761)
- Kreator amortyzacji pożyczek (762)
- Obsługa Kreatora amortyzacji pożyczek (762)
- Struktura skoroszytu Kreatora amortyzacji pożyczek (764)
- Jak działa Kreator amortyzacji pożyczek? (764)
- Potencjalne usprawnienia Kreatora amortyzacji pożyczek (771)
- Wskazówki dotyczące projektowania aplikacji (771)
Część VII: Inne zagadnienia (773)
Rozdział 26. Problem kompatybilności aplikacji (775)
- Co to jest kompatybilność? (775)
- Rodzaje problemów ze zgodnością (776)
- Unikaj używania nowych funkcji i mechanizmów (777)
- Czy aplikacja będzie działać na komputerach Macintosh? (778)
- Tworzenie aplikacji dla wielu wersji narodowych (779)
- Aplikacje obsługujące wiele języków (781)
- Obsługa języka w kodzie VBA (781)
- Wykorzystanie właściwości lokalnych (781)
- Identyfikacja ustawień systemu (782)
- Ustawienia daty i godziny (785)
Rozdział 27. Operacje na plikach wykonywane za pomocą kodu VBA (787)
- Najczęściej wykonywane operacje na plikach (788)
- Zastosowanie poleceń języka VBA do wykonywania operacji na plikach (788)
- Zastosowanie obiektu FileSystemObject (792)
- Wyświetlanie rozszerzonych informacji o plikach (795)
- Operacje z plikami tekstowymi (797)
- Otwieranie plików tekstowych (798)
- Odczytywanie plików tekstowych (799)
- Zapisywanie danych do plików tekstowych (799)
- Przydzielanie numeru pliku (799)
- Określanie lub ustawianie pozycji w pliku (800)
- Instrukcje pozwalające na odczytywanie i zapisywanie plików (800)
- Przykłady wykonywania operacji na plikach (801)
- Importowanie danych z pliku tekstowego (801)
- Eksportowanie zakresu do pliku tekstowego (801)
- Importowanie pliku tekstowego do zakresu (803)
- Rejestrowanie wykorzystania Excela (804)
- Filtrowanie zawartości pliku tekstowego (804)
- Eksportowanie zakresu komórek do pliku HTML (805)
- Eksportowanie zakresu komórek do pliku XLM (807)
- Pakowanie i rozpakowywanie plików (809)
- Pakowanie plików do formatu ZIP (810)
- Rozpakowywanie plików ZIP (812)
Rozdział 28. Operacje na składnikach języka VBA (815)
- Podstawowe informacje o środowisku IDE (815)
- Model obiektowy środowiska IDE (816)
- Kolekcja VBProjects (818)
- Wyświetlanie wszystkich składników projektu VBA (819)
- Wyświetlanie wszystkich procedur VBA w arkuszu (821)
- Zastępowanie modułu uaktualnioną wersją (822)
- Zastosowanie języka VBA do generowania kodu VBA (824)
- Zastosowanie VBA do umieszczenia formantów na formularzu UserForm (825)
- Operacje z formularzami UserForm w fazie projektowania i wykonania (826)
- Dodanie 100 przycisków CommandButton w fazie projektowania (827)
- Programowe tworzenie formularzy UserForm (829)
- Prosty przykład formularza UserForm (829)
- Użyteczny (ale już nie tak prosty) przykład dynamicznego formularza UserForm (831)
Rozdział 29. Moduły klas (837)
- Czym jest moduł klasy? (837)
- Przykład: utworzenie klasy NumLock (838)
- Wstawianie modułu klasy (839)
- Dodawanie kodu VBA do modułu klasy (839)
- Wykorzystanie klasy NumLock (842)
- Dodatkowe informacje na temat modułów klas (843)
- Nadawanie nazwy klasie obiektów (843)
- Programowanie właściwości obiektów (843)
- Programowanie metod obiektów (845)
- Zdarzenia definiowane w module klasy (845)
- Przykład: klasa CSVFileClass (846)
- Zmienne poziomu modułu dla klasy CSVFileClass (846)
- Definicje właściwości klasy CSVFileClass (846)
- Definicje metod klasy CSVFileClass (847)
- Wykorzystanie obiektów CSVFileClass (848)
Rozdział 30. Praca z kolorami (851)
- Definiowanie kolorów (852)
- Model kolorów RGB (852)
- Model kolorów HSL (852)
- Konwersja kolorów (854)
- Skala szarości (855)
- Zamiana kolorów na skalę szarości (856)
- Wyświetlanie wykresów w skali szarości (857)
- Eksperymenty z kolorami (858)
- Praca z motywami dokumentów Excela 2007 (859)
- Kilka słów o motywach dokumentów (859)
- Kolory motywów dokumentów (859)
- Wyświetlanie wszystkich kolorów motywu (862)
- Praca z obiektami Shape (865)
- Kolor tła kształtu (865)
- Inne rodzaje wypełnień kształtów (867)
- Więcej informacji o kształtach (871)
- Modyfikacja kolorów wykresów (872)
Rozdział 31. Często zadawane pytania na temat programowania w Excelu (875)
- Ogólne pytania dotyczące programu Excel (876)
- Jak zarejestrować makro? (876)
- Jak uruchomić makro? (876)
- Co mam zrobić, jeżeli karta Deweloper nie jest widoczna? (876)
- Zarejestrowałem nowe makro i zapisałem skoroszyt na dysku. Po ponownym otwarciu skoroszytu okazało się, że wszystkie makra zniknęły! Co się z nimi stało? (876)
- Przed zapisaniem skoroszytu w formacie XLSM oznaczyłem jako komentarze wszystkie polecenia VBA w module i chciałem wrócić do nich później. Kiedy ponownie otwarłem skoroszyt, okazało się, że cały kod VBA został usunięty. Co się stało? (877)
- Jak ukryć Wstążkę, aby nie zajmowała na ekranie tyle miejsca? (877)
- Gdzie podziały się moje stare paski narzędzi? (877)
- Czy mogę nadal korzystać z moich starych, "pływających" pasków narzędzi? (877)
- Gdzie mogę znaleźć przykłady procedur VBA? (877)
- Jak mogę w Excelu 2007 ukryć pasek stanu? (877)
- Czy istnieje jakieś narzędzie, które potrafi zamienić moją aplikację programu Excel w samodzielny, wykonywalny plik EXE? (878)
- Dlaczego naciśnięcie kombinacji klawiszy Ctrl+A nie zaznacza wszystkich komórek mojego arkusza? (878)
- Dlaczego polecenie Widoki niestand. nie jest aktywne? (878)
- Jak umieścić listę rozwijaną w komórce, tak aby użytkownik mógł wybierać odpowiednie wartości z listy? (878)
- Czy mogę użyć opisanej powyżej metody tworzenia listy rozwijanej, jeżeli elementy listy są przechowywane na innym arkuszu lub w innym skoroszycie? (878)
- Używam właściwości Application.Calculation do ustawienia trybu przeliczania arkusza na ręczny. Wygląda jednak na to, że zmiana ma zastosowanie do wszystkich skoroszytów, a nie tylko do skoroszytu aktywnego (879)
- Dlaczego naciśnięcie klawisza F4 nie powoduje powtórzenia niektórych operacji? (879)
- Co się stało z możliwością odczytywania na głos zawartości komórek? (879)
- Jak mogę zwiększyć liczbę kolumn arkusza? (879)
- Jak mogę zwiększyć liczbę wierszy arkusza? (880)
- Otworzyłem skoroszyt i okazało się, że arkusze mają tylko po 65 546 wierszy. Co się stało? (880)
- Jak mogę w starych skoroszytach używać nowych czcionek? (880)
- Jak wyświetlić podgląd wydruku? (880)
- Kiedy przełączam się na szablon nowego dokumentu, mój arkusz nie mieści się już dłużej na jednej stronie (880)
- Jak pozbyć się irytującego, kropkowanego oznaczenia podziałów strony po przełączeniu do widoku normalnego? (881)
- Czy mogę dodać polecenie Pokaż podziały stron do paska narzędzi Szybki dostęp? (881)
- Zmieniłem orientację tekstu w komórce na pionową (karta Narzędzia główne, grupa opcji Wyrównanie). Jak przywrócić normalny układ tekstu w komórce? W menu podręcznym polecenia Orientacja nie ma opcji Tekst poziomy (881)
- Próbuję nadać tabeli nowy styl formatowania, ale nie przynosi to żadnego efektu. Co mogę zrobić w takiej sytuacji? (881)
- Co powinienem zrobić, aby programy mojego pakietu Office 2007 mogły zapisywać dokumenty w formacie PDF? (881)
- Czy mogę zmienić kolor karty arkusza? (881)
- Czy mogę zmienić czcionkę, która jest używana do wyświetlania nazwy arkusza na karcie? (882)
- Czy mogę zmienić domyślną czcionkę i kolor komentarza komórki? (882)
- Czy mogę utworzyć makro VBA, które odtwarza dźwięki? (882)
- Kiedy otwieram skoroszyt, Excel pyta, czy chcę zaktualizować łącza. Przeszukałem wszystkie formuły i nie mogę znaleźć żadnego łącza w tym skoroszycie. Czy to błąd Excela? (882)
- Dlaczego Excel przy każdym uruchomieniu zawiesza się? (883)
- Pytania dotyczÄ…ce edytora Visual Basic (883)
- Czy można wykorzystać rejestrator makr VBA do zarejestrowania wszystkich makr? (883)
- Włączyłem rejestrowanie makr podczas edytowania wykresu, ale wiele wykonywanych poleceń nie zostało zarejestrowanych (883)
- Zdefiniowałem kilka ogólnych makr. Chciałbym, aby były dostępne przez cały czas. W jaki sposób najlepiej to zrobić? (884)
- Nie mogę odnaleźć osobistego arkusza makr. Gdzie on się podział? (884)
- Zablokowałem dostęp do projektu VBA za pomocą hasła, a potem je zapomniałem. Czy istnieje sposób odblokowania projektu? (884)
- W jaki sposób napisać makro zmieniające hasło projektu? (884)
- Kiedy wstawiam nowy moduł, zawsze rozpoczyna się on od wiersza Option Explicit. Co to znaczy? (884)
- Dlaczego kod VBA jest wyświetlany w różnych kolorach? Czy mogę je zmienić? (884)
- Chcę usunąć moduł VBA za pomocą kodu. Czy mogę to zrobić? (885)
- Napisałem w Excelu 2000 makro, które dodaje kod VBA do projektu VB. Kiedy uruchamiam je w Excelu 2003, wyświetla się komunikat o błędzie. W czym problem? (885)
- W jaki sposób napisać makro zmieniające zabezpieczenia makr ustawione przez użytkownika? Chciałbym uniknąć wyświetlania komunikatu "Ten skoroszyt zawiera makra" w momencie otwierania mojej aplikacji (885)
- Nie rozumiem, jak działa opcja UserInterfaceOnly w kontekście zabezpieczania arkusza (885)
- W jaki sposób można stwierdzić, czy skoroszyt zawiera wirusa w makrze? (886)
- Mam problem z operatorem konkatenacji (&) w VBA. Podczas próby połączenia dwóch łańcuchów znaków wyświetlany jest komunikat o błędzie (886)
- Wydaje mi się, że operator kontynuacji wiersza w języku VBA (znak podkreślenia) nie działa (886)
- Z mojej aplikacji Excela korzysta wielu użytkowników. Na niektórych komputerach nie działają procedury obsługi błędów VBA. Dlaczego? (886)
- Pytania dotyczÄ…ce procedur (886)
- Jaka jest różnica pomiędzy procedurą VBA a makrem? (886)
- Czym jest procedura? (886)
- Czym jest typ danych Variant? (887)
- Jaka jest różnica pomiędzy tablicą typu Variant a tablicą zawierającą dane typu Variant? (887)
- Co to jest znak definicji typu? (887)
- Chciałbym utworzyć procedurę, która automatycznie modyfikuje formatowanie komórki na podstawie wprowadzonych danych. Jeżeli na przykład wprowadzę wartość większą od zera, tło komórki ma być czerwone. Czy to możliwe? (888)
- Funkcja formatowania warunkowego jest przydatna, ale chciałbym również wykonać inne działania w czasie, kiedy w komórce są wprowadzane dane (888)
- Jakie inne rodzaje zdarzeń można monitorować? (888)
- Próbowałem zdefiniować procedurę obsługi zdarzenia (Sub Workbook_Open), ale procedura nie wykonuje się podczas otwierania skoroszytu. W czym problem? (888)
- Wiem, że można napisać procedurę obsługi zdarzenia dla określonego skoroszytu, ale czy można napisać procedurę obsługi zdarzenia działającą dla dowolnego otwartego skoroszytu? (888)
- Potrafię tworzyć formuły w Excelu. Czy w języku VBA są wykorzystywane te same operatory matematyczne i logiczne? (889)
- W jaki sposób można uruchomić procedurę znajdującą się w innym skoroszycie? (889)
- Za pomocą języka VBA utworzyłem kilka funkcji. Chciałbym wykorzystać je w formułach arkusza, ale poprzedzanie nazwy funkcji nazwą arkusza jest dla mnie niewygodne. Czy jest jakiś sposób obejścia tego problemu? (889)
- Chciałbym, aby pewien skoroszyt był ładowany za każdym razem, kiedy uruchamiam Excela. Chciałbym też, aby makro zapisane w tym skoroszycie było wykonywane automatycznie. Czy wymagam zbyt wiele? (890)
- Mam skoroszyt, w którym zdefiniowałem procedurę Workbook_Open. Czy jest sposób zabezpieczenia się przed wykonywaniem tej procedury w momencie otwierania skoroszytu? (890)
- Czy z poziomu procedury VBA można uzyskać dostęp do wartości komórki arkusza, który nie jest otwarty? (890)
- Jak uniknąć wyświetlania pytania "Czy chcesz zapisać plik..." w momencie zamykania skoroszytu z poziomu VBA? (890)
- Co zrobić, aby makro uruchamiało się co godzinę? (891)
- W jaki sposób nie dopuścić do wyświetlania makra na liście makr? (891)
- Czy można zapisać wykres w formacie GIF? (891)
- Czy zmienne zadeklarowane w procedurze VBA są dostępne w innych procedurach VBA? A jak wygląda sytuacja w przypadku, kiedy procedurę zdefiniowano w innym module lub w innym skoroszycie? (891)
- Pytania dotyczÄ…ce funkcji (892)
- Utworzyłem funkcję VBA, która będzie używana w formułach jako funkcja arkuszowa. Niestety próba jej użycia zawsze kończy się błędem #NAZWA?. Co jest nie tak? (892)
- Napisałem funkcję VBA, która działa bez zarzutu, jeżeli wywołam ją z innej procedury. Funkcja nie działa jednak, gdy zostanie użyta w formule. W czym problem? (892)
- Utworzyłem funkcję arkusza. Kiedy próbuję z niej skorzystać za pomocą okna dialogowego Wstawianie funkcji, wyświetla się komunikat "Pomoc niedostępna". Co zrobić, aby w oknie Wstawianie funkcji wyświetlał się opis mojej funkcji? (892)
- Czy w oknie dialogowym Wstawianie funkcji można również wyświetlić pomoc na temat argumentów zdefiniowanej funkcji? (892)
- Zdefiniowana przeze mnie funkcja wyświetla się w kategorii Użytkownika okna dialogowego Wstawianie funkcji. W jaki sposób spowodować, aby wyświetlała się w innej kategorii? (893)
- Jak utworzyć nową kategorię funkcji? (893)
- Zdefiniowałem funkcję do wykorzystania w formułach arkusza. Co należy zrobić, aby funkcja zwracała wartość błędu (#ARG!), jeżeli użytkownik wprowadzi niepoprawne argumenty? (893)
- Jak wymusić przeliczenie formuł, w których wykorzystano funkcję użytkownika? (894)
- Czy można użyć wbudowanych funkcji Excela w kodzie VBA? (894)
- Czy jest sposób, aby wymusić koniec wiersza w wyświetlanym oknie informacyjnym MsgBox? (894)
- Pytania dotyczące obiektów, właściwości, metod i zdarzeń (894)
- Nie rozumiem pojęcia obiektów. Czy jest gdzieś lista obiektów Excela, które można wykorzystać? (894)
- Przeraża mnie liczba dostępnych właściwości i metod. Jak mogę się dowiedzieć, jakie metody i właściwości są dostępne dla określonego obiektu? (895)
- Czym sÄ… kolekcje? Czy sÄ… to obiekty? (895)
- Kiedy próbuję odwołać się do arkusza w kodzie VBA, uzyskuję komunikat o błędzie "subscript out of range" (indeks poza zakresem). Ja przecież nie używam żadnych indeksów. O co tu chodzi? (895)
- Jak zablokować możliwość przewijania arkusza przez użytkownika? (896)
- Czym się różni metoda Select obiektu Range od metody Goto obiektu Application? (896)
- Jaka jest różnica pomiędzy uaktywnieniem zakresu a jego zaznaczeniem? (896)
- Czy istnieje łatwy sposób usunięcia z arkusza wszystkich wartości i pozostawienia formuł bez zmian? (896)
- Potrafię napisać kod VBA, który zaznacza zakres na podstawie podanego adresu komórki, ale w jaki sposób napisać kod, który zaznacza zakres tylko na podstawie numeru wiersza i kolumny? (897)
- Czy jakieś polecenie VBA powoduje zakończenie pracy Excela? Kiedy próbuję zarejestrować polecenie Plik/Zakończ, Excel kończy działanie, zanim zdołam obejrzeć zarejestrowany kod (897)
- Jak wyłączyć aktualizowanie ekranu w czasie działania makra? (897)
- Jak najłatwiej zdefiniować nazwę zakresu za pomocą kodu VBA? (897)
- Jak sprawdzić, czy komórce lub zakresowi nadano nazwę? (898)
- Czy można wyłączyć przyciski Ustawienia i Marginesy wyświetlane w oknie Podgląd wydruku Excela? (898)
- Czy można wyświetlać komunikaty na pasku stanu w czasie działania makra? Napisałem makro, które długo działa. Byłoby dobrze, gdyby postęp wykonania wyświetlał się na pasku stanu (898)
- Zarejestrowałem makro VBA kopiujące zakres i wklejające go do innego obszaru. Wykorzystałem w nim metodę Select. Czy istnieje lepszy sposób od wycinania i wklejania? (898)
- Nie udało mi się znaleźć metody pozwalającej na sortowanie tablicy VBA. Czy to oznacza, że muszę skopiować wartości do arkusza i zastosować metodę Range.Sort? (899)
- Moje makro działa z zaznaczonymi komórkami, ale nie działa w przypadku zaznaczenia innych elementów (np. wykresu). W jaki sposób sprawdzić, czy zaznaczono zakres komórek? (899)
- Jak sprawdzić, czy uaktywniono wykres? (899)
- Chcę, by makro VBA zliczało liczbę wierszy zaznaczonych przez użytkownika. Zastosowanie metody Selection.Rows.Count nie działa, jeżeli zostaną zaznaczone wiersze, które ze sobą nie sąsiadują. Czy to jest błąd? (899)
- Korzystam z Excela do tworzenia faktur. Czy istnieją sposoby generowania niepowtarzalnych numerów faktur? (900)
- Czy istnieje właściwość skoroszytu, która uniemożliwia ukrycie okna Excela przez okno innej aplikacji? (900)
- Czy istnieje instrukcja VBA umożliwiająca zaznaczenie ostatniej pozycji w kolumnie lub wierszu? Ręcznie można to zrobić za pomocą klawiszy Ctrl+Shift+strzałka w dół lub Ctrl+Shift+strzałka w prawo, ale jak zrobić to samo za pomocą makra? (900)
- Jak uzyskać informację o ostatniej niepustej komórce w podanej kolumnie? (901)
- Odwołania w języku VBA bywają bardzo długie, zwłaszcza jeżeli trzeba użyć pełnej specyfikacji arkusza i skoroszytu. Czy istnieje sposób skrócenia tych odwołań? (901)
- Czy można zadeklarować tablicę, jeżeli nie wiadomo, ile elementów ma ona zawierać? (901)
- Czy mogę umożliwić użytkownikowi cofnięcie skutków działania makra? (902)
- Czy mogę zatrzymać działanie makra, tak aby użytkownik mógł wprowadzić dane do wybranej komórki? (902)
- W języku VBA istnieje funkcja InputBox, ale jest także metoda InputBox obiektu Application. Czy to jest to samo? (902)
- Aby napisać instrukcję VBA tworzącą formułę, muszę użyć znaku cudzysłowu wewnątrz łańcucha znaków ujętego w cudzysłów. Jak to zrobić? (902)
- Utworzyłem tablicę, ale pierwszy jej element jest traktowany jak drugi. W czym problem? (903)
- Chciałbym, aby kod VBA wykonywał się tak szybko, jak to tylko możliwe. Czy są na to jakieś sposoby? (903)
- Pytania dotyczÄ…ce formularzy UserForm (904)
- Chcę pobrać od użytkownika zaledwie kilka informacji. Wydaje mi się, że zastosowanie formularza UserForm to zbyt dużo. Czy istnieje jakieś alternatywne rozwiązanie? (904)
- W formularzu UserForm zdefiniowałem 12 przycisków. Jak przypisać pojedyncze makro, które będzie wykonywane w momencie kliknięcia dowolnego z nich? (904)
- Jak wyświetlić wykres w formularzu UserForm? (904)
- Jak usunąć przycisk "X" z paska tytułu formularza UserForm? Nie chcę, aby użytkownik mógł zamykać okno w ten sposób (904)
- Utworzyłem formularz UserForm, którego formanty są powiązane z arkuszem za pomocą właściwości ControlSource. Czy jest to najlepszy sposób rozwiązania tego problemu? (905)
- Czy można utworzyć tablicę formantów dla formularza UserForm? Można to zrobić w Visual Basicu, ale nie wiem, jak się to robi w języku VBA (905)
- Czy jest różnica pomiędzy ukryciem formularza UserForm a usunięciem go z pamięci? (905)
- Co zrobić, aby formularz UserForm pozostał otwarty podczas wykonywania innych działań? (905)
- W Excelu 97 powstaje błąd kompilacji przy próbie skorzystania z instrukcji UserForm1.Show vbModeless. Czy można napisać kod, który powoduje, że okno jest niemodalne w Excelu 2000 i wersjach nowszych, ale pozostaje modalne w Excelu 97? (906)
- Chciałbym wyświetlić wskaźnik postępu zadania dla długo wykonujących się procesów, podobny do tych, które wyświetlają się w programach instalujących oprogramowanie. Jak to zrobić? (906)
- Czy można wykorzystać narzędzie rysowania Excela do utworzenia prostych rysunków w formularzu UserForm? (906)
- Jak wygenerować listę plików i katalogów w formularzu UserForm, aby użytkownik mógł wybrać plik z listy? (907)
- Chciałbym połączyć łańcuchy znaków i wyświetlić je za pomocą kontrolki ListBox. Kiedy jednak to robię, nie są one właściwie wyrównane. Co zrobić, aby pomiędzy łańcuchami znaków były wyświetlane równe odstępy? (907)
- Czy istnieje prosty sposób wypełnienia pola listy lub pola kombi? (907)
- Czy można wyświetlać wbudowane okna dialogowe Excela za pomocą kodu VBA? (907)
- Wypróbowałem technikę opisaną w odpowiedzi na poprzednie pytanie i uzyskałem komunikat o błędzie. Dlaczego? (908)
- Za każdym razem, kiedy tworzę formularze UserForm, dodaję przyciski OK i Anuluj. Czy jest jakiś sposób, aby kontrolki te wyświetlały się automatycznie? (908)
- Czy można utworzyć formularz UserForm bez paska tytułu? (908)
- Kiedy kliknę przycisk w zdefiniowanym przeze mnie formularzu UserForm, nic się nie dzieje. Czy robię coś źle? (908)
- Czy można utworzyć formularz UserForm, którego rozmiar jest taki sam, niezależnie od rozdzielczości ekranu? (908)
- Czy można utworzyć pole w formularzu UserForm umożliwiające określenie zakresu arkusza poprzez jego wskazanie? (908)
- Czy można zmienić początkową pozycję formularza UserForm? (908)
- Czy można utworzyć formularz UserForm tak, aby użytkownik mógł zmieniać jego rozmiar? (909)
- Pytania dotyczące dodatków (909)
- Gdzie można znaleźć dodatki Excela? (909)
- W jaki sposób zainstalować dodatek? (909)
- Kiedy instaluję dodatek z okna dialogowego Dodatki, wyświetla się on bez nazwy i opisu. Jak dodać opis dodatku? (909)
- Mam kilka dodatków, których nie używam, ale nie wiem, w jaki sposób usunąć je z listy Dostępne dodatki w oknie dialogowym Dodatki (910)
- Jak tworzy siÄ™ dodatki? (910)
- Próbowałem utworzyć dodatek, ale w polu Zapisz jako typ nie ma możliwości wyboru dodatku (910)
- Czy powinienem przekształcić wszystkie moje ważne skoroszyty na dodatki? (910)
- Czy powinienem zachować dwie kopie skoroszytu: wersję XLSM i XLAM? (910)
- Jak modyfikować dodatek po jego utworzeniu? (910)
- Czym się różni plik XLSM od pliku XLAM utworzonego na podstawie tego pliku XLSM? Czy plik XLAM to wersja skompilowana? Czy działa szybciej? (911)
- Czy można zablokować możliwość przeglądania kodu dodatku przez innych użytkowników? (911)
- Czy dodatki XLAM są bezpieczne? Mówiąc inaczej, jeżeli dostarczę użytkownikom plik XLAM, czy mogę mieć pewność, że nikt nie będzie przeglądał kodu? (911)
- Pytania dotyczące pasków poleceń (911)
- Jak użyć VBA do umieszczenia nowego przycisku polecenia na Wstążce? (911)
- Jakie możliwości modyfikacji interfejsu pod kątem ułatwienia uruchamiania makr oferuje Excel 2007? (911)
- Jak dodać makro do paska narzędzi Szybki dostęp? (912)
- Umieściłem na pasku narzędzi Szybki dostęp przycisk makra, ale jego kliknięcie powoduje błąd (912)
- Jak użyć VBA do aktywowania określonej karty Wstążki? (912)
- Jak zablokować możliwość wyświetlania menu podręcznego po kliknięciu prawym przyciskiem myszy? (912)
Dodatki (913)
Dodatek A: Zasoby online dotyczÄ…ce Excela (915)
- Pomoc systemowa programu Excel (915)
- Pomoc techniczna firmy Microsoft (916)
- Opcje pomocy technicznej (916)
- Baza wiedzy firmy Microsoft (916)
- Strona domowa programu Microsoft Excel (916)
- Strona domowa pakietu Microsoft Office (916)
- Internetowe grupy dyskusyjne (917)
- Dostęp do grup dyskusyjnych za pomocą czytników grup dyskusyjnych (917)
- Dostęp do grup dyskusyjnych za pomocą przeglądarki sieciowej (917)
- Wyszukiwanie informacji w grupach dyskusyjnych (918)
- Strony internetowe WWW (919)
- Strona domowa Spreadsheet (919)
- Strona Daily Dose of Excel (920)
- Strona o Excelu Jona Peltiera (920)
- Pearson Software Consulting (920)
- Strona o Excelu Stephena Bullena (920)
- Strony o Excelu Davida McRitchie (920)
- Mr. Excel (920)
Dodatek B: Instrukcje i funkcje VBA (921)
- Wywoływanie funkcji Excela w instrukcjach VBA (924)
Dodatek C: Kody błędów VBA (931)
Dodatek D: Zawartość płyty CD-ROM (935)
- Wymagania systemowe (935)
- Korzystanie z płyty CD-ROM (935)
- Co znajduje się na płycie CD-ROM (936)
- Przykładowe skoroszyty omawiane w naszej książce (936)
- Rozwiązywanie problemów (950)
Skorowidz (951)