excel. programowanie dla profesjonalistów helion.pdf

(19618 KB) Pobierz
718429192 UNPDF
IDZ DO
PRZYK£ADOW Y ROZDZIA£
Excel. Programowanie
SPIS TREŒCI
dla profesjonalistów
KATALOG KSI¥¯EK
Autorzy: Stephen Bullen, Rob Bovey, John Green
T³umaczenie: Robert Górczyñski, Krzysztof Mas³owski
ISBN: 83-246-0079-5
Format: B5, stron: 768
KATALOG ONLINE
ZAMÓW DRUKOWANY KATALOG
TWÓJ KOSZYK
Wiêkszoœci u¿ytkowników Excel kojarzy siê wy³¹cznie z arkuszem kalkulacyjnym
u¿ywanym w biurach. Zdecydowanie mniej osób wie, ¿e Excel jest równie¿ potê¿nym
narzêdziem programistycznym, za pomoc¹ którego projektuje siê rozbudowane
aplikacje, wyposa¿one w graficzne interfejsy u¿ytkownika i korzystaj¹ce z danych
zewnêtrznych, jêzyka XML i us³ug sieciowych. Dziêki jêzykowi Visual Basic for
Applications (VBA) mo¿na tworzyæ na bazie Excela profesjonalne narzêdzia bardzo
dobrej jakoœci.
Ksi¹¿ka „Excel. Programowanie dla profesjonalistów” to podrêcznik poœwiêcony
projektowaniu aplikacji w œrodowisku Excela, adresowany do doœwiadczonych
u¿ytkowników tego narzêdzia oraz programistów. Autorzy krok po kroku wyjaœniaj¹,
jak tworzyæ dodatki, implementowaæ us³ugi sieciowe, projektowaæ formularze userform.
Ucz¹ konstruowania wykresów i obs³ugi b³êdów, pokazuj¹, w jaki sposób
zoptymalizowaæ wydajnoœæ aplikacji i jak je dystrybuowaæ.
Najlepsze praktyki programistyczne w Excelu i VBA
Projektowanie arkusza
Tworzenie dodatków
Sterowanie paskami narzêdzi
Korzystanie z funkcji Windows API
Budowanie interfejsów u¿ytkownika
Po³¹czenia z bazami danych
Usuwanie b³êdów z kodu Ÿród³owego
Sterowanie innymi aplikacjami MS Office
Korzystanie z funkcji Visual Basic 6 i VB.NET
Po³¹czenia z us³ugami sieciowymi
Tworzenie wersji dystrybucyjnej aplikacji
Poznaj zasady tworzenia aplikacji przy u¿yciu Excela —
z tych narzêdzi korzystaj¹ najwiêksze firmy œwiata
DODAJ DO KOSZYKA
CENNIK I INFORMACJE
ZAMÓW INFORMACJE
ONOWOŒCIACH
ZAMÓW CENNIK
CZYTELNIA
FRAGMENTY KSI¥¯EK ONLINE
Wydawnictwo Helion
ul. Chopina 6
44-100 Gliwice
tel. (32)230-98-63
e-mail: helion@helion.pl
718429192.001.png 718429192.002.png 718429192.003.png 718429192.004.png
Spis treści
O autorach ....................................................................................... 9
Rozdział 1. Wstęp ............................................................................................ 11
O książce ........................................................................................................................ 11
Twórca programowania excelowego .............................................................................. 12
Excel jako platforma do tworzenia aplikacji .................................................................. 14
Struktura ......................................................................................................................... 17
Przykłady ....................................................................................................................... 18
Wersje obsługiwane ....................................................................................................... 18
Rodzaje kroju pisma ....................................................................................................... 19
Na płycie CD .................................................................................................................. 20
Pomoc i wsparcie ........................................................................................................... 20
Rozdział 2. Architektura aplikacji ..................................................................... 23
Koncepcje ....................................................................................................................... 23
Wnioski .......................................................................................................................... 33
Rozdział 3. Najlepsze praktyki programowania w Excelu i VBA .......................... 35
Konwencje nazw ............................................................................................................ 35
Najlepsze praktyki organizacji i tworzenia struktury aplikacji ....................................... 46
Najlepsze praktyki określające ogólne zasady tworzenia oprogramowania ................... 50
Wnioski .......................................................................................................................... 66
Rozdział 4. Projektowanie arkusza .................................................................... 67
Zasady projektowania dobrego interfejsu użytkownika ................................................. 67
Wiersze i kolumny programu: podstawowe techniki
tworzenia interfejsu użytkownika ................................................................................ 68
Nazwy definiowane ........................................................................................................ 69
Style ............................................................................................................................... 75
Techniki kreślenia interfejsów użytkownika .................................................................. 79
Weryfikacja danych ........................................................................................................ 83
Formatowanie warunkowe ............................................................................................. 86
Używanie kontrolek w arkuszu ...................................................................................... 92
Przykład praktyczny ....................................................................................................... 94
Wnioski .......................................................................................................................... 99
 
4
Excel. Programowanie dla profesjonalistów
Rozdział 5. Dodatki funkcyjne, ogólne i specjalizowane dla aplikacji ................ 101
Cztery etapy rozwoju i działania aplikacji .................................................................... 101
Dodatki będące bibliotekami funkcji ............................................................................ 104
Dodatki ogólne ............................................................................................................. 110
Dodatki specjalizowane dla aplikacji ........................................................................... 111
Przykład praktyczny ..................................................................................................... 117
Wnioski ........................................................................................................................ 128
Rozdział 6. Aplikacja dyktatorska ................................................................... 129
Struktura aplikacji dyktatorskiej ................................................................................... 129
Przykład praktyczny ..................................................................................................... 142
Wnioski ........................................................................................................................ 147
Rozdział 7. Używanie modułów klas do tworzenia obiektów ............................. 149
Tworzenie obiektów ..................................................................................................... 149
Tworzenie kolekcji ....................................................................................................... 153
Wychwytywanie zdarzeń ............................................................................................. 159
Generowanie zdarzeń ................................................................................................... 161
Przykład praktyczny ..................................................................................................... 167
Wnioski ........................................................................................................................ 172
Rozdział 8. Zaawansowane sterowanie paskami poleceń ................................. 175
Projektowanie paska poleceń ....................................................................................... 175
Tablicowe sterowanie paskami poleceń ....................................................................... 177
Zbieranie wszystkiego razem ....................................................................................... 194
Ładowanie niestandardowych ikon z plików ................................................................ 201
Podczepianie obsługi zdarzeń do kontrolek paska poleceń .......................................... 205
Przykład praktyczny ..................................................................................................... 213
Wnioski ........................................................................................................................ 218
Rozdział 9. Zrozumienie i używanie wywołań Windows API .............................. 221
Ogólny opis .................................................................................................................. 222
Praca z ekranem ........................................................................................................... 226
Praca z oknami ............................................................................................................. 229
Praca z klawiaturą ........................................................................................................ 236
Praca z systemem plików i siecią ................................................................................. 241
Przykład praktyczny ..................................................................................................... 252
Wnioski ........................................................................................................................ 255
Rozdział 10. Projektowanie formularzy UserForm i najlepsze praktyki ................. 257
Zasady .......................................................................................................................... 257
Podstawy kontrolek ...................................................................................................... 265
Efekty wizualne ............................................................................................................ 271
Pozycjonowanie i rozmiary formularzy UserForm ....................................................... 278
Kreatory ....................................................................................................................... 283
Dynamiczne formularze UserForm .............................................................................. 287
Niemodalne formularze UserForm ............................................................................... 294
Wyszczególnienie kontrolek ........................................................................................ 298
Przykład praktyczny ..................................................................................................... 303
Wnioski ........................................................................................................................ 304
Rozdział 11. Interfejsy ...................................................................................... 305
Co to jest interfejs? ....................................................................................................... 305
Ponowne użycie kodu ................................................................................................... 306
Definiowanie własnych interfejsów ............................................................................. 308
Spis treści
5
Wdrażanie własnego interfejsu ..................................................................................... 309
Używanie własnych interfejsów ................................................................................... 311
Klasy polimorficzne ..................................................................................................... 312
Polepszanie solidności .................................................................................................. 316
Upraszczanie rozwoju .................................................................................................. 317
Architektura modułów rozszerzających ....................................................................... 326
Przykład praktyczny ..................................................................................................... 327
Wnioski ........................................................................................................................ 329
Rozdział 12. Obsługa błędów VBA ..................................................................... 331
Pojęcia obsługi błędów ................................................................................................. 331
Zasada pojedynczego punktu wyjścia .......................................................................... 339
Prosta obsługa błędów .................................................................................................. 340
Złożone projekty obsługi błędów ................................................................................. 340
Centralna obsługa błędów ............................................................................................ 344
Obsługa błędów w klasach i formularzach UserForm .................................................. 350
Zbieranie wszystkiego razem ....................................................................................... 351
Przykład praktyczny ..................................................................................................... 356
Wnioski ........................................................................................................................ 364
Rozdział 13. Programowanie i bazy danych ....................................................... 365
Wprowadzenie do baz danych ...................................................................................... 365
Projektowanie warstwy dostępu do danych .................................................................. 380
Dostęp do danych za pomocą SQL i ADO ................................................................... 381
Dalsze pozycje do czytania .......................................................................................... 397
Przykład praktyczny ..................................................................................................... 398
Wnioski ........................................................................................................................ 408
Rozdział 14. Techniki przetwarzania danych ...................................................... 409
Struktury danych Excela .............................................................................................. 409
Funkcje przetwarzania danych ..................................................................................... 415
Zaawansowane funkcje ................................................................................................ 425
Wnioski ........................................................................................................................ 432
Rozdział 15. Zaawansowane techniki tworzenia wykresów ................................ 433
Podstawowe techniki .................................................................................................... 433
Techniki VBA .............................................................................................................. 447
Wnioski ........................................................................................................................ 452
Rozdział 16. Debugowanie kodów VBA ............................................................. 453
Podstawowe techniki debugowania kodów VBA ......................................................... 453
Okno Immediate (Ctrl+G) ............................................................................................ 462
Call Stack — stos wywołań (Ctrl+L) ........................................................................... 465
Okno Watch ................................................................................................................. 466
Okno Locals ................................................................................................................. 475
Object Browser — przeglądarka obiektowa (F2) ......................................................... 476
Tworzenie działającego otoczenia testowego ............................................................... 479
Stosowanie asercji ........................................................................................................ 481
Debugerskie skróty klawiaturowe, które powinien znać każdy programista ................ 483
Wnioski ........................................................................................................................ 485
Rozdział 17. Optymalizacja wydajności VBA ...................................................... 487
Mierzenie wydajności ................................................................................................... 487
Program narzędziowy PerfMon .................................................................................... 488
Myślenie kreatywne ..................................................................................................... 491
6
Excel. Programowanie dla profesjonalistów
Makrooptymalizacja ..................................................................................................... 496
Mikrooptymalizacja ..................................................................................................... 505
Wnioski ........................................................................................................................ 511
Rozdział 18. Sterowanie innymi aplikacjami Office ............................................ 513
Podstawy ...................................................................................................................... 513
Modele obiektowe głównych aplikacji Office .............................................................. 526
Przykład praktyczny ..................................................................................................... 537
Wnioski ........................................................................................................................ 537
Rozdział 19. XLL i API C ................................................................................... 539
Dlaczego warto tworzyć funkcje arkusza na bazie XLL? ............................................. 539
Tworzenie projektu XLL w Visual Studio ................................................................... 540
Struktura XLL .............................................................................................................. 545
Typy danych XLOPER i OPER ................................................................................... 552
Funkcja Excel4 ............................................................................................................. 556
Powszechnie używane funkcje API C .......................................................................... 558
XLOPER i zarządzanie pamięcią ................................................................................. 559
Rejestrowanie i wyrejestrowywanie własnych funkcji arkusza .................................... 560
Przykładowa funkcja aplikacji ..................................................................................... 562
Debugowanie funkcji arkusza ...................................................................................... 564
Różne tematy ................................................................................................................ 565
Dodatkowe źródła informacji ....................................................................................... 566
Wnioski ........................................................................................................................ 568
Rozdział 20. Połączenie Excela i Visual Basica 6 .............................................. 569
Witaj świecie ActiveX DLL ......................................................................................... 570
Dlaczego używać VB6 ActiveX DLL w projektach Excel VBA? ................................ 583
In-process kontra out-of-process .................................................................................. 596
Automatyzacja Excela z VB6 EXE .............................................................................. 597
Przykłady praktyczne ................................................................................................... 603
Wnioski ........................................................................................................................ 615
Rozdział 21. Pisanie dodatków w Visual Basic 6 ............................................... 617
Dodatek Witaj świecie .................................................................................................. 617
Projektant dodatków (Add-in Designer) ....................................................................... 621
Instalacja ...................................................................................................................... 624
Zdarzenia AddinInstance .............................................................................................. 625
Obsługa paska poleceń ................................................................................................. 628
Dlaczego warto używać dodatku COM? ...................................................................... 633
Automatyzacja dodatków ............................................................................................. 634
Przykład praktyczny ..................................................................................................... 637
Wnioski ........................................................................................................................ 637
Rozdział 22. Używanie VB.NET i Visual Studio Tools for Office ........................... 639
Ogólny opis .................................................................................................................. 639
Jak wpływać na strukturę .NET? .................................................................................. 641
Zarządzane skoroszyty ................................................................................................. 643
Zarządzane dodatki Excela ........................................................................................... 658
Hybrydowe rozwiązania VBA/VSTO .......................................................................... 659
Model bezpieczeństwa VSTO ...................................................................................... 661
Duże zagadnienia ......................................................................................................... 666
Dalsze źródła informacji .............................................................................................. 672
Przykład praktyczny ..................................................................................................... 672
Wnioski ........................................................................................................................ 675
Zgłoś jeśli naruszono regulamin