microsoft-excel-2010-pl.-jezyk-vba-i-makra.-akademia-excela full scan.pdf

(25849 KB) Pobierz
887729288.001.png
Spis treści
O autorach ................................................................................................................................ 23
Podziękowania ......................................................................................................................... 23
Wprowadzenie .................................................................................... 25
Korzystanie z języka VBA .......................................................................................................... 25
Zawartość tej książki ................................................................................................................ 25
Ułatwienie nauki ...............................................................................................................25
Zaawansowane możliwości języka VBA w Excelu ............................................................. 26
Umiejętności techniczne potrzebne do tworzenia aplikacji dla innych ............................. 26
Czy z tej książki można się nauczyć Excela? ....................................................................... 27
Przyszłość języka VBA i windowsowych wersji Excela .............................................................. 29
Wersje Excela .................................................................................................................... 29
Elementy specjalne i konwencje typograficzne ........................................................................ 30
Pliki z kodem ............................................................................................................................ 31
Następne kroki ......................................................................................................................... 31
1 Uwolnij możliwości Excela, korzystając z VBA ......................................... 33
Możliwości Excela ..................................................................................................................... 33
Podstawowe przeszkody ..........................................................................................................33
Rejestrator makr nie działa! .............................................................................................. 33
Visual Basic nie jest podobny do BASIC-a ......................................................................... 34
Dobre wieści — nauczenie się języka VBA nie jest trudne ............................................... 34
Doskonała wiadomość — Excel z językiem VBA
jest wart wysiłków włożonych w jego naukę ................................................................. 35
Znajomość narzędzi — wstążka Deweloper ............................................................................ 35
Bezpieczeństwo makr .............................................................................................................. 37
Dodawanie zaufanej lokalizacji ......................................................................................... 37
Zastosowanie ustawień makr w celu zezwolenia
na wykorzystanie makr poza zaufanymi lokalizacjami .................................................. 38
Wykorzystanie opcji Wyłącz wszystkie makra i wyświetl powiadomienie ........................39
Przegląd wiadomości na temat rejestrowania, zapisywania i uruchamiania makr .................. 40
Wypełnianie okna dialogowego Rejestrowanie makra .................................................... 40
Uruchamianie makr .................................................................................................................. 42
Tworzenie przycisku makra na wstążce ............................................................................ 42
Tworzenie przycisku makra na pasku narzędzi szybkiego dostępu ................................... 43
Przypisywanie makra do formantu formularza, pola tekstowego lub figury ....................44
Nowe typy plików w Excelu 2010 ............................................................................................. 45
6
Microsoft Excel 2010 PL. Język VBA i makra. Akademia Excela
Edytor Visual Basica ................................................................................................................. 48
Ustawienia edytora VB ..................................................................................................... 48
Eksplorator projektu ......................................................................................................... 49
Okno Properties ................................................................................................................50
Niedoskonałości rejestratora makr .......................................................................................... 50
Rejestrowanie makra ....................................................................................................... 52
Analiza kodu w oknie programowania ............................................................................. 53
Uruchomienie tego samego makra innego dnia generuje niewłaściwe wyniki ............... 55
Możliwe rozwiązanie: wykorzystywanie odwołań względnych podczas rejestrowania ... 55
Nigdy nie używaj przycisku Autosumowanie podczas rejestrowania makra .................... 59
Trzy wskazówki dotyczące używania rejestratora makr ................................................... 61
Następne kroki ......................................................................................................................... 62
2
Jeśli to jest BASIC, to dlaczego nie wygląda znajomo? ..............................63
Nie rozumiem tego kodu .........................................................................................................63
Części mowy języka VBA .......................................................................................................... 64
W rzeczywistości język VBA nie jest trudny .............................................................................. 68
Pliki pomocy VBA — używanie klawisza F1 do wyszukiwania potrzebnych informacji .. 68
Korzystanie z tematów pomocy:przeglądanie ................................................................. 69
Analiza kodu zarejestrowanego makra — korzystanie z edytora VB i systemu pomocy ........ 71
Parametry opcjonalne ...................................................................................................... 72
Zdefiniowane stałe ........................................................................................................... 72
Właściwości mogą zwracać obiekty ................................................................................. 77
Wykorzystywanie narzędzi debugowania do analizy zarejestrowanego kodu ........................ 78
Wykonywanie kodu krok po kroku ................................................................................... 78
Więcej opcji debugowania — pułapki ............................................................................ 81
Cofanie się lub przesuwanie w przód w kodzie ................................................................ 82
Uruchamianie grupy instrukcji bez trybu krokowego ....................................................... 83
Zapytania podczas krokowego uruchamiania kodu ......................................................... 83
Wykorzystywanie czujek do ustawiania pułapek ............................................................. 88
Wykorzystywanie czujki w odniesieniu do obiektu .......................................................... 89
Opis wszystkich obiektów, metod i właściwości ...................................................................... 90
Siedem wskazówek dotyczących usprawniania zarejestrowanego kodu ................................ 92
Wskazówka 1. Nie należy niczego zaznaczać ................................................................... 92
Wskazówka 2. Zapis Cells(2, 5) jest wygodniejszy niż Range("E2") ................................. 93
Wskazówka 3. Przeszukiwanie zakresu od dołu w celu odnalezienia ostatniego wiersza ..... 94
Wskazówka 4. Używanie zmiennych w celu uniknięcia „kodowania na sztywno”
wierszy i formuł ............................................................................................................. 95
Wskazówka 5. Stosowanie formuł typu W1K1 ułatwia życie ........................................... 95
Wskazówka 6. Kopiowanie i wklejanie w pojedynczej instrukcji ...................................... 96
Wskazówka 7. Wykorzystywanie konstrukcji With...End With w celu wykonywania
wielu operacji w odniesieniu do tej samej komórki lub zakresu komórek ..................... 96
Następne kroki ......................................................................................................................... 99
7
Spis treści
3
Odwoływanie się do zakresów .............................................................101
Obiekt Range .......................................................................................................................... 101
Składnia instrukcji określającej zakres ................................................................................... 102
Zakresy identyfikowane przez nazwy ..................................................................................... 102
Skrótowy sposób odwoływania się do zakresów .................................................................... 103
Odwoływanie się do zakresów w innych arkuszach ............................................................... 103
Odwoływanie się do zakresu względem innego zakresu ........................................................ 104
Wykorzystywanie właściwości Cells do zaznaczania zakresu ................................................. 105
Wykorzystywanie właściwości Cells w odniesieniu do właściwości Range .....................106
Wykorzystywanie właściwości Offset do odwoływania się do zakresu .................................. 106
Wykorzystywanie właściwości Resize do zmiany rozmiaru zakresu ....................................... 108
Wykorzystywanie właściwości Columns i Rows do definiowania zakresu .............................. 109
Wykorzystywanie metody Union do łączenia wielu zakresów ............................................... 110
Wykorzystywanie metody Intersect do tworzenia nowego zakresu
na podstawie zakresów nakładających się na siebie ........................................................... 110
Wykorzystywanie funkcji ISEMPTY do sprawdzania, czy komórka jest pusta .........................111
Wykorzystywanie właściwości CurrentRegion do zaznaczania zakresu danych .....................112
Wykorzystywanie kolekcji Areas do zwracania nieciągłego zakresu ...................................... 114
Odwołania do tabel ................................................................................................................ 115
Następne kroki ....................................................................................................................... 116
4
Funkcje definiowane przez użytkowników ...........................................117
Tworzenie funkcji ................................................................................................................... 117
Współdzielenie funkcji użytkownika ...................................................................................... 120
Przydatne funkcje użytkownika w Excelu .............................................................................. 120
Wyświetlanie w komórce nazwy bieżącego skoroszytu .................................................. 120
Wyświetlanie w komórce nazwy bieżącego skoroszytu wraz ze ścieżką dostępu ...........121
Sprawdzanie, czy skoroszyt jest otwarty ........................................................................ 121
Sprawdzanie, czy w otwartym skoroszycie istnieje arkusz ............................................. 122
Zliczanie skoroszytów w katalogu .................................................................................. 122
Odczytywanie zmiennej USERID ..................................................................................... 124
Odczytywanie daty i godziny ostatniego zapisania skoroszytu ....................................... 125
Odczytywanie trwałej wartości daty i godziny ................................................................ 125
Sprawdzanie poprawności adresu e-mail ....................................................................... 126
Sumowanie komórek na podstawie wewnętrznego koloru ........................................... 128
Zliczanie unikatowych wartości ...................................................................................... 129
Usuwanie duplikatów z zakresu ..................................................................................... 129
Znalezienie w zakresie pierwszej komórki o niezerowej długości ................................... 131
Zastępowanie wielu znaków .......................................................................................... 132
8
Microsoft Excel 2010 PL. Język VBA i makra. Akademia Excela
Odczytywanie liczb z tekstu składającego się z liczb i liter ............................................. 133
Konwersja numerów tygodni na daty ............................................................................ 134
Rozdzielanie tekstu ........................................................................................................ 135
Sortowanie z konkatenacją ............................................................................................ 135
Sortowanie cyfr i liter ..................................................................................................... 137
Wyszukiwanie ciągu w tekście ....................................................................................... 139
Odwracanie zawartości komórki .................................................................................... 139
Więcej niż jedna wartość maksymalna ........................................................................... 140
Zwracanie adresu hiperłącza .......................................................................................... 141
Zwracanie litery kolumny na podstawie adresu komórki ............................................... 141
Statyczne liczby losowe .................................................................................................. 142
Korzystanie z konstrukcji Select...Case w arkuszu .......................................................... 142
Następne kroki ....................................................................................................................... 143
5
Pętle i sterowanie przepływem ........................................................... 145
Pętle For...Next ...................................................................................................................... 145
Korzystanie ze zmiennych w instrukcji For ..................................................................... 148
Wariacje na temat pętli For...Next .................................................................................. 149
Wcześniejsze zakończenie pętli w przypadku spełnienia warunku ................................ 150
Zagnieżdżanie pętli wewnątrz innej pętli ...................................................................... 151
Pętle Do ................................................................................................................................. 151
Wykorzystanie klauzuli While lub Until wewnątrz pętli Do ............................................ 155
Pętle While...Wend ........................................................................................................ 156
Pętla języka VBA: For Each ..................................................................................................... 157
Zmienne obiektowe ....................................................................................................... 157
Sterowanie przepływem: korzystanie z konstrukcji If...Then...Else i Select Case ................... 160
Proste sterowanie przepływem: If...Then...Else ............................................................. 161
Warunki .......................................................................................................................... 161
Konstrukcja If...Then...End If .......................................................................................... 162
Decyzje typu albo – albo: If...Then...Else...End If ............................................................ 162
Wykorzystanie konstrukcji If...Else If...End If do sprawdzania wielu warunków ............ 162
Wykorzystanie struktury Select Case...End Select do sprawdzania wielu warunków ..... 163
Złożone wyrażenia w instrukcjach Case .......................................................................... 164
Zagnieżdżanie instrukcji If .............................................................................................. 164
Następne kroki ....................................................................................................................... 166
6
Formuły w stylu W1K1 ........................................................................ 167
Odwołania do komórek: porównanie stylu A1 z W1K1 .......................................................... 167
Przełączanie Excela w celu wyświetlania odwołań w stylu W1K1 ......................................... 168
Cudowna moc formuł Excela ................................................................................................. 169
Wprowadź formułę raz i skopiuj ją 1000 razy ................................................................. 169
Sekret? Nie ma w tym nic nadzwyczajnego .................................................................... 170
Zgłoś jeśli naruszono regulamin