You are on page 1of 173

WSTĘP

DO INFORMATYKI
GOSPODARCZEJ
##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313
##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
WSTĘP
DO INFORMATYKI
GOSPODARCZEJ
ZAJĘCIA LABORATORYJNE
REDAKCJA NAUKOWA
KRYSTYNA POLAŃSKA

OFICYNA WYDAWNICZA
SZKOŁA GŁÓWNA HANDLOWA W WARSZAWIE
WARSZAWA 2015

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
Autorzy
Piotr Filipkowski – 1.1, 3.5, Zakończenie i Aneks
Danuta Polak – 1.7, 2.1–2.7
Przemysław Polak – 1.2–1.6
Krystyna Polańska – Wstęp, 1.7, 2.8, 3.5 i Zakończenie
Jędrzej Wieczorkowski – 3.1–3.4

Recenzent
Jacek Cypryjański

Redaktor
Magdalena Rokicka

©C
 opyright by Piotr Filipkowski, Danuta Polak, Przemysław Polak, Krystyna Polańska,
Jędrzej Wieczorkowski & Szkoła Główna Handlowa w Warszawie, Warszawa 2015
Wszelkie prawa zastrzeżone. Kopiowanie, przedrukowywanie i rozpowszechnianie całości
lub fragmentów niniejszej publikacji bez zgody wydawcy zabronione.

Wydanie I

ISBN 978-83-7378-962-3

Szkoła Główna Handlowa w Warszawie – Oficyna Wydawnicza


02-554 Warszawa, al. Niepodległości 162
tel. +48 22 564 94 77, 22 564 95 46
www.wydawnictwo.sgh.waw.pl
e-mail: wydawnictwo@sgh.waw.pl

Projekt i wykonanie okładki


Monika Trypuz

Skład i łamanie
Gemma

Druk i oprawa
QUICK-DRUK s.c.
tel. +48 42 639 52 92
e-mail: quick@druk.pdi.pl

Zamówienie 1/I/15

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
Spis treści

Wstęp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  9

1. Wprowadzenie do projektowania systemów . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  11


1.1. Istota i cel systemu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  11
1.2. System informacyjny . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  12
Funkcje systemu informacyjnego . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  12
Modelowanie systemów informacyjnych . . . . . . . . . . . . . . . . . . . . . . . . . . . .  12
1.3. Hierarchia funkcji . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  13
Funkcja systemu informacyjnego . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  13
Diagram hierarchii funkcji . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  13
Rysowanie diagramu hierarchii funkcji . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  14
1.4. Diagramy przepływu danych . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  18
Elementy diagramów przepływu danych . . . . . . . . . . . . . . . . . . . . . . . . . . .  18
Tworzenie diagramów przepływu danych . . . . . . . . . . . . . . . . . . . . . . . . . .  21
1.5. Modelowanie danych . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  24
Diagramy związków encji . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  24
Encje . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  25
Związki . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  26
Znaczenie poprawności modelu danych . . . . . . . . . . . . . . . . . . . . . . . . . . . .  30
1.6. Relacyjne bazy danych . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  31
Zastosowanie baz danych . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  31
Relacyjny model danych . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  32
Przekształcanie diagramów związków encji w relacyjny model danych . .  34
System zarządzania bazą danych . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  35
1.7. Przykłady i zadania do samodzielnego wykonania . . . . . . . . . . . . . . . . . . . .  36
Zadania do samodzielnego wykonania . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  42

2. Podstawy pracy z relacyjną bazą danych MS Access . . . . . . . . . . . . . . . . . . . . . .  45


2.1. Tworzenie bazy danych . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  45
2.2. Tworzenie nowej tabeli . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  46
Tworzenie tabeli przez wprowadzanie danych . . . . . . . . . . . . . . . . . . . . . . .  46
Tworzenie tabeli w widoku projektu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  48
2.3. Łączenie tabel relacjami . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  52
2.4. Formularze . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  54
Formularze wieloelementowe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  54
Formularze proste . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  58

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
6   Spis treści

Tworzenie formularza z podformularzem


za pomocą Kreatora formularzy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  59
Formularze niezwiązane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  62
2.5. Kwerendy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  63
Kwerenda wybierająca . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  64
Kwerenda z parametrem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  66
Kwerenda sumująca . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  67
Kwerenda z polami obliczeniowymi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  68
Kwerenda dołączająca i usuwająca oraz makro i importowanie danych .  69
Importowanie danych z arkusza kalkulacyjnego Excel . . . . . . . . . . . . . . . .  70
Kwerenda dołączająca . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  76
Kwerenda usuwająca . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  78
Makro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  78
2.6. Użycie formularzy i kwerend do realizacji innych funkcji . . . . . . . . . . . . . .  80
Formularz do obsługi wizyty lekarskiej . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  80
Formularz do umawiania pacjenta na wizytę . . . . . . . . . . . . . . . . . . . . . . .  82
2.7. Raporty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  83
2.8. Przykład z rozwiązaniem i zadania do samodzielnego wykonania . . . . . . .  87
Zadania do samodzielnego wykonania . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  91

3. Podstawy Excela do studiowania ekonomii . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  95


3.1. Przypomnienie i rozszerzenie podstawowych informacji z zakresu Excela  95
Typy wartości, kody błędów . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  95
Adresowanie komórek i obszarów: względne, bezwzględne i mieszane . . .  97
Formuły, łącza, przecięcia obszarów . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  98
Nazwy zdefiniowane dla obszarów i komórek . . . . . . . . . . . . . . . . . . . . . . .  100
Zasady przeliczania formuł, adresowanie cykliczne . . . . . . . . . . . . . . . . . .  102
Kopiowanie, wklejanie specjalne, malarz formatów . . . . . . . . . . . . . . . . . .  104
Formatowanie, formatowanie automatyczne . . . . . . . . . . . . . . . . . . . . . . . .  105
Formatowanie warunkowe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  107
Wykresy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  110
3.2. Wybrane funkcje . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  112
Funkcje, kategorie funkcji, zagnieżdżanie funkcji . . . . . . . . . . . . . . . . . . . .  112
Podstawowe funkcje agregujące, agregacja w pasku stanu . . . . . . . . . . . . .  114
Funkcja Z­ AOKR, zagadnienie dokładności . . . . . . . . . . . . . . . . . . . . . . . . .  115
Funkcja J­ EŻELI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  117
Funkcje SUMA.­JEŻELI, SUMA.­WARUNKÓW . . . . . . . . . . . . . . . . . . . . . .  119
Funkcja W­ YSZUKAJ.­PIONOWO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  120
Operacje na dacie i czasie, funkcje DZIŚ, ­TERAZ . . . . . . . . . . . . . . . . . . .  123
3.3. Podstawowe operacje na bazach danych . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  125
Pojęcie bazy danych w Excelu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  125
Sortowanie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  126

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
Spis treści 7

Filtrowanie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  127
Tabele przestawne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  128
3.4. Wybrane funkcje finansowe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  131
Ogólne zasady dotyczące funkcji finansowych . . . . . . . . . . . . . . . . . . . . . . .  131
Funkcja FV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  133
Funkcja PV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  134
Funkcja RATE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  135
Funkcja NPER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  137
Funkcja PMT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  138
3.5. Przykłady z rozwiązaniami i zadania do samodzielnego wykonania . . . . .  139
Przykłady z rozwiązaniami . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  139
Zadania do samodzielnego wykonania . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  149

Zakończenie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  157

Bibliografia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  159

Aneks 1.  Przegląd aplikacji biurowych alternatywnych wobec Microsoft Office  161


Oprogramowanie instalowane w systemie operacyjnym . . . . . . . . . . . . . . .  163
Oprogramowanie dostępne w chmurze . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  166
Oprogramowanie przenośne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  170

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313
##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
Wstęp 9

Wstęp

Przedkładana książka powstała w Instytucie Informatyki i Gospodarki Cyfrowej


jako efekt wieloletnich doświadczeń w pracy dydaktycznej jej autorów w Szkole Głów‑
nej Handlowej w Warszawie. Jest to przede wszystkim podręcznik do przedmiotu
Wstęp do informatyki gospodarczej, którego celem jest pomoc zarówno dla studen‑
tów, jak i prowadzących te zajęcia. Autorzy mają jednak nadzieję, że książka okaże
się przydatna nie tylko dla studentów SGH, lecz także ekonomistów, którzy zechcą
samodzielnie podnieść swoje kompetencje informatyczne w oferowanym zakresie.
W niniejszej książce założono, że czytelnik nie po raz pierwszy zasiada do kom‑
putera i korzystał już wcześniej z pakietu programów Microsoft Office w środowisku
Windows. Omawiane programy, czyli Access i Excel, dotyczą wersji MS Office 2010,
ale wszystkie dokładniej omówione narzędzia i funkcje będą dostępne także w now‑
szych wersjach tych aplikacji.
Książka zawiera trzy podstawowe części. W pierwszej znalazł się skrócony kurs
projektowania systemów informacyjnych połączony z modelowaniem danych i mi‑
krobaz danych. W drugiej części model logiczny zostaje zaimplementowany do
pakietu Access obsługującego relacyjne bazy danych. W trzeciej części zamieszczono
przypomnienie i przystępny opis podstawowych funkcji i poleceń wykorzystywanych
w typowym arkuszu kalkulacyjnym, stosując jako przykład program Excel i wskazu‑
jąc w nim także na pewne funkcje bazodanowe, które są możliwe do wykorzystania.
Na końcu każdej z tych trzech części dołączono przykłady z rozwiązaniami i zadania
do samodzielnego wykonania, do których odpowiedzi w formie plików do pobrania
znajdują się na stronie internetowej Instytutu Informatyki i Gospodarki Cyfrowej1
w okienku Podręcznik. Podobnie pliki niezbędne do wykonania niektórych zadań
są również do pobrania ze strony Instytutu. W zakończeniu przedstawiono wybrane
aplikacje biurowe dostępne w internecie nieodpłatnie, które mogą stanowić alter‑
natywę dla pakietu MS Office, i omówiono zasady funkcjonowania Chmury SGH
(dostępnej już tylko dla studentów Szkoły Głównej Handlowej w Warszawie).
Autorzy żywią głęboką nadzieję, że lektura tej książki okaże się przyjemna,
pożyteczna i inspirująca do doskonalenia kompetencji informatycznych i dalszych
poszukiwań intelektualnych.

1  http://kolegia.sgh.waw.pl/pl/KAE/struktura/IIiGC.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
10   Wstęp

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
1.1.  Istota i cel systemu 11

1. Wprowadzenie do projektowania systemów

1.1. Istota i cel systemu


Zarówno w teorii, jak i w praktyce można spotkać wiele różnych systemów. Nie
dziwi więc fakt mnogości definicji pojęcia system. Szukając inspiracji w naukach
matematyczno­‑przyrodniczych, ekonomicznych i technicznych, przyjmijmy, że pod
pojęciem systemu będziemy rozumieć pewną celowo zorganizowaną całość, istnie‑
jącą w pewnym otoczeniu, będącą efektem synergii wzajemnie powiązanych ze sobą
relacjami części, które są niezależne i dynamiczne. Części te istnieją w jakimś celu,
a współdziałając, realizują cel istnienia systemu jako szczególnej całości, która jest
zupełna i kompletna.
W  procesie realizacji celu istnienia systemu następuje zużycie zasobów
energetycznych­ i/­lub informacyjnych, co prowadzi do degradacji właściwości sys‑
temu. W związku z tym przy uwzględnieniu dynamiki istnienia systemu w pewnej
arystotelesowskiej całości ważna jest dbałość o jego części. Z pełną świadomością
drugiej zasady termodynamiki należy przyjąć postępujący wzrost entropii w systemie
za naturalny i nieuchronny proces degradacji jego struktury i organizacji, co w prak‑
tyce wzbudza potrzebę odtwarzania stanu rzeczy.
Cel istnienia systemu jest niemniej ważny również ze względu na efektywność
działania. Dobrze zarysowany cel ułatwia optymalizację i ocenę jakości systemu
w obszarze funkcjonowania jego struktury i organizacji.
Właściwie określony cel to taki, który spełnia pięć warunków. Po pierwsze,
powinien być ważny, istotny, ale też, po drugie, realny, osiągalny. Ponadto, po trze‑
cie – prosty do zidentyfikowania, po czwarte – łatwy do obserwacji, a po piąte –
mierzalny2. Stwierdzenie, że cel powinien być mierzalny, oznacza, że należy go tak
sformułować, żeby można było po założonym czasie stwierdzić, czy został zrealizo‑
wany, czy też nie.

2  R. Barker, C. Longman, Case Method. Modelowanie funkcji i procesów, WNT, Warszawa 2001, s. 45.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
12   1.  Wprowadzenie do projektowania systemów

1.2. System informacyjny

Funkcje systemu informacyjnego


Współczesne organizacje nie mogą w praktyce funkcjonować bez skomputery‑
zowanego systemu informacyjnego (nazywanego też systemem informatycznym).
Systemy informatyczne są konieczne, żeby sprawnie realizować złożone funkcje
biznesowe, jak np. sprzedaż, zarządzanie zasobami finansowymi, prowadzenie księ‑
gowości czy komunikowanie się w globalnych korporacjach.
System informacyjny to zbiór połączonych elementów, które zbierają, przetwa‑
rzają, magazynują i udostępniają informacje potrzebne w działaniach operacyjnych
organizacji i przy podejmowaniu decyzji.
Z formalnego punktu widzenia system informacyjny charakteryzują trzy podsta‑
wowe elementy: wejścia, przetwarzanie i wyjścia (rysunek 1.1). Wejścia reprezentują
dane odbierane przez system. Przetwarzanie (nazywane też transformacją) prze‑
kształca je na informacje użyteczne przy podejmowaniu decyzji. Natomiast wyjścia
reprezentują dystrybuowanie tych informacji do otoczenia zarówno wewnątrz, jak
i poza organizacją.

O T O C Z E N I E

SYSTEM INFORMACYJNY
Wejścia Wyjścia
Przetwarzanie

Rysunek 1.1. Elementy systemu informacyjnego

Modelowanie systemów informacyjnych


Systemy informacyjne przechowują dane i przetwarzają w informacje potrzebne
w procesach decyzyjnych. Tak więc, aby dostarczyć wysokiej jakości informacje,
potrzebne są dwa elementy:
• prawidłowe procedury przetwarzania,
• poprawne dane.
Stąd też przy tworzeniu systemów informatycznych należy uwzględnić dwa
aspekty:

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
1.3.  Hierarchia funkcji 13

• funkcjonalny (dotyczy czynności przetwarzania wykonywanych przez system),


• opisu danych (dotyczy struktur przechowywanych i przetwarzanych danych).
Zanim rozpocznie się programowanie, należy uzgodnić z przyszłymi użytkow‑
nikami ich potrzeby i opisać je w sposób sformalizowany, tak aby programiści i inni
specjaliści w zakresie technologii informatycznych dokładnie wiedzieli, do czego sys‑
tem ma służyć, jakie są wobec niego oczekiwania. Ten proces formalnego opisywania
systemu jest nazywany modelowaniem. Modelowanie funkcji polega na sprecyzowaniu
głównych działań zachodzących w podmiocie gospodarczym (czyli funkcji), a następnie
zidentyfikowaniu, co inicjuje to działanie (jakie zdarzenia) i na jakie znaczące podmioty
(encje) lub ich własności (atrybuty) te funkcje mają wpływ w świetle założonego celu3.
W następnych punktach rozdziału zostały przedstawione dwie różne metody mode‑
lowania funkcji systemu i wprowadzenie do modelowania danych.

1.3. Hierarchia funkcji

Funkcja systemu informacyjnego


Funkcja jest czynnością lub grupą powiązanych czynności, które muszą być wy‑
konane przez system. Funkcja ogólna (wysokiego poziomu) opisuje główne obszary
funkcjonalne systemu. Jest wykonywana wtedy, gdy zachodzi taka potrzeba, a czasem
jest wykonywana w sposób ciągły – nie ma początku i końca. Funkcja elementarna
reprezentuje podstawową niepodzielną funkcjonalnie czynność realizowaną przez
system informacyjny. Musi być ona wykonana w całości albo anulowana.
Nazwa funkcji odzwierciedla czynność przez nią wykonywaną. W języku polskim
stosuje się zwykle w nazwie funkcji rzeczownik opisujący czynność lub czasownik
w trybie rozkazującym, po którym następuje dopełnienie opisujące obiekt, którego
dotyczy przetwarzanie, np. przyjęcie zamówienia albo przyjmij zamówienie).

Diagram hierarchii funkcji


Hierarchia funkcji (HF) jest metodą modelowania funkcji systemu informacyj‑
nego poprzez definiowanie funkcji ogólnych funkcjami bardziej szczegółowymi aż
do poziomu funkcji elementarnych4. Czynność podziału elementu (w tym wypadku

3  Ibidem, s. 17.
4  Szerzej np. w: J. Kisielnicki, MIS – systemy informatyczne zarządzania, Placet, Warszawa 2008,
s. 239–240.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
14   1.  Wprowadzenie do projektowania systemów

funkcji) na jej bardziej szczegółowe składniki nazywamy dekompozycją. Każdy


poziom dekompozycji ukazuje więcej szczegółów. W ten sposób powstaje struktura
hierarchiczna przedstawiana w formie diagramu.
Diagram hierarchii funkcji pokazuje dekompozycję od ogółu do szczegółu
struktury funkcjonalnej systemu. Każda funkcja na diagramie może być funkcją
nadrzędną wobec kilku funkcji niższego rzędu, podrzędną wobec jej jednej funkcji
nadrzędnej albo ma obydwie te cechy. Dekompozycja funkcji nadrzędnej na jedną
funkcję podrzędną nie ma sensu, nie ujawnia żadnych szczegółów funkcji nadrzędnej.
W celu zapewnienia czytelności diagramów jest wskazane, żeby funkcja nadrzędna
miała od 3 do 8 funkcji podrzędnych.
Cały modelowany system informacyjny reprezentowany jest na diagramie jako
jedna funkcja główna (korzeń hierarchii, ang. root function). Funkcja główna nie
ma funkcji nadrzędnej nad nią. Zwykle określa się ją nazwą modelowanego systemu
lub jednostki organizacyjnej, dla której przeznaczony jest system, a więc niezgodnie
z konwencję nazywania funkcji. Funkcja główna jest dekomponowana na funkcje
ogólne (wysokiego poziomu), a te są dekomponowane dalej, aż do osiągnięcia po‑
ziomu funkcji elementarnych.
Dekompozycja funkcji musi być zgodna z następującymi regułami:
• suma wszystkich funkcji podrzędnych równa się ich funkcji nadrzędnej,
• funkcje podrzędne zawierają wszystko to, co jest potrzebne do wykonania funkcji
nadrzędnej,
• funkcje podrzędne muszą być konieczne do realizacji funkcji nadrzędnej; jeśli
nie są, to powinny być przeniesione do innej części diagramu,
• wykonanie funkcji nadrzędnej nie musi oznaczać zawsze wykonania wszystkich
funkcji podrzędnych,
• funkcje podrzędne mogą być wykonywane wielokrotnie podczas realizacji funkcji
nadrzędnej.

Rysowanie diagramu hierarchii funkcji


Stosuje się cztery podstawowe układy prezentacji hierarchii funkcji (rysunki
1.2–1.5):
• poziomy,
• pionowy,
• tekstowy (pionowy),
• hybrydowy.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
1.3.  Hierarchia funkcji 15

Funkcja główna

1. ... 2. ... 3. ... 4. ...

1.1. ... 1.2. ... 1.3. ... 3.1. ... 3.2. ... 3.3. ... 3.4. ...

Rysunek 1.2. Układ poziomy hierarchii funkcji (HF)

Najbardziej naturalnym i prostym sposobem prezentacji hierarchii funkcji jest


układ poziomy. Jednak sprawdza się jedynie dla mało złożonych systemów, szczególnie
w przypadku wersji drukowanej. Natomiast układ pionowy utrudnia zrozumienie
całego systemu w przypadku złożonych systemów. Dlatego też układ mieszany i tek‑
stowy są najczęściej stosowane w praktyce.

Funkcja główna

1. ...

1.1. ...

1.2. ...

1.2.1. ...

1.2.2. ...

1.2.3. ...

1.3. ... Funkcja główna

1.4. ... 1. .........


1.1. .........
2. ... 1.2. .........
1.2.1. .........
1.2.2. .........
2.1. ...
1.2.3. .........
1.3. .........
2.2. ... 1.4. .........
2. .........
2.3. ... 2.1. .........
2.2. .........
2.4. ... 2.3. .........
2.4. .........
3. ... 2.5. .........
3. .........
... ...............

Rysunek 1.3.  Układ pionowy HF Rysunek 1.4.  Układ tekstowy HF

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
16   1.  Wprowadzenie do projektowania systemów

Połączenia między funkcjami na diagramie nie posiadają strzałek, ponieważ


hierarchia funkcji pokazuje strukturę funkcjonalną systemu, ale nie przepływy
sterowania. Wobec tego diagramy te nie pokazują kolejności przetwarzania funkcji.
W przypadku układu tekstowego połączenia są zastąpione wcięciami na początku
wierszy.

Funkcja
główna

1. ... 2. ... 3. ... 4. ...

1.1. ... 2.1. ... 3.1. ... 4.1. ...

1.2. ... 2.2. ... 3.1.1. ... 4.2. ...

1.2.1. ... 2.3. ... 3.1.2. ... 4.3. ...

1.2.2. ... 2.4. ... 3.1.3. ... 4.4. ...

1.2.3. ... 2.5. ... 3.2. ... 4.5. ...

1.3. ... 2.6. ... 3.2.1. ... 4.6. ...

1.4. ... 3.2.2. ... 4.7. ...

3.2.3. ...

Rysunek 1.5. Układ mieszany HF

Przykładowy diagram hierarchii funkcji dla systemu rejestrującego uczestników


biegów maratońskich przedstawia rysunek 1.6. System ten ma za zadanie umożliwiać
biegaczom zapisywanie się na zawody, a organizatorom tworzenie list startowych.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
1.3.  Hierarchia funkcji 17

System obsługi
maratonu

1. Rejestrowanie 2. Zarządzanie
uczestników zawodami

1.1. Zarejestrowanie
2.1. Zarejestrowanie
danych nowego
nowych zawodów
uczestnika

1.2. Sprawdzenie
2.2. Sprawdzenie
dostępności
liczby uczestników
miejsc

1.3. Przydział numeru 2.3. Wydrukowanie


startowego listy startowej

1.4. Wysłanie potwier- 2.4. Odwołanie


dzenia rejestracji zawodów

1.5. Odwołanie
udziału
w zawodach

Rysunek 1.6. Diagram hierarchii funkcji dla systemu obsługi maratonu

Hierarchia funkcji jest efektywną metodą modelowania systemów małych, łatwych


do zrozumienia. Natomiast praktycznie słabo się sprawdza w przypadku bardzo zło‑
żonych systemów. Trudno jest bowiem kontrolować spójność i kompletność modeli
funkcjonalnych tworzonych tą metodą.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
18   1.  Wprowadzenie do projektowania systemów

1.4. Diagramy przepływu danych

Elementy diagramów przepływu danych


Diagram przepływu danych (ang. Data Flow Diagram – DFD) jest metodą mo‑
delowania aspektu funkcjonalnego systemu informacyjnego. W przeciwieństwie do
hierarchii funkcji przedstawia nie tylko czynności (nazywane tutaj procesami), lecz
także przepływy danych, które reprezentują wejścia i wyjścia informacyjne procesu.
Ponadto DFD pozwalają przedstawić wejścia i wyjścia całego modelowanego systemu
informacyjnego i dane przechowywane w systemie.
Diagram przepływu danych wykorzystuje cztery symbole reprezentujące kom‑
ponenty systemu informacyjnego:
• proces,
• obiekt zewnętrzny,
• magazyn danych,
• przepływ danych.
Istnieje wiele notacji rysowania DFD wykorzystujących różne elementy graficzne
do reprezentowania poszczególnych komponentów, co może być mylące dla mniej
doświadczonego czytelnika. Do najpopularniejszych notacji należą:
• Yourdona­‑DeMarco,
• Gene’a‑Sarsona,
• SSADM5.
Wygląd poszczególnych komponentów DFD w najpopularniejszych notacjach
przedstawia rysunek 1.7. Co więcej, poszczególne narzędzia modelowania wykorzy‑
stują różne warianty tych notacji. Notacja Gene’a‑Sarsona, wykorzystywana w Mi‑
crosoft Visio, jest konsekwentnie stosowana w dalszej części rozdziału.
Procesy reprezentują działania wykonywane przez system informacyjny. Są więc
odpowiednikiem funkcji w diagramach HF. W praktyce modele tego samego systemu
informacyjnego wykonane za pomocą diagramów hierarchii funkcji i diagramów
przepływu danych mogą zawierać identyczne lub bardzo podobne nazwy funkcji
i procesów, szczególnie tych elementarnych. Konwencja nazywania procesów w DFD
jest podobna do tej, którą stosuje się w diagramach HF.
Z formalnego punktu widzenia proces przekształca dane wejściowe na wyjściowe.
Dlatego też każdy proces musi mieć przynajmniej jedno wejście i jedno wyjście

5 ­SSADM (Structured Systems Analysis and Design Method) jest nie tylko notacją, ale kompleksowym

podejściem do analizy i projektowania systemów informatycznych.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
1.4.  Diagramy przepływu danych 19

(rysunek 1.8). Ponadto wyjście z procesu nie może zawierać danych, które nie
znalazły się w jego wejściach lub nie mogą być przetworzone (obliczone) z danych
wejściowych.

Nazwa notacji Proces Magazyn danych Obiekt zewnętrzny

Yourdona­‑DeMarco

Gene’a‑Sarsona

SSADM

Rysunek 1.7. Symbole stosowane w popularnych notacjach DFD

Rysunek 1.8. Przykłady poprawnych i błędnych układów przepływów danych


(wejść i wyjść) z procesów

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
20   1.  Wprowadzenie do projektowania systemów

Przepływy danych przedstawiają przesyłanie danych między procesami, ma‑


gazynami danych i obiektami zewnętrznymi. Przedstawiane są za pomocą strzałek,
które pokazują kierunek przepływu. Nazwa przepływu danych identyfikuje dane
stanowiące ten przepływ (np. Średnia ocena studenta, Adres klienta). Może też od‑
powiadać nazwie dokumentu zawierającego te dane (np. Zamówienie, Faktura) lub
obiektu opisywanego przez te dane (np. Nowy klient, Produkt).
Wszystkie przepływy danych muszą się zaczynać lub kończyć na procesie (rysu‑
nek 1.9). Niektóre metody modelowania nie pozwalają też na bezpośrednie połączenie
dwóch procesów przepływem danych.

Rysunek 1.9. Sposoby graficznego przedstawiania przepływów danych w DFD

Obiekt zewnętrzny reprezentuje osobę (np. Klient, Student), jednostkę organiza‑


cyjną (np. Dział zaopatrzenia, Biuro regionalne), organizację (np. Bank, Dostawca) lub
inny system informacyjny (np. System bilingowy, System magazynowy), który znajduje
się poza zakresem modelowanego systemu, ale wchodzi w interakcję z systemem.
Obiekty zewnętrzne dostarczają danych do modelowanego systemu lub otrzymują
dane z systemu.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
1.4.  Diagramy przepływu danych 21

Magazyn danych reprezentuje dane przechowywane w systemie do późniejszego


wykorzystania. Nazwa magazynu danych opisuje zwykle obiekt, o którym informacje
są przechowywane w systemie. Mogą to być osoby (np. Klienci, Pracownicy, Studenci),
rzeczy (np. Materiały, Produkty), jednostki organizacyjne (np. Wydziały, Katedry)
lub obiekty niematerialne (np. Zamówienia, Płatności). Nazwy magazynów danych
są zwykle w liczbie mnogiej. Każdy magazyn danych musi mieć przynajmniej jedno
wejście lub wyjście. Nie ma bowiem sensu magazyn nie otrzymujący, a więc i nie
przechowujący żadnych danych, jak też magazyn przechowujący dane do niczego
niepotrzebne.

Tworzenie diagramów przepływu danych


Istnieje wiele podejść do tworzenia modeli złożonych systemów informacyj‑
nych za pomocą diagramów przepływu danych. W niniejszym podręczniku jest
przedstawione podejście od ogółu do szczegółu (top‑down). Rozpoczyna się ono
od stworzenia diagramu kontekstowego, który pozwala określić zakres i granice
systemu. Diagram kontekstowy zawiera:
• jeden proces reprezentujący cały modelowany system,
• wszystkie obiekty zewnętrzne,
• przepływy danych między obiektami zewnętrznymi a systemem.
Przepływy danych na diagramie kontekstowym przedstawiają wszystkie wejścia
i wyjścia informacyjne systemu. Odpowiadają zwykle dokumentom (papierowym
i elektronicznym) wymienianym przez system z otoczeniem. Diagram kontekstowy sys‑
temu rejestrującego uczestników biegów maratońskich przedstawia rysunek 1.10.

Potwierdzenie rejestracji
Uczestnik

Nowy Lista
uczestnik
System biegaczy
rejestracyjny
maratonu

Nowe
zawody
Komitet
organizacyjny

Rysunek 1.10. Przykład diagramu kontekstowego

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
22   1.  Wprowadzenie do projektowania systemów

Diagram systemowy (nazywany też diagramem zerowym) przedstawia ogólny


widok całego systemu. Można go uważać za dekompozycję diagramu kontekstowego.
Zawiera te same obiekty zewnętrzne oraz wejścia i wyjścia do nich, co diagram kontek‑
stowy. Natomiast proces reprezentujący cały system jest opisany bardziej szczegółowo
(rysunek 1.11). W celu opracowania diagramu systemowego należy:
• zidentyfikować wszystkie ogólne procesy realizowane przez system,
• zidentyfikować magazyny danych,
• określić wszystkie źródła danych (magazyny danych i obiekty zewnętrzne) dla
każdego procesu i połączyć je przepływami danych z odpowiednimi procesami,
• określić wszystkie wyjścia z procesów i ich odbiorców (magazyny danych i obiekty
zewnętrzne) oraz połączyć przepływami od procesów do odbiorców,
• ponumerować wszystkie procesy (1, 2, 3, ...) – w tym przypadku kolejność nie
ma znaczenia.

Uczestnik Potwierdzenie rejestracji

Nowy 1.
uczestnik Zarejestrowanie
uczestnika

Uczestnicy Zawody

2.
Zarejestrowanie
3.
zawodów
Zarządzanie
zawodami

Lista biegaczy Komitet Nowe


zawody
organizacyjny

Rysunek 1.11. Przykład diagramu systemowego

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
1.4.  Diagramy przepływu danych 23

W przypadku bardzo małych systemów może wystarczyć jeden diagram syste‑


mowy. Jednak zwykle procesy zidentyfikowane na tym diagramie nie są procesami
elementarnymi, a więc wymagają dalszej dekompozycji. Każdy proces jest dekom‑
ponowany na oddzielnym diagramie niższego rzędu. I tak proces nr 1 jest dekom‑
ponowany na diagramie nr 1, proces nr 2 na diagramie nr 2 itd.
Procesy na diagramie nr 1 są numerowane 1.1, 1.2, 1.3 itd. (rysunek 1.12). Ana‑
logicznie procesy na diagramie nr 2 są numerowane 2.1, 2.2 itd. Jeśli konieczna jest
dalsza dekompozycja, tworzy się odpowiednio diagramy 1.1, 1.2, 1.3, 2.1, 2.2 itd.
Na nich procesy są numerowane 1.11, 1.12, ..., 1.2.1, 1.2.2 itd. Dekompozycja jest
kontynuowana, dopóki nie zostaną zidentyfikowane procesy elementarne. Proces
elementarny odpowiada funkcji elementarnej w diagramie hierarchii funkcji.

Nowy
uczestnik
Uczestnik

1.1.
Sprawdź
wcześniejsze
zapisy

Sprawdzony
nowy uczestnik
Uczestnicy

1.2.
Sprawdź
Potwierdzenie
dostępność
rejestracji
miejsc
Potwierdzony
uczestnik

1.3.
Zawody
Przydziel
numer
startowy

Przydzielony
numer startowy

1.4.
Zapisz
uczestnika

Rysunek 1.12. Przykład diagramu nr 1

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
24   1.  Wprowadzenie do projektowania systemów

Dokomponowanie diagramów przepływu danych wymaga ich bilansowania.


Oznacza to, że gdy tworzymy diagram niższego rzędu, musi on zawierać te same
przepływy, magazyny danych i obiekty zewnętrzne, z którymi jest połączony de‑
komponowany proces (rysunki 1.10, 1.11 i 1.12).
Aby tworzony model był poprawny, spójny i czytelny, należy postępować zgodnie
z następującymi zasadami rysowania diagramów.
1) Na diagramie powinno być nie więcej niż 7 procesów, co pozwala uniknąć nad‑
miernej złożoności.
2) Te same magazyny danych i obiekty zewnętrzne mogą być umieszczone wielo‑
krotnie na jednym diagramie – oznaczane są wtedy dodatkowo gwiazdką. Pozwala
to uniknąć długich, krzyżujących się przepływów.
3) Wszystkie elementy na diagramie muszą być ze sobą bezpośrednio lub pośrednio
połączone. Żaden element nie może zostać odseparowany.
4) Należy pomijać procesy, które nie przetwarzają danych, ale wyłącznie je przesyłają.
Samo przesyłanie danych jest reprezentowane przez przepływy.

1.5. Modelowanie danych

Diagramy związków encji


Jedną z najpopularniejszych technik modelowania aspektu danych w systemach
informacyjnych są diagramy związków encji, określane też jako ERD lub diagramy
ER (ang. Entity Relation Diagram)6. Diagramy ER prezentują obiekty (nazywane
encjami), o których przechowywane są informacje w systemie informacyjnym,
i związki zachodzące miedzy nimi. Diagramy te reprezentują sposób, w jaki użyt‑
kownicy systemu postrzegają przechowywane dane, a pomijają szczegóły istotne dla
wdrożenia bazy danych. Reguły przekształcenia diagramów związków encji w modele
danych implementowane w systemach baz danych są przedstawione w dalszej części
rozdziału.
Inną popularną metodą przedstawiania modelu danych są diagramy klas. Stano‑
wią one element obiektowego języka modelowania systemów informacyjnych UML
(ang. Unified Modeling Language). Jednak, jeśli ktoś potrafi zrozumieć diagramy ER,
to nie powinien mieć większych trudności z interpretacją zawartości diagramów
klas.

6  Szerzej na temat modelu ER np. w: J.D. Ullman, J. Widom, Podstawowy kurs systemów baz danych,

Helion, Gliwice 2011, s. 134–136.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
1.5.  Modelowanie danych 25

Diagram związków encji jest modelem sieciowym składającym się z dwóch


podstawowych elementów:
• encji – węzłów sieci,
• związków – połączeń między węzłami sieci.
Dla całego systemu informacyjnego istnieje tylko jeden diagram związków encji,
składający się z równoważnych elementów. Dlatego też nie stosuje się dekompozycji
diagramów ER. Jednak w przypadku złożonych systemów informacyjnych problem
może stanowić rozmiar diagramu. Staje się wtedy konieczne podzielenie diagramu
związków encji na mniejsze fragmenty po to, żeby opracować czytelny wydruk
dokumentacji systemu. Dla całego systemu pozostaje jednak tylko jeden logiczny
i spójny diagram ER.

Encje
Encja reprezentuje pewien rodzaj obiektu, którego wystąpienia (więcej niż jedno)
mogą być jednoznacznie zidentyfikowane (np. przedmiot, osoba, miejsce, zdarzenie).
Jest to obiekt, o którym informacje są przechowywane w systemie informacyjnym.
W przypadku systemów informacyjnych zarządzania encje często odpowiadają trady‑
cyjnym dokumentom papierowym powstającym na skutek zajścia jakiegoś zdarzenia
(np. zamówienie, faktura). Encje określa się rzeczownikami w liczbie pojedynczej,
np. Zamówienie, Pracownik, Klient, Produkt. Nazwy encji często odpowiadają nazwom
magazynów danych z diagramów przepływu danych, tyle, że magazyny są nazywane
rzeczownikami w liczbie mnogiej.
Każda encja musi mieć przynajmniej jeden atrybut. Atrybuty opisują cechy
encji. Reprezentują szczegółowe dane, które muszą być przechowywane w systemie
informacyjnym. Na przykład encja Pojazd w „Systemie ewidencji pojazdów” może
mieć następujące atrybuty: Numer rejestracyjny pojazdu, Marka producenta, Model,
Rok produkcji, Kolor, Numer VIN. Atrybuty można przedstawić na diagramie ER
(rysunek 1.13).
Każda encja musi mieć też określony identyfikator. Jest to atrybut lub grupa
atrybutów, które jednoznacznie identyfikują każde wystąpienie encji. Oznacza to,
że każda wartość identyfikatora jest związana z jednym i tylko jednym wystąpie‑
niem encji. Na przykład, atrybuty Imię i Nazwisko nie mogą stanowić identyfikatora
osoby, gdyż mogą istnieć różne osoby o tym samym imieniu i nazwisku. Dlatego też,
w wielu systemach tworzy się sztuczne identyfikatory osób, np. Numer ­PESEL, Numer
pracownika. Na rysunku 1.13 identyfikatory są podkreślone.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
26   1.  Wprowadzenie do projektowania systemów

S tudent P rzedmiot

Nr albumu Nr przedmiotu
Nazwisko Nazwa przedmiotu
Imię Liczba godzin
Adres Punkty ECTS
Rok studiów
Średnia ocena

Rysunek 1.13. Encje z pokazanymi atrybutami

Jeśli pokazanie atrybutów na diagramie związków encji powoduje, że elementy


na dużym diagramie przestają być czytelne, można wykorzystać słownik danych.
Konstrukcja słownika danych jest prosta i zrozumiała dla czytelnika bez wcześniej‑
szego przygotowania informatycznego. Zapis w słowniku danych może wyglądać
następująco:

Student = *encja* Nr albumu + Nazwisko + Imię + Adres + Rok studiów + Średnia ocena

Zapis ten można odczytać następująco: „Encja Student składa się z następujących
atrybutów: Nr albumu, Nazwisko, Imię, Adres, Rok studiów, Średnia ocena. Atrybut
Nr albumu jest identyfikatorem encji Student”.

Związki
Między encjami zachodzą związki. Związek jest logicznym połączeniem dwóch
encji. Reprezentuje on informację, która musi być przechowana w systemie informa‑
cyjnym, a nie może być wywnioskowana lub obliczona z wartości atrybutów encji.
Poszczególne wystąpienia związków łączą za sobą dwa wystąpienia encji. Na przykład
pozwalają na odpowiedź na następujące pytania:
• Który klient złożył to zamówienie?
• Kto jest właścicielem tego samochodu?
• Które przedmioty prowadzi ten wykładowca?
Związkami, które odpowiadają na te pytania, są:
• Klient złożył zamówienie albo Zamówienie zostało złożone przez klienta.
• Osoba jest właścicielem samochodu albo Samochód ma właściciela.
• Wykładowca prowadzi przedmiot albo Przedmiot jest prowadzony przez wykła‑
dowcę.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
1.5.  Modelowanie danych 27

Wszystkie związki muszą być nazwane, aby diagram związków encji był jed‑
noznacznie zrozumiały dla czytelnika. Dla przykładów przedstawionych powyżej
związki powinny być nazwane następująco:
• złożył albo zostało złożone – między encjami Klient i Zamówienie,
• jest właścicielem albo ma właściciela – między encjami Osoba i Samochód,
• prowadzi albo jest prowadzony – między encjami Wykładowca i Przedmiot.
Najważniejszą cechą każdego związku jest jego liczebność (liczność). Liczebność
związku określa z iloma wystąpieniami jednej encji może być powiązane jedno wystą‑
pienie innej encji. Na przykład: „Jeden klient może złożyć wiele zamówień, ale jedno
konkretne zamówienie może być złożone tylko przez jednego określonego klienta”.
Ze względu na liczebność możemy wyróżnić trzy główne rodzaje związków:
• jeden‑do‑wielu (1:N),
• wiele‑do‑wielu (N:N),
• jeden‑do‑jednego (1:1).
Najczęściej występuje związek jeden‑do‑wielu. Oznacza on, że jedno wystąpienie
encji może być związane z wieloma wystąpieniami drugiej encji, ale jedno wystą‑
pienie tej drugiej encji może być związane tylko z jednym wystąpieniem pierwszej
encji. Na przykład, związek znajduje się na albo zawiera pomiędzy encjami Wydział
i Katedra jest typu jeden‑do‑wielu (zob. rysunek 1.14). Oznacza to, że na wydziale
jest wiele katedr, ale katedra znajduje się na konkretnym wydziale.

zawiera
Wydział Katedra
znajduje się na

Rysunek 1.14. Przykład związku jeden‑do‑wielu

Istnieje wiele konwencji przedstawiania liczebności związków. Dwie najbardziej


popularne notacje są przedstawione na rysunku 1.15. Strona do wielu związku jest
przedstawiona za pomocą litery N lub tzw. kurzej łapki. Niektóre notacje wymagają
nazwania związku w taki sposób, aby można było poprawnie odczytać związek w obie
strony (rysunek 1.14). Częściej jednak określa się związek tylko jedną nazwą, bardziej
naturalną czy oczywistą.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
28   1.  Wprowadzenie do projektowania systemów

złożył
Klient Zamówienie

1 złożył N
Klient Zamówienie

Rysunek 1.15. Przykłady notacji diagramów związków encji

W przypadku związków wiele‑do‑wielu, jedno wystąpienie encji może być


związane z wieloma wystąpieniami drugiej encji, a jedno wystąpienie drugiej encji
też może być powiązane z wieloma wystąpieniami pierwszej encji. Na przykład,
jeden student może zapisać się na wiele przedmiotów, a na jeden przedmiot może
być zapisanych wielu studentów (rysunek 1.16).

Student jest zapisany na Przedmiot

Rysunek 1.16. Przykład związku wiele‑do‑wiele

Niestety, szczególnie przy projektowaniu baz danych, związki wiele‑do‑wielu


sprawiają pewne trudności. Na przykład, związek Zamówienie dotyczy produktu
obejmuje informację o tym, ile sztuk danego produktu zostało zamówionych. Ta in‑
formacja może być przechowana w atrybucie Ilość. Jednak Ilość nie jest atrybutem
encji Zamówienie – jedno zamówienie może dotyczyć wielu produktów, więc jeden
atrybut nie może przechować informacji o wszystkich ich ilościach. Także Ilość nie
jest atrybutem encji Produkt – ten sam produkt może być bowiem wielokrotnie za‑
mawiany w różnych ilościach. W rzeczywistości Ilość jest atrybutem związku dotyczy.
Aby uprościć diagramy, często rozbija się związki wiele‑do‑wielu posiadające własne
atrybuty na dwa związki jeden‑do‑wielu poprzez utworzenie nowej encji łączącej.
Ta nowa encja zawsze znajduje się po stronie do wielu obu nowo utworzonych związ‑
ków. Zawiera ona atrybuty wcześniej związane z rozbitym związkiem wiele‑do‑wielu.
Przykład rozbicia związku wiele‑do‑wielu pokazany jest na rysunku 1.17.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
1.5.  Modelowanie danych 29

zawiera
Zamówienie Produkt

zawiera Pozycja dotyczy


Zamówienie Produkt
zamówienia

Rysunek 1.17. Rozbicie związku wiele‑do‑wiele

Związek jeden‑do‑jednego oznacza, że każde wystąpienie jednej encji może być


powiązane tylko z jednym wystąpieniem drugiej encji i reguła ta obowiązuje w obie
strony. Na przykład, pracownik może mieć przypisane tylko jedno miejsce parkin‑
gowe, a każde miejsce parkingowe może być przypisane tylko do jednego pracownika
(rysunek 1.18). W praktyce związki jeden‑do‑jednego występują dość rzadko. Jeśli
zidentyfikowałeś taki związek, upewnij się, czy jest tak w rzeczywistości, i w razie
potrzeby popraw swój model, możliwe jest bowiem, że nieprawidłowo określiłeś
liczebność lub pomyłkowo rozdzieliłeś atrybuty jednej encji na dwie różne encje.

ma przydzielone Miejsce
Pracownik
parkingowe

Rysunek 1.18. Przykład związku jeden‑do‑jednego

Dwie encje mogą być połączone dwoma różnymi związkami. Na przykład, encje
Student i Przedmiot mogą być powiązane dwoma związkami: Student zapisał się na
przedmiot i Student zaliczył przedmiot. Encja może także zachodzić w związek sama
ze sobą, a ściślej mówiąc, wystąpienie danej encji może być w związku z innymi
wystąpieniami tej encji. Na przykład, pracownik może być przełożonym innego
pracownika (rysunek 1.19).

jest przełożonym

Pracownik

Rysunek 1.19. Przykład związku łączącego tę samą encję

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
30   1.  Wprowadzenie do projektowania systemów

Diagramy związków encji mogą pokazywać także opcjonalność (nazywaną też


minimalną liczebnością). Informuje ona o tym, czy każde wystąpienie encji musi
uczestniczyć w danym związku. Na przykład, na rysunku 1.20 związek zawiera jest
obowiązkowy dla każdego wystąpienia encji Wydział i Katedra, co oznacza, że każda
katedra musi znajdować się na jakimś wydziale i każdy wydział musi mieć w swoim
składzie przynajmniej jedną katedrę. Natomiast w drugim przykładzie z rysunku 1.20
dopuszczalna jest sytuacja, że na niektóre przedmioty nie zapisze się żaden student,
a także, że student nie będzie w jakimś momencie zapisany na żaden przedmiot.
W przypadku notacji stosującej kurzą łapkę brak obowiązku wchodzenia w związek
przez encję oznaczany jest kołami, a konieczność udziału w związku – poprzecznymi
kreskami.

zawiera
Wydział Katedra

jest zapisany na
Student Przedmiot

Rysunek 1.20. Przykłady związków z pokazaną liczebnością

Opcjonalność może być także pokazana poprzez wskazanie minimalnej i mak‑


symalnej liczebności za pomocą znaków: 0, 1 i N (rysunek 1.21).

złożył
Klient Zamówienie

złożył
Klient Zamówienie
1..1 0..N

Rysunek 1.21. Opcjonalność w różnych notacjach

Znaczenie poprawności modelu danych


Model danych odzwierciedla sposób, w jaki użytkownicy systemu postrzegają
zależności między danymi w świecie biznesu. Oznacza to, że do użytkowników na‑
leży ocena, jakie elementy danych i zależności między nimi powinny być uwzględ‑
nione w modelu. Przy tworzeniu systemów informatycznych jest niezwykle istotne

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
1.6.  Relacyjne bazy danych 31

opracowanie poprawnego modelu danych. Jeśli model zawiera błędy, to cała aplikacja
bazodanowa opracowana w oparciu o ten model może być bezużyteczna, a przynaj‑
mniej w części może działać niepoprawnie. Dlatego najlepiej dokonywać wszelkich
niezbędnych zmian struktury danych jeszcze na etapie modelowania. Na przykład,
zmiana liczebności związku z jeden‑do‑wielu na wiele‑do‑wielu na diagramie to
kwestia zrobienia drobnej poprawki. Jednak, jeśli system bazodanowy został wdro‑
żony i wypełniony danymi, a programy przetwarzające te dane napisane, to zmiana
liczebności związku może wiązać się z godzinami lub dniami, a w skrajnych przy‑
padkach nawet tygodniami pracy programisty.
Analitycy i projektanci systemów informatycznych nie posiadają kompletnej
wiedzy o wszystkich wymaganiach biznesowych dotyczących tych systemów. Muszą
opierać się więc na informacjach dostarczonych przez użytkowników. Dlatego też
użytkownicy powinni starannie weryfikować poprawność modeli. Wynika z tego,
że nie tylko profesjonaliści IT, lecz także użytkownicy systemów powinni posiadać
umiejętność rozumienia modeli danych. Niestety w praktyce jednym z największych
problemów napotykanych przy tworzeniu systemów informatycznych jest niechęć
użytkowników do współpracy z informatykami i do analizowania diagramów, a także
innych elementów dokumentacji systemów.

1.6. Relacyjne bazy danych

Zastosowanie baz danych


Każda organizacja musi przechowywać dane i mieć możliwość dostępu do tych
danych w momencie, gdy są one potrzebne. W przypadku nieskomputeryzowanych
systemów informacyjnych dane są gromadzone zwykle w formie papierowych do‑
kumentów przechowywanych w teczkach, skoroszytach czy szafach na dokumenty.
Dodatkowo tworzy się często rejestry zawierające informacje o przechowywanych
dokumentach i miejscach ich składowania.
Współczesne systemy informacyjne stosują komputery do przechowywania
i przetwarzania danych, wykorzystując technologię baz danych. Baza danych to
ustrukturyzowany zbiór danych, przechowywany w formie elektronicznej. Taka
baza danych może być wykorzystywana jednocześnie przez wielu użytkowników
i wiele aplikacji.
W celu strukturyzacji danych muszą zostać określone reguły, zgodnie z którymi
są tworzone struktury danych. Kompletny zbiór takich reguł to model danych.
Współczesne bazy danych są tworzone w oparciu o różne modele. Każdy z nich ma

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
32   1.  Wprowadzenie do projektowania systemów

pewne wady i zalety. Jednak najpopularniejszym rozwiązaniem wykorzystywanym


powszechnie w systemach znajdujących zastosowanie w organizacjach gospodarczych
jest model relacyjny.

Relacyjny model danych


W relacyjnym modelu danych wszystkie dane są przechowywane w dwuwymia‑
rowych tabelach, nazywanych też relacjami (rysunek 1.22). Każdy wiersz w tabeli,
nazywany też rekordem albo krotką, reprezentuje pojedyncze wystąpienie jakiegoś
bytu: osoby, rzeczy, albo abstrakcyjnego pojęcia. Na przykład w tabeli Studenci na
rysunku 1.16, każdy rekord zawiera informacje o jednym studencie. Natomiast każda
kolumna zawiera wartości pojedynczego atrybutu dla wszystkich rekordów tej tabeli.
Wszystkie wartości w danej kolumnie muszą być jednego typu: tekstowego, nume‑
rycznego, daty itp. Na przykład wszystkie wartości w kolumnie Nazwisko muszą być
typu tekstowego, a w kolumnie Srednia_ocena – typu numerycznego. Termin pole jest
często używany zamiast określeń kolumna lub atrybut, chociaż poprawnie oznacza
miejsce zapisu pojedynczej wartości atrybutu dla danego rekordu.

atrybut (nazwa pola) kolumna

Nr_studenta Imie Nazwisko Srednia_ocena


1 Jan Kowalski 3,55
2 Ewa Nowak 4,09 wiersz (rekord)
3 Adam Kowalski 4,75
4 Adam Sowa 4,20
5 Joanna Owoc 4,63

pole (wartość pola)

Rysunek 1.22. Struktura relacji (tabeli) w relacyjnej bazie danych

Każdy rekord w tabeli musi mieć określoną wartość dla każdego atrybutu. Żadne
pole nie może pozostać bez wartości. W przypadku, gdy jednak wartość pola jest
nieznana, można wstawić w tym miejscu wartość null. Należy pamiętać, że null to
nie to samo co wartość liczbowa zero lub pusty tekst. Na przykład pusty tekst jako
wartość atrybutu Drugie_imie znaczy, że ta osoba nie ma żadnego drugiego imienia,
natomiast wartość null oznacza, że nie wiemy jakie ma drugie imię, ani nawet czy
ma w ogóle jakieś drugie imię.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
1.6.  Relacyjne bazy danych 33

Tabele (relacje) wydają się być niezależnymi zbiorami danych, jednak dane
przechowywane w jednej tabeli mogą być powiązane z danymi w innej tabeli, jeśli
w obydwu tabelach występuje ten sam wspólny element danych. Stąd też relacyjna
baza danych to nie tylko zbiór relacji (tabel), lecz także związków między wierszami
w tych tabelach7. Przykładowe dane z trzech tabel: Wydzialy, Katedry, Pracownicy
przedstawia rysunek 1.23. Atrybut Nr_katedry występuje nie tylko w tabeli Katedry,
lecz także w tabeli Pracownicy. Ta sama wartość „3” atrybutu Nr_katedry w tabe‑
lach Katedry i Pracownicy oznacza, że Nowakowski Adam i Młynarska Ewa pracują
w Katedrze Systemów informacyjnych. W podobny sposób atrybut Nr_wydzialu
łączy katedry z wydziałami.

Wydzialy Katedry
Nr_wydzialu Nazwa_wydzialu Nr_katedry Nazwa_katedry Nr_wydzialu
1 Filozofii 1 Optyki 3
2 Zarządzania 2 Mechaniki kwantowej 3
3 Fizyki 3 Systemów informacyjnych 2
4 Biologii 4 Marketingu 2

Pracownicy
Nr_pracownika Nazwisko Imie Tytul Nr_katedry
1 Janowski Stanisław Profesor 2
2 Iwanowa Zuzanna Doktor 1
3 Nowakowski Adam Doktor 3
4 Szeridan Jan Profesor 2
5 Młynarska Ewa Profesor 3

Rysunek 1.23. Przykład relacyjnej bazy danych

Atrybuty: Nr_pracownika, Nr_katedry i Nr_wydzialu w bazie danych na ry‑


sunku 1.23 oraz Nr_studenta z tabeli na rysunku 1.22 są kluczami głównymi. Muszą
one być określone dla każdej tabeli. Klucz główny to atrybut lub grupa atrybutów,
które służą jednoznacznemu identyfikowaniu rekordu (wiersza) w tabeli. Dlatego
też wartości klucza głównego w tabeli muszą być niepowtarzalne. Klucze główne są
zwykle oznaczane literami PK (ang. Primary Key).

7  Uwaga: w niektórych systemach zarządzania bazami danych błędnie określa się związki terminem

relacja. Wynika to zapewne z nazbyt swobodnego i do tego zamiennego tłumaczenia terminów relation
(relacja) i relationship (związek). Niestety błąd ten bywa powielany także w niektórych podręcznikach.
Aby uniknąć nieporozumień i ułatwić czytelnikowi posługiwanie się niniejszym podręcznikiem, w dalszej
jego części będzie używany termin związek w odniesieniu do relacji między tabelami. Natomiast okre‑
ślenie relacja pojawi się zamiast słowa związek, tam gdzie zostało użyte w tym znaczeniu w omawianym
oprogramowaniu.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
34   1.  Wprowadzenie do projektowania systemów

Atrybuty, które pełnią taką funkcję po umieszczeniu w innej powiązanej tabeli


(jak np. Nr_katedry w tabeli Pracownicy i Nr_wydzialu w tabeli Katedry), są nazywane
kluczami obcymi. Służą do reprezentowania związków między tabelami. Nazy‑
wamy je kluczami obcymi, ponieważ ich wartości odpowiadają wartościom kluczy
głównych w innych (obcych) tabelach. Klucze obce są zwykle oznaczane literami
FK (ang. Foreign Key).

Przekształcanie diagramów związków encji


w relacyjny model danych
Projektanci baz danych nie projektują struktur tych baz od początku. Opierają
się zwykle na tzw. modelu pojęciowym (koncepcyjnym) danych, przedstawianym
często właśnie w formie diagramów związków encji, który jest częścią wcześniej
przygotowywanego dokumentu zawierającego specyfikację wymagań wobec systemu
informatycznego. Stąd też projektowanie baz danych może być opisane jako proces
przekształcenia modelu pojęciowego (np. diagramów ER) w tak zwany model logiczny
bazy danych, np. model relacyjny.
Projektowanie baz danych jest bardzo złożoną tematyką. Obejmuje wiele za‑
gadnień związanych z poprawnością i efektywnością baz danych. Jednak, aby nabyć
podstawowe umiejętności projektowania baz danych, wystarczy opanować kilka pod‑
stawowych reguł przekształcenia diagramów związków encji w model relacyjny.
1) Encje stają się tabelami, przy czym zwykle nazwy tabel są w liczbie mnogiej.
2) Atrybuty encji stają się atrybutami tabeli. Jeśli atrybut encji zawiera złożone dane,
musi zostać zastąpiony przez wiele atrybutów zawierających dane atomowe (ele‑
mentarne). Na przykład złożony atrybut Adres musi być zastąpiony w tabeli grupą
atrybutów: Kraj, Miasto, Kod_pocztowy, Ulica, Nr_domu i Nr_mieszkania.
3) Identyfikatory encji stają się kluczami głównymi. W przypadku złożonych iden‑
tyfikatorów można je zastąpić sztucznym kluczem głównym składającym się
z jednego atrybutu.
4) Związki jeden‑do‑wielu są reprezentowane poprzez dodanie klucza obcego do
tabeli odpowiadającej encji po stronie do wielu związku.
5) W celu odwzorowania związku wiele‑do‑wielu trzeba utworzyć dodatkową tabelę.
Musi ona zawierać dwa klucze obce wiążące tę tabelę z dwoma odpowiadającymi
encjom połączonym pierwotnie związkiem wiele‑do‑wielu. Te dwa klucze obce
wspólnie mogą tworzyć klucz główny tej nowej tabeli. Jednak należy się upewnić,
czy tak skonstruowany klucz główny zapewnia niepowtarzalność jego wartości.
Jeśli nie, to należy dodać sztuczny klucz główny. Rysunek 1.24 przedstawia przy‑

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
1.6.  Relacyjne bazy danych 35

kład związku wiele‑do‑wiele z diagramu związków encji i strukturę bazy danych


reprezentującą ten związek.
6) Związek jeden‑do‑jednego można odwzorować poprzez dodanie klucza obcego do
jednej tabeli – odpowiadającej encji, której wystąpienia zawsze wchodzą w związek
(nie jest on opcjonalny). Innym możliwym rozwiązaniem jest stworzenie jednej
tabeli zawierającej atrybuty z obu encji.
7) W przypadku, gdy liczba możliwych wartości jakiegoś atrybutu jest znana i skoń‑
czona, należy dodać do bazy danych tabelę słownikową (referencyjną, walidacji),
a w miejsce atrybutu należy wstawić klucz obcy wiążący z nową tabelą słowni‑
kową. Tabela słownikowa zawiera zwykle tylko 2 atrybuty: klucz główny i atry‑
but, którego wartości w poszczególnych wierszach tabeli słownikowej obejmują
wszystkie możliwe wartości pierwotnego atrybutu encji. Na przykład zamiast
występującego w encji atrybutu Wojewodztwo w tabeli należy umieścić klucz
obcy Nr_wojewodztwa i utworzyć tabelę Wojewodztwa zawierającą dwa atry‑
buty: Nr_wojewodztwa (klucz główny) i Nazwa_wojewodztwa. Tabela ta będzie
posiadała 16 wierszy odpowiadających istniejącym województwom. Później
w aplikacji, dzięki zastosowaniu tabeli słownikowej użytkownik, wypełniając
formularz, nie będzie wpisywał nazw województw, ale wybierze je z listy.

jest zarejestrowany na
Uczestnik Konferencja

Uczestnicy Rejestracje Konferencje


Nr_uczestnika PK Nr_uczestnika PK FK1 Nr_konferencji PK
Tytuł Nr_konferencji PK FK2 Nazwa
Imię Data_rozpoczęcia
Nazwisko Data_zakończenia

Rysunek 1.24. Odwzorowanie związku wiele‑do‑wielu w relacyjnej bazie danych

System zarządzania bazą danych


System zarządzania bazą danych (SZBD) jest oprogramowaniem, które wspo‑
maga tworzenie i używanie baz danych. Stanowi element pośredniczący między
programami (aplikacjami), z których korzystają użytkownicy, a danymi przecho‑
wywanymi na nośnikach dyskowych (rysunek 1.25). Kiedy aplikacja potrzebuje
określonych danych, SZBD znajduje je w bazie danych i udostępnia.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
36   1.  Wprowadzenie do projektowania systemów

Aplikac ja S ys tem
zarządzania B aza
użytkowa danyc h
bazą danyc h

Rysunek 1.25. Komponenty systemu informatycznego wykorzystującego bazę danych

Organizacje zwykle nie tworzą własnych systemów zarządzania bazą danych,


tylko kupują je od dostawców, takich jak: IBM, Microsoft, Oracle i inni. Istnieje wiele
SZBD przeznaczonych dla różnych zastosowań i wielkości baz danych. Do najpo‑
pularniejszych należą:
• IBM DB2,
• Oracle Database,
• Microsoft SQL Server,
• MySQL (open source),
• Microsoft Access.
Microsoft Access jest popularnym SZBD, wchodzącym w skład pakietu Microsoft
Office, wykorzystywanym głównie przez małe firmy i indywidualnych użytkowników.
W następnej części zostaną omówione podstawowe zasady pracy z relacyjną bazą
danych z zastosowaniem pakietu MS Access 2010.

1.7. Przykłady i zadania do samodzielnego wykonania


Przykład 1.1. Przychodnia lekarska Medolek
Oto zapis wywiadu przeprowadzonego przez analityka z kierownikiem przy‑
chodni lekarskiej Medolek.
Analityk: W przychodni ma powstać system informatyczny, który pozwoli na
usunięcie obszernych papierowych kartotek i przyspieszy proces dostępu do potrzeb‑
nych danych. Proszę opisać Państwa oczekiwania odnośnie do zadań, jakie mają być
realizowane z wykorzystaniem systemu informatycznego.
Kierownik: Chciałbym, aby lekarz przyjmujący pacjenta miał dostęp do komputera
w gabinecie i mógł w czasie wizyty sprawdzić dane pacjenta oraz zapisy z poprzednich
wizyt (wnioski z wizyty, jakie były przepisane leki i zlecone badania), a także miał
dostęp do bazy leków, co ułatwi mu dobranie odpowiedniejszego zestawu leków.
Analityk: Chciałbym się dowiedzieć, jakie informacje notujecie w kartotekach
pacjentów?

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
1.7.  Przykłady i zadania do samodzielnego wykonania 37

Kierownik: Takie jak wszędzie: nazwisko, adres, telefon, data urodzenia, ­PESEL.
To wszystko jest na kopercie, a w kopercie są karty pacjenta do poszczególnych specja‑
listów, na których lekarze zapisują wnioski z wizyty, przepisane leki i zlecone badania,
oraz karta ogólna z zaznaczeniem chorób przewlekłych lub przeciwwskazań do zasto‑
sowania pewnych leków.
Analityk: A jak przebiega proces rezerwacji wizyt?
Kierownik: Pacjenci rezerwują sobie wizyty na konkretne godziny do wybranych
lekarzy. Mamy wykaz godzin wizyt dla każdego lekarza na każdy dzień tygodnia, gdy
u nas przyjmuje. Są różne przedziały czasowe dla poszczególnych lekarzy. Dobrze by
było, aby można na podstawie wcześniej określonego tygodniowego harmonogramu
wizyt tworzyć spis wizyt na cały miesiąc.
Jak na początku mieliśmy mniej pacjentów, to dzwoniliśmy dzień przed, żeby
przypomnieć. To zawsze było dla pacjentów bardzo miłe, ale ostatnio nie dajemy już
rady przeglądać rejestru wizyt na następny dzień, wyszukiwać numerów telefonów do
umówionych pacjentów i do nich dzwonić.
Analityk: Gdy dane o wizytach będą notowane w systemie informatycznym, wy‑
szukiwanie informacji o zbliżających się wizytach będzie bardzo łatwe i szybkie. Jeżeli
pacjent poda swój numer telefonu komórkowego, to system może mu samodzielnie
wysyłać przypomnienie smsem przez internet.
Kierownik: Czy można będzie też zrobić dla każdego lekarza wykaz recept, które
wystawił w danym miesiącu? Co miesiąc takie zestawienie musimy wysłać do NFZ.
Analityk: Będzie można zrobić wykaz recept wystawionych przez wybranego
lekarza w wybranym okresie, czy to dzień, czy miesiąc. A jakie czynności kolejno są
wykonywane, gdy pacjent przychodzi na umówioną wizytę?
Kierownik: Sprawdzamy, czy pacjent jest rzeczywiście umówiony na tę wizytę,
i zaznaczamy, że przybył. Pacjenta kierujemy do odpowiedniego gabinetu. I tu widzę
korzyść z zastosowania sytemu informatycznego, bo lekarz będzie widział zaznaczone
przybycie pacjenta i będzie wiedział, że pacjent na określoną wizytę już czeka.
Analityk: A jak przebiega sama wizyta u lekarza?
Kierownik: Gdy pacjent przychodzi do gabinetu, lekarz sprawdza dane z poprzed‑
nich wizyt, pyta o wyniki zleconych badań, bada pacjenta, rozmawia z pacjentem aż do
ustalenia ostatecznych wyników wizyty. Lekarz zapisuje wnioski z wizyty, przepisane
leki i zlecone badania w karcie pacjenta. Myślę, że przydatny byłby też wykaz zleconych
badań przez lekarza.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
38   1.  Wprowadzenie do projektowania systemów

Podsumowanie
Podstawowym obiektem zainteresowania pracowników jest pacjent, wraz z jego
chorobami, wszystkimi informacjami o zastosowanym wcześniej leczeniu i badaniach
specjalistycznych. Do sprawnej organizacji pracy są potrzebne dane o pracujących
tam lekarzach i ich specjalnościach. Jako element pomocniczy należałoby w systemie
zamieścić bazę leków i wykaz typów zlecanych badań, aby ujednolicić ich nazewnic‑
two i ułatwić ich określenie podczas wizyty.
W przychodni przyjmuje wielu lekarzy i pacjent zapisuje się na daną wizytę do
jednego wybranego lekarza. Każda wizyta to indywidualne spotkanie jednego leka‑
rza z jednym pacjentem. W czasie wizyty lekarz, w związku z podjęciem leczenia
określonej choroby, wypisuje pacjentowi receptę. Może ich wypisać kilka na jednej
wizycie. Na jednej recepcie może się znaleźć wiele leków.
Wymagane zestawienia zbiorcze to wykaz przepisanych leków i zleconych badań
przez poszczególnych lekarzy w miesiącu.

Cel i funkcja główna


Celem głównym jest usprawnienie działania przychodni Medolek poprzez wpro‑
wadzenie zintegrowanego systemu informatycznego. Funkcja główna przychodni
polega na przyjmowaniu pacjentów w placówce medycznej i doprowadzeniu do
podjęcia skutecznej terapii, czemu służą konsultacje lekarskie.
Cele szczegółowe implementacji systemu informatycznego w przychodni lekar‑
skiej Medolek to:
• wyeliminowanie papierowej dokumentacji z danymi pacjenta i z przebiegu le‑
czenia,
• usprawnienie procesu rezerwacji wizyt poprzez skrócenie czasu wyszukiwania
wizyt zgodnych z preferencjami pacjenta,
• zautomatyzowanie systemu powiadamiania pacjenta o zbliżającej się wizycie,
• dostarczenie lekarzom danych o lekach jako narzędzia wspomagającego dobór
odpowiednich leków i usprawniającego wypisywanie recept,
• zautomatyzowanie procesu wypisywania recepty,
• zautomatyzowanie procesu przygotowania wymaganych sprawozdań do jednostki
nadrzędnej.

Hierarchia funkcji (DHF)
1. Prowadzenie rejestru pacjentów
1.1. Wprowadzenie nowego pacjenta
1.1.1. Przyjęcie danych osobowych
1.1.2. Przyjęcie informacji szczególnych o zdrowiu pacjenta

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
1.7.  Przykłady i zadania do samodzielnego wykonania 39

1.2. Modyfikacja danych pacjenta


1.3. Usunięcie pacjenta
2. Prowadzenie rejestru lekarzy
2.1. Wprowadzenie nowego lekarza
2.1.1. Przyjęcie danych osobowych lekarza i specjalizacji
2.1.2. Określenie harmonogramu pracy lekarza
2.2. Modyfikacja danych lekarza
2.3. Usunięcie danych lekarza
3. Prowadzenie harmonogramu wizyt
3.1. Uzupełnianie harmonogramu na kolejny okres
3.2. Rezerwowanie wizyt
3.2.1. Identyfikacja pacjenta
3.2.2. Przyjęcie zamówienia pacjenta
3.2.3. Sprawdzenie wolnych terminów
3.2.4. Ustalenie wizyty do zarezerwowania
3.2.5. Rejestracja rezerwacji
3.3. Przypominanie o wizycie
3.3.1. Wyszukanie wizyt na dany okres
3.3.2. Określenie danych kontaktowych pacjenta
3.3.3. Wysłanie zawiadomienia do pacjenta
3.4. Usunięcie rezerwacji
4. Obsługa wizyty lekarskiej
4.1. Obsługa pacjenta przed wizytą
4.1.1. Sprawdzenie, czy pacjent jest umówiony
4.1.2. Oznaczenie przybycia pacjenta
4.2. Obsługa pacjenta podczas wizyty
4.2.1. Sprawdzenie wyników poprzednich wizyt
4.2.2. Rejestracja wniosków z wizyty
4.2.3. Rejestracja wydanych recept
5. Prowadzenie rejestru leków
5.1. Wprowadzenie nowego leku
5.2. Modyfikacja danych o leku
5.3. Usunięcie leku
6. Okresowe przygotowanie zestawień z wystawionych recept
6.1. Przygotowanie zestawienia z recept
6.2. Wysłanie zestawienia do Ministerstwa Zdrowia.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
40   1.  Wprowadzenie do projektowania systemów

Opracowany na tej podstawie diagram DFD dla przychodni lekarskiej Medolek


wygląda następująco:

1.
2. 3
Prowadzenie
Pacjent rejestru 2 Prowadzenie Lekarz
Pacjenci rejestru
pacjentów
lekarzy
13
5
4
Lekarze
9

18
6 7
8 16
15 *
Pacjent
10 3. Prowadzenie 11 17 4. Obsługa
14 harmonogramu Wizyty wizyty 24
wizyt 29 19 pacjenta
21
12
23
20
22
Recepty
27
NFZ 26 5.
25 Prowadzenie 25
rejestru leków Min.
28 Leki Zdrowia
6.
Wykonywanie
sprawozdań
do NFZ

Nazwy przepływów w diagramie DFD dla przychodni lekarskiej Medolek:


  1) Wniosek o rejestrację
  2) Dane osobowe pacjenta
  3) Dokumenty lekarza
  4) Dane lekarza
  5) Zamówienie na wizytę i dane pacjenta
  6) Identyfikator pacjenta
  7) Identyfikator wybranego lekarza
  8) Wolne wizyty
  9) Informacja o wolnych wizytach
10) Wybrana wizyta
11) Rezerwacja wybranej wizyty
12) Wizyta do przypomnienia
13) Dane kontaktowe pacjenta
14) Przypomnienie o wizycie

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
1.7.  Przykłady i zadania do samodzielnego wykonania 41

15) Informacja o wizycie, na którą przybył pacjent


16) Wizyta, na którą przybył pacjent
17) Oznaczenie przybycia pacjenta na wizytę
18) Dane pacjenta do recepty
19) Informacje o poprzednich wizytach
20) Informacje o przepisanych lekach
21) Wnioski z nowej wizyty
22) Dane o lekach do przepisania
23) Nowe recepty
24) Zalecenia i recepty
25) Lista leków
26) Recepty z wybranego okresu
27) Dane lekarza do raportu
28) Raport
29) Planowane wizyty na kolejny okres.

Diagram ERD i model relacji


Realizacja wymienionych powyżej funkcji przekłada się na model ERD przed‑
stawiony na poniższym diagramie.

1 przybywa N N obsługuje 1
Pacjent na
Wizyta Lekarz
1

jest przepisana

1 1
Recepta Lek
zawiera N N dotyczy
Pozycja
recepty

W oparciu o powyższy model ERD zostanie utworzony model relacji, taki jak:

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
42   1.  Wprowadzenie do projektowania systemów

Pacjenci Lekarze
Nr_Pacjenta PK Autonumerowanie Nr_Lekarza PK Autonumerowanie
Nazwisko Tekst Specjalizacja Tekst
Ulica Tekst Nazwisko_Lekarza Tekst
Miasto Tekst Imię_Lekarza Tekst
Nr_Telefonu Tekst

Leki Wizyty
Nr_Leku PK Autonumerowanie Nr_Wizyty PK Autonumerowanie
Nazwa_Leku Tekst Nr_Pacjenta FK1 Liczba
Nr_Lekarza FK2 Liczba
Data Data/Godzina
Godzina Data/Godzina

Recepty Pozycje recepty


Nr_Recepty PK Autonumerowanie Nr_Recepty PK, Liczba
FK1
Nr_Wizyty FK Liczba Nr_Leku PK, Liczba
FK2
Ile_Pozycji Liczba Ilość Liczba

Zadania do samodzielnego wykonania


Na podstawie poniższych opisów proszę wyznaczyć cel i funkcję główną pro‑
jektowanego systemu, a także opracować diagram relacji encji (ERD) możliwy do
sprawdzenia na stronie internetowej podręcznika.

Zadanie 1.1. Wypożyczalnia torebek Parada


Oto fragment wywiadu z kierowniczką wypożyczalni, która oczekuje, że powstanie
system ewidencji wypożyczania torebek:
Jesteśmy wypożyczalnią torebek ekskluzywnych, najlepszych marek światowych.
Torebki są wypożyczane na określony czas, tj. na doby lub w pakietach tygodniowych
lub miesięcznych.
Cena wypożyczenia zależy od kategorii torebki, do której została zakwalifikowana.
Jeśli torebka nie zostanie zwrócona na czas lub ulegnie zniszczeniu, wypożyczający pi‑
semnie zobowiązuje się zwrócić kwotę odpowiadającą jej wartości sprzed wypożyczenia.
Dlatego też ewidencjonujemy dane klienta łącznie z adresem i numerem telefonu.
Klient może wypożyczyć na raz kilka torebek. Każda torebka jest niepowtarzalna
i opisana poprzez markę producenta, kolor, materiał, z którego jest wykonana, oraz
wartość wynikającą z ceny zakupu.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
1.7.  Przykłady i zadania do samodzielnego wykonania 43

Zadanie 1.2. Agencja ochrony Stróż


Oto fragment wywiadu z prezesem Agencji, który zamówił system ułatwiający
rozliczenia z klientami:
Agencja ochrony Stróż specjalizuje się w dozorowaniu bloków mieszkalnych. Za‑
leżnie od wielkości domu (w tym liczby mieszkań, klatek schodowych, funkcjonowania
tzw. portierni głównej, dozorowania bramek wejściowych i wjazdu przez bramy gara‑
żowe) stosuje się odpowiednie usługi wyszczególnione w cenniku.
Opracowane jasne procedury postępowania w sytuacjach zagrożenia (kradzieżą,
napadem, pożarem itp.) i dobrze przeszkolony personel gwarantują wysoką jakość
oferowanych usług.
Klientami Agencji są głównie spółdzielnie mieszkaniowe, wspólnoty mieszkaniowe
i właściciele prywatnych domków jednorodzinnych. Umowa dotycząca ochrony nieru‑
chomości może więc dotyczyć pojedynczego obiektu, jak i wielu różnych. Umowa jest
zawierana na określony czas, po którego upływie może być zawarta kolejna, jeśli obie
strony są zadowolone ze współpracy.
Agencja powinna przesyłać co miesiąc faktury za swoje usługi, oddzielnie dla każ‑
dej pozycji umowy (czyli dla każdego obiektu). W fakturze jest podana stała kwota
wynikająca z umowy oraz inne pozycje związane z nieprzewidzianymi interwencjami
sprowokowanymi sytuacjami zagrożenia w danym obiekcie (wg cennika).

Zadanie 1.3. Dostawa sushi na telefon Shatokan


Oto fragment wywiadu z szefem baru, który zamówił system ułatwiający przyj‑
mowanie zamówień od klientów:
Jesteśmy barem sushi, w którym na co dzień pracują miłośnicy i trenerzy sekcji
karate Shatokan. Zamówienia są przyjmowane telefonicznie, a dostawa na terenie całej
Warszawy jest za darmo. W zamówieniu poza umówionym terminem dostawy powinna
znaleźć się także informacja, dla ilu osób należy przygotować pałeczki i sos sojowy.
Klient musi podać dokładny adres, dokąd ma być dowiezione zamówienie (za każ‑
dym razem może być to inny adres). Powinien też podać imię i nazwisko, bo na nie jest
wystawiana karta lojalnościowa, uprawniająca do rabatów.
W zamówieniu mogą znaleźć się tylko pozycje z menu opublikowanego w inter‑
necie na stronie baru lub wydrukowanego i rozdawanego w różnych punktach miasta.
W menu poza nazwą dania i jego ceną jednostkową wydrukowany jest także aktualny
numer dania w ulotce by ewentualnie ułatwić klientowi składanie zamówienia.

Odpowiedzi do powyższych zadań


w pliku Odpowiedzi do zadań 1_1 do 1_3

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
44   1.  Wprowadzenie do projektowania systemów

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
2.1.  Tworzenie bazy danych 45

2. Podstawy pracy z relacyjną bazą danych


MS Access

W tym rozdziale zostaną omówione podstawowe zasady tworzenia i korzystania


z relacyjnej bazy danych znajdującej się w pełnym pakiecie Microsoft Office 2010. Jest
to bardzo rozbudowane narzędzie do przechowywania, przetwarzania i różnorodnego
prezentowania zgromadzonych danych. Z tej przyczyny omówione zagadnienia nie
wyczerpują wszystkich możliwości programu, a jedynie dają podstawę do dalszego
zgłębiania oferowanych w nim wyszukanych funkcji i zastosowań.

2.1. Tworzenie bazy danych


Po uruchomieniu programu MS Access 2010 pojawia się okno, w którym można
otworzyć istniejącą bazę danych, wybierając z listy ostatnio używanych plików ba‑
zodanowych, lub poszukać pliku w dostępnych zasobach. Można też utworzyć nową
pustą bazę danych. W tym celu należy określić nazwę i lokalizację pliku, w którym
baza będzie przechowywana, a następnie wybrać przycisk Utwórz (rysunek 2.1).
Program Access jako system zarządzania bazą danych rejestruje na bieżąco na
nośniku trwałym obiekty stworzone lub zmodyfikowane w systemie (nie przechowuje
efektów pracy w pamięci operacyjnej, jak np. Word lub Excel).

Ścieżka dostępu do nowej bazy danych Zmiana ścieżki dostępu


Nazwa nowej bazy danych

Rysunek 2.1. Tworzenie nowej bazy danych


Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313
##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
46   2.  Podstawy pracy z relacyjną bazą danych MS Access

2.2. Tworzenie nowej tabeli


Tabele i ich strukturę można tworzyć w dwóch trybach: przez wprowadzanie
danych i w widoku projektu.

Tworzenie tabeli przez wprowadzanie danych


W chwili rozpoczęcia pracy z nową bazą danych Access automatycznie tworzy
nową tabelę o nazwie Tabela1 i przechodzi w tryb wpisywania danych do tej tabeli.
Stworzenie tabeli poprzez wpisywanie do niej danych jest wygodną metodą dla
tabel, które nie zawierają kluczy obcych. W przykładzie Przychodnia (przykład 1.1
Przychodnia lekarska Medolek z punktu 1.7) tą metodą można na przykład stwo‑
rzyć tabele Pacjenci, Lekarze, Leki. W celu utworzenia kolejnej tabeli, należy z karty
Tworzenie wybrać ikonę Tabela.
Pierwsze pole o nazwie Identyfikator jest domyślnie ustawione jako typ auto‑
numerowanie i jest oznaczone jako klucz główny tabeli. Wartości pól tego typu są
nadawane przez SZBD jako kolejne liczby naturalne. Po skasowaniu rekordu raz wy‑
korzystany numer nie jest ponownie nadawany. Z tego powodu nie zawsze pierwszy
rekord w nowo utworzonej tabeli otrzymuje numer 1 (rysunek 2.2).
Typy pozostałych pól są określane na podstawie typu danych wprowadzo‑
nych w pierwszym rekordzie. Podstawowe typy danych dostępne w programie
Access to:
• tekst – alfanumeryczny ciąg maksymalnie 255 znaków,
• nota – tekst ponad 255 znaków,
• autonumerowanie – liczba naturalna, nadawana przez SZBD,
• liczba – liczba rzeczywista,
• data/godzina,
• logiczny – wartość tak/nie.
Pola otrzymują też domyślne nazwy, np. Pole1, które trzeba zamienić na nazwy
nadane polom danej tabeli w modelu logicznym. W tym celu należy kliknąć nazwę
pola dwa razy, co spowoduje włączenie trybu edytowania nazwy, lub prawym przy‑
ciskiem myszy włączyć menu operacji dla pola tabeli i wybrać zmianę nazwy pola.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
2.2.  Tworzenie nowej tabeli 47

Rysunek 2.2. Wprowadzanie danych do nowej tabeli

Po wprowadzeniu danych należy tabelę zamknąć. Można to zrobić, aktywując


menu podręczne prawym przyciskiem myszy na zakładce z napisem Tabela1 poni‑
żej wstążki lub ikoną zamykania bieżącego obiektu na końcu paska z tą zakładką
(rysunek 2.2). Przed zamknięciem pojawi się pytanie, czy tabela ma być zapisana.
Wskazanie opcji Tak spowoduje otwarcie okna, w którym należy wpisać nazwę
tabeli (rysunek 2.3).

Rysunek 2.3. Zapisywanie nowej tabeli

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
48   2.  Podstawy pracy z relacyjną bazą danych MS Access

Tworzenie tabeli w widoku projektu


Bardziej praktyczną metodą stworzenia tabeli jest zdefiniowanie jej w widoku
projektu, szczególnie wtedy, gdy nie ma jeszcze danych, które można by wpisać
do takiej tabeli. Ponadto w projekcie można zdefiniować dla pól odnośniki, aby
wprowadzanie wartości do pola odbywało się przez wybór wartości z listy. Jest to
szczególne korzystne, gdy listę tworzy zbiór wartości występujących w odpowiednim
polu tabeli powiązanej, co pozwala na zachowanie integralności danych podczas ich
wpisywania. Zachowanie integralności danych dla powiązanych tabel polega na tym,
że w tabeli po stronie relacji do wielu, w polu będącym kluczem obcym, dopuszczalne
są tylko wartości występujące w polu kluczowym tabeli znajdującej się po stronie
jeden w tej relacji.
Nową tabelę można otworzyć w tzw. widoku projektu, wybierając ikonę Projekt
tabeli znajdującą się w karcie Tworzenie.
Definiując projekt tabeli, należy w kolumnie Nazwa pola podać nazwę pola
i określić typ pola w kolumnie Typ danych (rysunek 2.4). Ponadto trzeba wskazać
pole będące kluczem głównym. W tym celu należy umieścić kursor w polu i na
wstążce wybrać ikonę Klucz podstawowy (tzn. najechać na ikonę i kliknąć lewym
przyciskiem myszy). Dla klucza wielopolowego przed wybraniem ikony klucza trzeba
zaznaczyć pola tworzące klucz (klikając kolejno na odpowiednie pola z wciśniętym
klawiszem Ctrl).
W widoku projektu tabeli dla każdego pola można też zdefiniować właściwości,
które ułatwią kontrolę wprowadzanych danych i usprawnią przetwarzanie danych
z tego pola. Dla każdego stworzonego pola SZBD przyjmuje domyślne właściwości
odpowiednie dla jego typu. Jednak w wielu przypadkach wskazana jest zmiana domyśl‑
nych ustawień, aby usprawnić proces przetwarzania lub wprowadzania danych.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
2.2.  Tworzenie nowej tabeli 49

Rysunek 2.4. Tworzenie tabeli w widoku projektu

Zbiór właściwości jest różny dla różnych typów pól (rysunek 2.5).

a) b)

Rysunek 2.5. Właściwości dla pola: a) typu autonumerowanie, b) typu liczba

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
50   2.  Podstawy pracy z relacyjną bazą danych MS Access

Poniżej przedstawiono wybrane właściwości pola:


• długość pola – ilość znaków dla pól tekstowych, np. dla pola KodPocztowy wystar‑
czy długość = 6 znaków zamiast domyślnych 255 znaków, a dla pola liczbowego
długość określa się jako:
–– bajt – liczby całkowite od 0 do 255 (w pamięci zajmują 1 bajt),
–– liczba całkowita – liczby całkowite od –32768 do 32767 (w pamięci zajmują
2 bajty),
–– liczba całkowita długa – liczby całkowite od ponad –2,14 mld do ponad
2,14 mld (w pamięci zajmują 4 bajty),
–– pojedyncza precyzja – liczby rzeczywiste (w pamięci zajmują 4 bajty);
• maska wprowadzania – pozwala zdefiniować wygodny format dla pól typu tekst,
np. dla pola NrTelefonu może to być format XXX–XXX‑XXX, który definiuje się:
!999\-999\-999;
• format pola – sposób wyświetlania danych na ekranie; dla pól typu liczba i data
można wybrać z listy dostępnych formatów lub ustalić własny;
• tytuł – nazwa pola, która będzie wyświetlana podczas prezentacji danych z tabeli;
nazwy nadane polom w projekcie nie zawsze są czytelne dla użytkownika;
• reguły poprawności – określają, jakie wartości są dla pola prawidłowe, np. dla
pola StazPracy reguła może być: ­BETWEEN 0 AND 50;
• indeksowanie – TAK oznacza stworzenie tabeli indeksowej, w której będzie
posortowany zbiór wartości wprowadzonych w tym polu ze wskazaniem na re‑
kordy, w których występuje dana wartość. Indeksy są automatycznie tworzone dla
pól należących do kluczy głównych. Korzystne jest tworzenie indeksów dla pól,
według których poszukuje się rekordów. Gdy w projektowanej aplikacji będzie
wykonywana operacja wybierania klienta po nazwisku, to istnienie indeksu dla
pola Nazwisko przyspieszy wyszukiwanie. Istnienie indeksów spowalnia jednak
uzupełnianie danych w tabeli, bo musi nastąpić też aktualizacja indeksów. Dla‑
tego decyzja o tworzeniu indeksu dla pola powinna być przemyślana i wynikać
z rzeczywistej potrzeby wyszukiwania rekordów według wartości tego pola.
Zakładka Odnośnik we właściwościach pola pokazuje, czy dla pola jest określony
odnośnik i jakie opcje są dla niego zdefiniowane. Jeśli pole nie ma odnośnika, to jest
widoczna jedna opcja: Typ formantu jako pole tekstowe. Gdy odnośnik jest, to lista
jego opcji jest dłuższa (rysunek 2.6).

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
2.2.  Tworzenie nowej tabeli 51

Rysunek 2.6. Właściwości odnośnika

Odnośnik to dodatkowa właściwość pola, która podczas wprowadzania wartości


pola umożliwia wybranie wartości z listy. Lista wartości dostępna w polu z odnośni‑
kiem może być zdefiniowana podczas tworzenia odnośnika lub będzie ją tworzyć zbiór
wartości wprowadzonych w określonym polu innej tabeli. Najczęściej odnośnik robi
się dla pól będących kluczem obcym, np. w tabeli Wizyty korzystne jest stworzenie
odnośnika dla pola NrPacjenta, aby podczas zapisywania pacjenta na wizytę można
go było wybrać z listy pacjentów wpisanych do tabeli Pacjenci.
Nie ma jednak potrzeby robić odnośników dla wszystkich pól, które są kluczami
obcymi, bo w gotowej aplikacji do niektórych z nich wartości będą wpisywane
automatycznie, gdy wprowadzanie danych do tabeli będzie się odbywało poprzez
formularz z podformularzem.
Stworzenie odnośnika dla pola wymaga ustawienia kursora w tym polu i ponow‑
nego rozwinięcia listy w kolumnie Typ pola. Na końcu listy jest Kreator odnośników.
Przechodząc przez kolejne okna, należy:
• określić, czy lista wartości dla pola jest dostępna w istniejącej tabeli, czy też zo‑
stanie w kolejnym kroku wpisana,
• wskazać tabelę, z której będzie pobierana lista wartości lub wpisać elementy listy
(lista może zawierać więcej niż jedną kolumnę),
• wybrać, które pola ze wskazanej tabeli będą widoczne na liście odnośnika (zawsze
trzeba wybrać pole/pola klucza głównego) lub kolumnę główną listy wpisanej;

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
52   2.  Podstawy pracy z relacyjną bazą danych MS Access

• można ukryć kolumnę klucza dla odnośników w tabeli i wskazać pole/pola, według
których mają być posortowane wartości na liście odnośnika,
• określić nazwę dla odnośnika (domyślnie jest sugerowana nazwa, jaką ma pole, dla
którego jest ten odnośnik) i wybrać opcję Włącz integralność danych (znaczenie
tej opcji będzie omówione w dalszej części rozdziału).

2.3. Łączenie tabel relacjami


Po stworzeniu tabel należy je połączyć relacjami, wzorując się na związkach
w modelu logicznym bazy danych. W tym celu trzeba otworzyć okno relacji poprzez
wybranie w zakładce Narzędzia bazy danych ikony Relacje. Do okna relacji należy
wprowadzić wszystkie tabele, przeciągając ich nazwy z listy tabel po lewej stronie.
Łączenie dwóch tabel relacją polega na przeciągnięciu pola klucza głównego jednej
tabeli na odpowiadające mu pole (klucz obcy) w drugiej tabeli. Pojawi się okno Edy‑
towanie relacji, w którym będą wpisane nazwy tabel i wskazanych w nich pól, które
połączy relacja. Dodatkowo trzeba jeszcze zaznaczyć opcję Wymuszanie więzów
integralności (rysunek 2.7). Wybranie tej opcji oznacza, że SZBD sprawdza:
• czy łączone pola są tego samego typu (nie można połączyć pola typu liczba
z polem typu tekst),
• czy już wpisane w tych polach dane nie naruszają więzów integralności.
Naruszenie więzów jest wtedy, gdy w polu będącym kluczem obcym występuje
wartość, której nie ma w odpowiadającym mu polu klucza głównego, na przykład
wtedy, gdy w tabeli Wizyty jest rekord z numerem pacjenta 5, a w tabeli Pacjenci nie
ma pacjenta z numerem 5. Wówczas, gdy któreś sprawdzenie daje wynik negatywny,
pojawia się odpowiedni komunikat i utworzenie relacji staje się niemożliwe tak długo,
jak długo błędy nie zostaną usunięte.
Ustawienie opcji Wymuszanie więzów integralności dla relacji oznacza, że bę‑
dzie dla niej zdefiniowana liczebność. W modelu relacyjnym mogą być użyte dwa
rodzaje liczebności: 1:1 dla relacji łączącej pola–klucze główne dwu tabel oraz 1:N,
gdy relacja łączy klucz główny jednej tabeli i pole niekluczowe drugiej.
Jeśli podczas tworzenia tabel zostaną zdefiniowane w polach odnośniki do innych
tabel, to automatycznie te tabele zostaną powiązane relacją.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
2.3.  Łączenie tabel relacjami 53

Rysunek 2.7. Edytowanie relacji

Na rysunku 2.8 jest przedstawiony model danych, czyli tabele i relacje, dla przy‑
kładu Przychodnia.

Rysunek 2.8. Przykład zdefiniowanych relacji

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
54   2.  Podstawy pracy z relacyjną bazą danych MS Access

Powiązanie pola relacją oznacza, że nie będzie można dokonać modyfikacji tego
pola w projekcie tabeli. Aby pole można było modyfikować trzeba najpierw usunąć
relacje wiążące to pole. W tym celu należy kliknąć prawym przyciskiem myszy na
linii relacji i wybrać opcję Usuń lub lewym przyciskiem wskazać relację i nacisnąć
klawisz Delete.
Podczas tworzenia i modyfikacji relacji tabele, do których się one odnoszą, muszą
być zamknięte. W przeciwnym wypadku nie będzie możliwe zapisanie dokonanych
zmian w relacjach.

2.4. Formularze
Formularze to obiekty, za których pomocą projektuje się ekrany, które będą
wyświetlane użytkownikowi w celu prezentacji lub wprowadzania danych (formu‑
larze związane) lub jako ekrany służące do aktywacji różnych funkcji (formularze
niezwiązane). Na przykład za pomocą formularza można zdefiniować menu aplikacji,
czyli spis funkcji dostępnych w aplikacji.

Formularze wieloelementowe
Najprostsze formularze służą do wyświetlania danych z tabeli lub kwerendy8 w for‑
mie tabelarycznej. Są to formularze wieloelementowe. Można je stworzyć w szybki
i prosty sposób, używając kreatora formularzy. W tym celu po wybraniu tabeli, dla
której ma powstać formularz, na karcie Tworzenie należy wybrać ikonę Więcej
formularzy, a z wyświetlonej listy pozycję Wiele elementów. Powstaje formularz
w standardowym formacie (rysunek 2.9). Zawiera on wszystkie pola z powiązanej
tabeli/kwerendy ułożone poziomo, aby wyświetlane dane miały postać tabeli. Jeśli
nie chcemy dokonywać w nim żadnych zmian, należy go zamknąć i zapisać (jego
nazwa może być identyczna jak nazwa tabeli, na podstawie której powstał). Jednak
taki formularz nie korzysta z wielu dogodnych dla użytkownika opcji, które można
umieścić w formularzu jako tzw. formanty.

8  Kwerendy zostaną omówione w następnym punkcie tego rozdziału.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
2.4.  Formularze 55

Rysunek 2.9. Standardowy formularz wieloelementowy do tabeli Pacjenci

W naszej aplikacji będziemy używać następujących formantów:


• etykieta – pole, w którym można umieścić dowolny tekst (nazwy pól są podane
w etykietach),
• pole tekstowe – pole do wyświetlania lub edytowania danych z pola tabeli/kwe‑
rendy lub wyniki obliczeń na danych z tych pól,
• przycisk polecenia – przycisk służący do wykonywania akcji związanych z dzia‑
łaniami na rekordach lub innych obiektach dostępnych w aplikacji,
• pole kombi – pole, do którego można wprowadzać wartości przez wpisanie danych
lub wybór z listy wartości. Pola, dla których w projekcie tabeli zostały utworzone
odnośniki, są w formularzach automatycznie zdefiniowane jako pola kombi,
• obraz – element zawierający kopię zawartości wybranego pliku graficznego.
Wszelkie zmiany w stworzonym formularzu (np. dodanie formantu) wymagają
otwarcia go w widoku projektu.

Dla dociekliwych
Obiekty typu tabela, kwerenda, formularz i raport można otworzyć w widoku
projektu lub w widoku danych. Najechanie kursorem na nazwę obiektu i dwukrotne
jej kliknięcie powoduje jego otwarcie w widoku danych. Przełączenia z widoku danych
na widok projektu można dokonać na trzy sposoby (rysunek 2.10):
• poprzez ikonę Widok na wstążce,
• z menu podręcznego obiektu (prawy przycisk myszy na zakładce z nazwą otwar‑
tego obiektu),
• poprzez ikonę Widok projektu na pasku stanu.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
56   2.  Podstawy pracy z relacyjną bazą danych MS Access

1. Ikona Widok 2. Menu podręczne obiektu

3. Ikona widoku projektu na pasku stanu

Rysunek 2.10. Przełączanie z widoku danych na widok projektu

Widok projektu jest podzielony na trzy obszary: nagłówek, szczegóły i stopkę.


Wielkości tych obszarów można modyfikować, przesuwając dzielące je linie. Można
dla obszaru nagłówka i szczegółów ustawić właściwości dostępne pod prawym przy‑
ciskiem myszy w opcji Właściwości lub zmienić tło dla tego obszaru w opcji Kolor
wypełnienia/tła.
Charakterystycznym elementem w projekcie formularza jest siatka pokrywająca
tło. Linie siatki ułatwiają dokładne lokowanie formantów w obszarze i definiowanie
ich wielkości. Gdy dla kilku formantów chcemy wyrównać ich położenie, zmienić
wielkość lub określić jednakowe formatowanie (tło, czcionka), to trzeba je wybrać,
klikając każdy z wciśniętym klawiszem Ctrl, a następnie otworzyć menu podręczne
prawym przyciskiem myszy. Opcje Wyrównaj i Rozmiar służą do wyrównania poło‑
żenia i wielkości ram wybranych formantów, a zmianę wyglądu można uzyskać przez
opcję Kolor wypełnienia i Kolor czcionki. Zmianę typu czcionki można uzyskać
przez wybranie ustawień dostępnych w grupie Motyw na wstążce.
Jednym z najczęściej umieszczanych w formularzu formantów jest Przycisk.
W celu umieszczenia wybranego formantu w projekcie formularza należy na wstążce
wybrać jego ikonę, a następnie nakreślić ramy formantu w odpowiednim obszarze
projektu. W przypadku formantu Przycisk zakończenie kreślenia ram powoduje

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
2.4.  Formularze 57

uruchomienie kreatora, który przez wyświetlanie kolejnych okien pozwala na zde‑


finiowanie niezbędnych atrybutów formantu. Kreator w pierwszym oknie wymaga
wskazania kategorii akcji, a w ramach wybranej kategorii należy wskazać typ akcji
(rysunek 2.11).

Rysunek 2.11. Kategorie i typy akcji dla formantu Przycisk

Jeśli zostanie wybrana akcja związana z użyciem obiektu, to kolejne okno wyświe‑
tla dostępne obiekty związane z wybraną kategorią, aby wskazać, do którego obiektu
będzie się odnosić akcja przycisku. Kolejne okno służy do zdefiniowania sposobu
opisu przycisku. Opis może być w formie ikony lub tekstu. Wygodniejszą formą jest
słowne opisanie akcji przycisku (rysunek 2.12).

Rysunek 2.12. Okno do opisu przycisku polecenia


Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313
##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
58   2.  Podstawy pracy z relacyjną bazą danych MS Access

Ostatnie okno to nadanie nazwy formantowi. W naszej prototypowej aplikacji


nie będziemy się do tych nazw ponownie odwoływać, więc można zostawić nazwy
sugerowane przez SZBD, np. Polecenie1.
W stworzonym już formularzu Pacjenci umieścimy trzy przyciski polecenia:
1) Kategoria: Operacje na formularzach, akcja: Zamknij formularz, opis Za‑
mknij;
2) Kategoria: Nawigowanie między rekordami, akcja: Przejdź do ostatniego rekordu,
opis Nowy pacjent;
3) Kategoria: Nawigowanie między rekordami, akcja: Znajdź rekord, opis Znajdź
pacjenta.
Zmianie uległy też wielkości pól, aby były widoczne wszystkie pola na ekranie.
Widok projektu formularza po zmianach prezentuje rysunek 2.13.
Dla tabel Lekarz i Leki również należy zaprojektować formularze wieloelemen‑
towe w identyczny sposób, jak dla tabeli Pacjenci, i dodać w nich takie same trzy
przyciski.

Rysunek 2.13. Widok projektu formularza Pacjenci po zmianach

Formularze proste
Formularz prosty też jest związany z tabela lub kwerendą. Tworzy się go za pomocą
kreatora, wybierając na karcie Tworzenie ikonę Formularz po wcześniejszym wska‑
zaniu na liście obiektów właściwej tabeli/kwerendy. W tym formularzu pola z tabeli/
kwerendy są ułożone w pionie, aby podczas wyświetlania danych był widoczny tylko
jeden rekord. Podczas tworzenia formularza tego typu często powstaje w nim też
podformularz do tabeli powiązanej relacją z tabelą podstawową formularza, która
jest po stronie „do wielu” tej relacji. Cecha ta będzie przydatna podczas tworzenia
formularza do tabeli Recepty, bo automatycznie powstanie w nim podformularz

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
2.4.  Formularze 59

odwołujący się do tabeli Pozycje recepty. Formularz będzie zawierał pola z tabeli
Recepty i podformularz wieloelementowy zawierający pola z tabeli Pozycje recepty.
Podczas wyświetlania danych jednej recepty w polach formularza w podformula‑
rzu będą widoczne powiązane z nią pozycje recepty. Taki formularz będzie bardzo
użyteczny do wprowadzania danych o nowych receptach i ich pozycjach, ponieważ
automatycznie będzie wprowadzana wartość do pola NumerRecepty (klucz obcy)
w podformularzu Pozycje recepty zgodnie z numerem recepty występującym w polu
NumerRecepty w formularzu Recepty.
W celu usprawnienia pracy z formularzem prostym jest wskazane umieszczenie
w nim przycisków dotyczących nawigowania między rekordami, np. przechodzenie
do następnego, poprzedniego lub nowego rekordu (rysunek 2.14).

Rysunek 2.14. Widok projektu formularza z podformularzem

Tworzenie formularza z podformularzem


za pomocą Kreatora formularzy
Innym sposobem stworzenia formularza i związanego z nim podformularza jest
użycie tzw. kreatora formularzy (ikona Kreator formularzy na zakładce Tworzenie),
który krok po kroku prowadzi użytkownika do celu.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
60   2.  Podstawy pracy z relacyjną bazą danych MS Access

W pierwszym oknie Kreatora można wybrać pola z wielu tabel, np. w oma‑


wianym przykładzie zostają wybrane pola z tabel: Wizyty, Recepty i Pozycje recepty
(rysunek 2.15).

Rysunek 2.15. Wybieranie pól z wielu tabel podczas tworzenia formularza


z podformularzem

W kolejnym kroku należy wskazać sposób wyświetlania wybranych pól (rysu‑


nek 2.16). Możliwe są następujące warianty:
1) Pola z tabeli Wizyty będą nadrzędne, czyli w lewym oknie jest wskazana opcja
przez Wizyty, a na dole wybrana opcja Formularz z podformularzem. Pola
z pozostałych tabel (Recepty i Pozycje recepty) będą w zależnych od siebie w pod‑
formularzach (rysunek 2.17).
2) pola z tabeli Recepty będą nadrzędne, czyli w lewym oknie jest wskazana opcja
przez Recepty, a na dole wybrana opcja Formularz z podformularzem. W tej
sytuacji pola z tabeli Wizyty będą uzupełniać informacje o recepcie, a pola z tabeli
Pozycje recepty będą w podformularzu (rysunek 2.18).
3) pola z tabeli Wizyty będą tworzyć główny formularz, w którym będzie przycisk
otwarcia formularza Recepty z podformularzem Pozycje recepty. Taki efekt uzy‑
skamy, gdy w lewym oknie zostanie wskazana opcja przez Wizyty, a na dole
wybrana opcja Połączone formularze (rysunek 2.19).

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
2.4.  Formularze 61

Rysunek 2.16. Wybór sposobu prezentacji pól z wielu tabel w podformularzu

Rysunek 2.17. Formularz Wizyty z podformularzami

Rysunek 2.18. Formularz Recepty z podformularzem

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
62   2.  Podstawy pracy z relacyjną bazą danych MS Access

Rysunek 2.19. Formularz Wizyty z przyciskiem do formularza Recepty

Formularze niezwiązane
Formularze wykorzystuje się też do tworzenia okien pełniących rolę menu aplika‑
cji. Są one zbiorem przycisków uruchamiających istniejące w aplikacji obiekty. W celu
stworzenia formularza niezwiązanego należy użyć ikony Projekt formularza na karcie
Tworzenie. W projekcie należy umieścić formanty Przycisk do otwierania odpowiednich
formularzy lub uruchamiania kwerend. Można też na górze stworzyć formant Etykieta
z tytułem aplikacji lub nazwą użytkownika. Po obrysowaniu ram formantu Etykieta
można wpisać do niego tekst, zakończyć pisanie tekstu poprzez naciśnięcie klawisza Enter
i przejść do zakładki Narzędzia główne, aby następnie ustawić formatowanie dla Etykiety
(tło i czcionkę). Można też użyć formantu Obraz, aby wstawić logo Przychodni lub inną
grafikę. Formularz Menu dla aplikacji Przychodnia przedstawiają rysunki 2.20 i 2.21.

Rysunek 2.20. Projekt formularza Menu

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
2.5.  Kwerendy 63

Rysunek 2.21. Widok formularza Menu

2.5. Kwerendy
Kwerendy9 dzielą się na wybierające i funkcjonalne. Kwerenda wybierająca to
tzw. zapytanie do bazy danych służące do przeglądania danych z tabel z użyciem
działań:
• selekcji – wybór rekordów spełniających warunek/warunki wyboru,
• projekcji – wyświetlanie danych tylko dla pól wybranych w projekcie kwerendy,
• obliczeń – wykonanie działań arytmetycznych i funkcji na danych z pól,
• agregacji – grupowanie rekordów o tej samej wartości wskazanego pola i wy‑
konanie wybranego działania na rekordach należących do grupy (kwerenda
sumująca).
Wykonanie kwerendy wybierającej nie powoduje zmiany danych w tabelach.
Powstałe w kwerendzie obliczenia znajdują się tylko w pamięci operacyjnej, dopóki
kwerenda nie zostanie zamknięta.
Kwerendy funkcjonalne zmieniają zawartość tabeli poprzez:
• dodawanie/dopisywanie nowych rekordów do tabeli i wypełnianie wybranych
pól wartościami; usuwanie rekordów z tabeli,
• aktualizowanie danych w tabeli.

9  W tradycyjnej polskiej nomenklaturze, a także w starszych wersjach MS Access zamiast określenia

kwerenda używa się terminu zapytanie.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
64   2.  Podstawy pracy z relacyjną bazą danych MS Access

Kwerendy, tak samo jak tabele, mogą być otwarte w widoku danych lub w widoku
projektu. W widoku projektu zdefiniowany jest typ kwerendy i działania, które ma
ona wykonywać na wybranych polach. W celu otwarcia nowej kwerendy w widoku
projektu trzeba wybrać na karcie Tworzenie ikonę Projekt kwerendy, a następnie
wskazać tabele lub inne kwerendy, które będą jej podstawą. W górnej części okna
(będącego widokiem projektu) widoczne są modele wybranych tabel/kwerend. Aby
dodać kolejną tabele/kwerendę, wystarczy jej nazwę przeciągnąć z listy obiektów.
Dla prawidłowego działania projektowanej kwerendy jest konieczne, aby wszystkie
wybrane do projektu tabele/kwerendy były powiązane relacjami. Jeśli zostały wy‑
brane tabele, między którymi istnieje powiązanie relacyjne w modelu relacji, to jest
ono odzwierciedlone. Gdy wybrane będą tabele niezwiązane bezpośrednio relacją,
trzeba dodać do projektu kwerendy inne tabele, które zgodnie z modelem relacji
pośredniczą między wybranymi pierwotnie tabelami.
Rozważmy następujący przykład: chcemy wyświetlić poprzez kwerendę wszyst‑
kie leki przepisane pacjentowi, który nazywa się Jan Nowak. Do projektu kwerendy
trzeba wybrać tabele Pacjenci (zawiera pola imię i nazwisko pacjenta) i Pozycje recepty
(zawiera pole z nazwami przepisanych leków). Jednak miedzy tymi tabelami nie ma
bezpośredniej relacji i dlatego do projektu trzeba też dodać tabele Wizyty i Recepty,
bo za ich pośrednictwem możliwe jest ustalenie, jakie leki przepisano poszczególnym
pacjentom. Jeśli do projektu kwerendy wybierzemy inne kwerendy, które nie mają
powiązań relacyjnych wynikających z modelu relacji, to należy odpowiednie relacje
zrobić w widoku projektu kwerendy (przeciągając odpowiednie pole z jednego obiektu
na odpowiednie pole drugiego obiektu).

Kwerenda wybierająca

Najprostsze kwerendy wybierające służą do powiązania w widoku danych wybra‑


nych pól z wielu tabel i określenia warunków selekcji rekordów. Wyboru pól (operacja
projekcji), z których dane będą wyświetlane w widoku danych kwerendy, dokonuje się
przez dwukrotne kliknięcie na nazwie pola w modelu tabeli lub wybranie pola z listy
rozwijanej w linii Pole w wybranej kolumnie tabeli projektowej (rysunek 2.22).

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
2.5.  Kwerendy 65

Model tabel wybranych do podstawy kwerendy

Tabela projektowa kwerendy Lista rozwijana dostępnych pól

Rysunek 2.22. Wybór pól do widoku danych kwerendy

Do projektu kwerendy należy wybrać też pola, dla których będą określone kryteria
selekcji, choć dane z tych pól nie muszą być wyświetlane w widoku danych kwerendy,
jeśli w linii Pokaż tabeli projektowej dla pola będzie usunięty znacznik.
Warunek selekcji dla wybranego pola umieszczamy w linii Kryteria w kolumnie
odpowiadającej temu polu.
Warunki dla pól tekstowych można zdefiniować jako:
• szukanie dokładnie podanego ciągu znaków, np. dla pola Nazwisko należy wpisać
Nowak. Wpisany ciąg zostanie ujęty w cudzysłów. Jest to znacznik dla pola typu
tekst;
• szukanie podobnego ciągu znaków z użyciem znaku „*” zastępującego dowolny
ciąg znaków w funkcji Like. Na przykład, gdy chcemy wybrać wszystkie nazwiska
na literę N, w kryterium należy wpisać Like(N*).
Warunki dla pól liczbowych i Data można zdefiniować:
• przy użyciu operatorów porównań: <, >, <=, >=. <>. Brak operatora przed liczbą
jest domyślnie traktowany jako =;
• przez określenie przedziału wartości przy użyciu funkcji Between lub operatora
logicznego And, np. Between 7 and 20 lub >7 and <20;

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
66   2.  Podstawy pracy z relacyjną bazą danych MS Access

• przez określenie rozłącznych przedziałów lub szukanie wielu konkretnych wartości


dla pola poprzez użycie operatora logicznego Or, np. <10 or >20 lub 3 or 5 or 12.
Kryteria selekcji można też określić w widoku danych kwerendy poprzez filtry
dołączone do każdego pola kwerendy. Działanie tych filtrów jest identyczne jak Filtr
w programie Excel.
Gdy w projekcie kwerendy jest wiele kryteriów selekcji dla różnych pól, to te,
które są w tej samej linii, są traktowane jako kryteria, które muszą być spełnione
jednocześnie w wartościach pól rekordu, aby był on wybrany do widoku danych.
Jeśli kryteria są w różnych liniach (wszystkie linie poniżej linii Kryteria w tabeli
projektowej są kolejnymi liniami do wprowadzania kryteriów selekcji) to wystarczy,
aby tylko jedno kryterium było spełnione w wartościach pól rekordu i rekord jest
wybrany do widoku danych kwerendy.

Kwerenda z parametrem
Kryteria selekcji rekordów w projekcie kwerendy nie muszą być oparte na kon‑
kretnych wartościach liczbowych, tekstowych lub dacie. Wartości te mogą być
określone przez użytkownika w momencie uruchamiania kwerendy. W projekcie
w miejsce liczby, daty, tekstu umieszcza się parametr w postaci: [podaj liczbę/datę/
tekst]. Tekst wpisany w nawiasach prostokątnych jest wyświetlany użytkownikowi
w oknie zapytania o wartość parametru i powinien jasno określać, o jaki typ wartości
użytkownik jest pytany (rysunki 2.23 i 2.24).

Rysunek 2.23. Kryterium z parametrem

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
2.5.  Kwerendy 67

Rysunek 2.24. Zapytanie o wartość parametru

W przedstawionym przykładzie interesowały nas leki zapisane pacjentowi o na‑


zwisku Nowak. Wyświetlane obok imię pacjenta dodatkowo precyzuje, jakie leki
zapisano poszczególnym pacjentom o tym nazwisku.

Kwerenda sumująca
Ten typ kwerendy dokonuje agregacji danych dla grup rekordów. W projekcie
takiej kwerendy należy wskazać ikonę ze znakiem Sumy na karcie Projektowanie,
aby stała się ona sumująca. Pojawi się wtedy w tabeli projektowej nowa linia Podsumo‑
wanie. W tej linii dla pola, według wartości którego mają być pogrupowane rekordy,
zostawiamy wyświetloną domyślnie opcję Grupuj według. Dla pól, których wartości
będą agregowane, należy wybrać z listy rozwijanej odpowiednią opcję agregacji.
Agregacja w kwerendzie nie będzie możliwa, jeśli do projektu wybierzemy więcej pól
niż te grupujące i agregujące, bo dla nich SZBD musi wyświetlić dane szczegółowe,
co uniemożliwia agregację. Rysunek 2.25 przedstawia projekt kwerendy sumującej,
która będzie liczyć, ile jest wizyt przypisanych do poszczególnych pacjentów.

Rysunek 2.25. Widok projektu kwerendy sumującej

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
68   2.  Podstawy pracy z relacyjną bazą danych MS Access

Dla dociekliwych
W widoku projektu w wierszu Podsumowanie możliwe jest ustawienie działania,
które ma być wykonane, np. Suma oznacza dodawanie wartości pola z kolejnych
wystąpień, Policz oznacza zliczanie wystąpień, w których pole zostało wypełnione.
Średnia powoduje obliczenie średniej wartości pola.

Kwerenda z polami obliczeniowymi


W kwerendzie można stworzyć nowe pole będące wynikiem działań wykonanych
na polach z tabel/kwerend wybranych do projektu kwerendy. Działania te określa się
w formie wyrażenia z użyciem operatorów arytmetycznych (+, –, *, /, ^), tekstowych
(&) lub wbudowanych funkcji i w odniesieniu do nazw pól, które w wyrażeniu za‑
pisuje się w nawiasach prostokątnych. Wyrażenie umieszcza się w linii Pole w pustej
kolumnie tabeli projektowej.

Przykładowe wyrażenia
1) Wartość  :  [Cena] * [Ilość] – obliczenie arytmetyczne na polach liczbowych.
nazwa pola wyrażenie

2) Pacjent  :  [Nazwisko]&”  ”&[Imię] – złączenie w jednym polu danych z pól tek‑


stowych za pomocą formuły konkatenacji.
3) Miesiąc  :  Month([DataZakupu]) –  określenie miesiąca z pola typu data.

Dla dociekliwych
Przy pisaniu wyrażeń pomocne jest użycie konstruktora wyrażeń (ikona Kon‑
struktor na karcie Projektowanie). W konstruktorze jest dostępna lista wszystkich
obiektów stworzonych w bazie danych i ich pól oraz spis dostępnych funkcji. Wy‑
branie pola, które ma być umieszczone w wyrażeniu poprzez dwukrotne kliknięcie
na jego nazwie jest łatwiejsze i często wygodniejsze niż wpisanie jego nazwy z kla‑
wiatury (rysunek 2.26). Ponadto w konstruktorze można przejrzeć funkcje dostępne
w programie.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
2.5.  Kwerendy 69

Rysunek 2.26. Konstruktor wyrażeń

Kwerenda dołączająca i usuwająca


oraz makro i importowanie danych
Kwerenda dołączająca będzie przydatna w aplikacji dla Przychodni, aby dopi‑
sywać do tabeli Wizyty nowe rekordy z planowanymi wizytami na przyszły okres.
W tym celu konieczne jest stworzenie dodatkowych dwu tabel: tabeli Grafik i tabeli
Kalendarz. W tabeli Grafik będą wypisane godziny kolejnych wizyt w poszczególnych
dniach tygodnia dla każdego lekarza. Tabelę tę będzie wygodnie stworzyć poprzez
import danych z programu Excel.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
70   2.  Podstawy pracy z relacyjną bazą danych MS Access

Importowanie danych z arkusza kalkulacyjnego Excel


W Excelu jest wygodna funkcja wypełniania komórek serią danych o określonej
wartości kroku, co pozwoli wypełniać komórki kolejnymi godzinami wizyt: od go‑
dziny początkowej do końcowej zgodnie ze wskazaną wartością zmiany.
W arkuszu programu Excel wpisujemy tytuły kolumn: NrLekarza, NrDniaTygo‑
dnia i Godzina. W celu wpisania godziny wizyt dla lekarza np. o numerze 1, który
w poniedziałek (oznaczony jako 1) pracuje w godz. 10–13 i przyjmuje pacjentów
co 15 minut, trzeba w kolumnie Godzina wpisać 9:00, a następnie wybrać ikonę
Wypełnij i opcję Seria danych, wybrać wypełnianie w kolumnie i wypełnić pola:
wartość kroku – 0:15 – i wartość końcowa – 13:00. Odpowiednia liczba komórek
wypełni się odpowiednimi godzinami. W kolumnach NrLekarza, NrDniaTygodnia
należy w takiej samej liczbie wierszy wpisać 1. W ten sam sposób należy wypełnić
kolejne komórki danymi dla kolejnych dni tygodnia i kolejnych lekarzy, uwzględ‑
niając godziny pracy lekarzy w poszczególnych dniach. Dla każdego lekarza może
być inny odstęp czasowy między wizytami (rysunek 2.27). Po wypełnieniu arkusza
potrzebnymi danymi czas by nadać nazwę Grafik obszarowi wypełnionych komórek,
zamknąć i zapisać skoroszyt.

Rysunek 2.27. Dane do tabeli Grafik w arkuszu programu Excel

Tak przygotowane dane w skoroszycie można następnie importować do apli‑


kacji bazodanowej Access, wybierając ikonę Excel na karcie Dane zewnętrzne.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
2.5.  Kwerendy 71

W pierwszym oknie importowania trzeba wskazać lokalizację i nazwę skoroszytu oraz


wybrać opcję stworzenia nowej tabeli z importowanych danych (rysunek 2.28).

Rysunek 2.28. Pierwsze okno importowania danych do tabeli Grafik

Zakres importowanych danych zawiera się pod nazwą grafik (rysunek 2.29).


W kolejnych krokach należy potwierdzić, że w nowej tabeli będą trzy pola o nazwach
z pierwszego wiersza importowanego zakresu (można te nazwy zmienić i określić typ
danych) oraz potwierdzić dodanie pola kluczowego do nowej tabeli i jej nazwę Grafik.
Nazwy pól, ich typ i nazwę nowej tabeli będzie można zmienić po jej utworzeniu.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
72   2.  Podstawy pracy z relacyjną bazą danych MS Access

Rysunek 2.29. Drugie okno importowania danych do tabeli Grafik

Druga tabela pomocnicza Kalendarz zawiera daty, przy których będą wpisywane
planowane wizyty. Widok projektu tabeli Kalendarz przedstawia rysunek 2.30.

Rysunek 2.30. Widok projektu tabeli Kalendarz

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
2.5.  Kwerendy 73

Dane do tabeli Kalendarz można wpisywać ręcznie lub też importować z arkusza
kalkulacyjnego, w którym spis dat dla dłuższego okresu można wprowadzić poprzez
wypełnianie komórek serią danych typu data (można wybrać opcję, aby daty dotyczyły
tylko dni roboczych). Dane przygotowane w arkuszu muszą mieć w pierwszej linii
każdej kolumny z danymi nazwę identyczną z nazwą pola w tabeli, do której dane
będą importowane. (rysunek 2.31).

Rysunek 2.31. Wypełnianie dat w arkuszu programu Excel

Następnie, wykorzystując funkcję Dzień tygodnia wykonaną na komórce z datą,


otrzymamy dla każdej daty określenie dnia tygodnia w postaci numeru (rysu‑
nek 2.32).

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
74   2.  Podstawy pracy z relacyjną bazą danych MS Access

Rysunek 2.32. Dane przygotowane w Excelu do importowania do Accessa


do tabeli Kalendarz

Importowanie danych do tabeli Kalendarz odbywa się w Accessie. Wykorzy‑


stujemy do tego kartę Dane zewnętrzne, a na niej ikonę Excel. Wówczas pojawi
się okno dialogowe Wybieranie źródła i miejsca docelowego danych (rysunek 2.33).
Po wybraniu opcji Dołącz kopię rekordów do tabeli należy wskazać tabelę, w której
powinny pojawić się dane (rysunek 2.34).

Rysunek 2.33. Pierwsze okno importowania danych do tabeli Kalendarz

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
2.5.  Kwerendy 75

Rysunek 2.34. Drugie okno importowania danych do tabeli Kalendarz

Dwie nowe tabele należy włączyć do modelu relacji. Tabelę Grafik łączymy
z tabelą Lekarze. Polem łączącym jest NrLekarza. Tabelę Kalendarz łączymy z tabelą
Grafik, wykorzystując pole NrDniaTygodnia. Dla tej relacji nie ustawiamy opcji
Wymuszanie więzów integralności, bo łączone pola w żadnej tabeli nie są polem
kluczowym (rysunek 2.35).

Rysunek 2.35. Model relacji po dodaniu nowych tabel

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
76   2.  Podstawy pracy z relacyjną bazą danych MS Access

Kwerenda dołączająca
Powiązanie danych z tabel Grafik i Kalendarz zostanie wykonane poprzez kwe‑
rendę Planowane wizyty. Projekt tej kwerendy przedstawia rysunek 2.36.

Rysunek 2.36. Widok projektu kwerendy Planowane wizyty

Kwerenda Planowane wizyty łączy godziny wizyt poszczególnych lekarzy w danym


dniu tygodnia z odpowiednimi datami. Dane z tej kwerendy są źródłem danych dla
nowych rekordów w tabeli Wizyty, dlatego na podstawie tej kwerendy tworzymy
nową kwerendę Dopisywanie wizyt, która będzie realizowała funkcję dopisywania
nowych rekordów. Będąc w widoku projektu nowej kwerendy, wskazujemy ikonę
Dołącz na karcie Projektowanie i otworzy się okno z zapytaniem, do jakiej tabeli
mają być dopisane nowe rekordy. Należy wskazać tabelę Wizyty. Następnie wybieramy
wszystkie pola do projekcji. Wtedy, gdy nazwy pól w tabeli Wizyty i w kwerendzie
Planowane wizyty są identycznie, SZBD automatycznie je dopasowuje, tj. wskazuje
odpowiednie pola w linii Dołączanie do. W przypadku różnicy nazwy, trzeba wybrać
w tej linii właściwe pole.
Do projektu należy jeszcze dodać warunki wypełniania w nowych rekordach
pola NrPacjenta. Pole to nie może być puste, bo jest powiązane relacją z polem NrPa‑
cjenta w tabeli Pacjenci i dla tej relacji jest ustawiona opcja Wymuszanie więzów
integralności. Dlatego w tabeli Pacjenci należy jeden rekord (z wartością w polu
NrPacjenta i pustymi pozostałymi polami) „zadedykować” jako nieokreślony pacjent,
do którego będą przypisane wszystkie wolne wizyty. W opisywanej aplikacji taką
funkcję będzie pełnił rekord, w którym NrPacjenta = 4. Dlatego w tabeli projektowej

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
2.5.  Kwerendy 77

kwerendy dołączającej czwarte pole będzie dotyczyło wprowadzania liczby 4 do pola


NrPacjenta we wszystkich dopisywanych rekordach (rysunek 2.37).
Uruchomienie kwerendy funkcjonalnej nie powoduje wyświetlenia danych, lecz
wymaga potwierdzenia woli użytkownika do modyfikacji zawartości tabeli poprzez
wybranie opcji Tak w dwóch oknach (rysunek 2.38). Wyświetlenie danych w tabeli
Wizyty umożliwi zobaczenie dopisanych rekordów w tej tabeli.

Rysunek 2.37. Widok projektu kwerendy Dopisywanie wizyt

Rysunek 2.38. Okna potwierdzenia wykonania kwerendy dołączającej

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
78   2.  Podstawy pracy z relacyjną bazą danych MS Access

Kwerenda usuwająca
Istotne jest, żeby nie dokonać ponownego dopisania wizyt z tymi samymi datami
poprzez ponowne wykonanie kwerendy dołączającej. Dlatego należy z tabeli Kalen‑
darz usunąć daty, dla których zostały wpisane planowane wizyty. W tym celu można
utworzyć kwerendę usuwającą rekordy zbudowaną na podstawie tabeli Kalendarz.
Widok projektu takiej kwerendy zawiera rysunek 2.39.

Rysunek 2.39. Widok projektu kwerendy Usuwanie dat

Wykonanie tej kwerendy również należy potwierdzić dwukrotnym Tak, jak


w przypadku kwerendy dołączającej, a efekty jej wykonania są widoczne po wyświe‑
tleniu danych z tabeli Kalendarz (tabela będzie pusta).

Makro
Wykonanie kwerendy usuwającej powinno się odbyć niezwłocznie po dopisaniu
planowanych wizyt, dlatego obie kwerendy zostaną połączone za pomocą makra
o nazwie Dopisywanie nowych wizyt. Utworzenie makra polega na wybraniu ikony
Makro na karcie Tworzenie. W oknie projektowania makra należy wybrać akcję
Otwórz kwerendę, a potem wskazać nazwę kwerendy dołączającej. Druga akcja to
też Otwórz kwerendę dla kwerendy usuwającej (rysunek 2.40).

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
2.5.  Kwerendy 79

Rysunek 2.40. Widok projektu makra Dopisywanie nowych wizyt

Warunkiem sprawnego działania funkcji dopisywania planowanych wizyt jest ko‑


nieczność wpisania dat do tabeli Kalendarz przed uruchomieniem makra. W celu ułatwie‑
nia użytkownikowi pamiętania o tej zależności, można stworzyć formularz, w którym ta
zależność będzie jasno określona. Przykład takiego formularza prezentuje rysunek 2.41.

Etykiety Przycisk otwarcia formularza na tabeli K alendarz


Przycisk uruchomienia makra

Rysunek 2.41. Formularz Nowe wizyty do realizacji funkcji dopisywania


planowanych wizyt

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
80   2.  Podstawy pracy z relacyjną bazą danych MS Access

Formularz Nowe wizyty służy do realizacji jednej z funkcji, więc w formularzu


Menu należy umieścić formant Przycisk do jego otwierania.

2.6. Użycie formularzy i kwerend do realizacji


innych funkcji

Formularz do obsługi wizyty lekarskiej


Lekarz obsługujący pacjentów zapisanych danego dnia na jego wizyty powinien
mieć dostęp tylko do swoich wizyt i tylko na dany dzień. Dlatego należy stworzyć
kwerendę, która będzie odpowiednio selekcjonować wizyty. Rysunek 2.42 przedstawia
widok projektu takiej kwerendy. W linii kryterium dla pola Data jest użyta funkcja
Date(), której wynikiem jest bieżąca data.

Rysunek 2.42. Widok projektu kwerendy Dzisiejsze wizyty

Następnie na podstawie takiej kwerendy można zaprojektować formularz prosty


i umieścić w nim, jako podformularz, formularz Recepty do rejestrowania wypisy‑
wanych recept. Wtedy, gdy chcemy umieścić w projekcie formularza inny istniejący
już formularz, należy użyć formantu PodformularzPodraport. Po wskazaniu, który
formularz ma być podformularzem, trzeba wskazać pole łączące dane z kwerendy
z danymi w tabeli Recepta. SZBD sprawdza, czy w obu formularzach występuje pole

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
2.6.  Użycie formularzy i kwerend do realizacji innych funkcji 81

o jednakowej nazwie i typie. Jeśli znajdzie takie pole, to domyślnie definiuje powią‑
zanie obu formularzy przez to pole. Gdy żadne powiązanie domyślnie nie zostanie
zdefiniowane, należy je zdefiniować samodzielnie. (rysunek 2.43).

Rysunek 2.43. Okno definiowania powiązania formularza z podformularzem

Dla ułatwienia korzystania z formularza jest wskazane umieszczenie w nim


przycisków przechodzenia do następnej i poprzedniej wizyty. Widok projektu tego
formularza przedstawia rysunek 2.44, a widok danych jest na rysunku 2.45.

Rysunek 2.44. Widok projektu formularza Obsługa wizyty

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
82   2.  Podstawy pracy z relacyjną bazą danych MS Access

Rysunek 2.45. Widok danych formularza Obsługa wizyty

Formularz do umawiania pacjenta na wizytę

Załóżmy, że chcemy umówić pacjenta na wizytę. W pierwszym kroku za pomocą


kwerendy Wolne wizyty wybieramy z tabeli Wizyty tylko te, w których NrPacjenta = 4
(bo tak oznaczone są wolne wizyty) i tworzymy formularz wieloelementowy na
podstawie tej kwerendy. Następnie projektujemy formularz prosty Umawianie na
wizytę w oparciu o tabelę Lekarze, a w nim umieszczamy jako podformularz for‑
mularz Wolne wizyty. Dla ułatwienia poszukiwania wizyt do konkretnego lekarza
umieszczamy w formularzu Umawianie na wizytę formant Przycisk znajdowania
rekordu (Znajdź rekord), za pomocą którego można szukać konkretnego lekarza
według nazwiska lub według specjalizacji. Widok danych formularza Umawianie na
wizytę przedstawia rysunek 2.46.

Rysunek 2.46. Widok formularza Umawianie na wizytę

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
2.7.  Raporty 83

Wtedy, gdy pacjent wybierze, na którą wizytę chce się zapisać, to dla tej wizyty
należy rozwinąć listę pacjentów w polu NrPacjenta i wskazać danego pacjenta.
W celu umożliwienia użytkownikowi dostępu do formularzy Umawianie na
wizytę i Obsługa wizyty warto w formularzu Menu umieścić przyciski otwierania
tych formularzy (rysunek 2.47).

Rysunek 2.47. Widok formularza Menu po uzupełnieniu

2.7. Raporty
Raporty to obiekty służące do prezentacji danych z tabel i kwerend w formie
wydruków. W raportach dane mogą być sortowane, grupowane i w ramach grupy
podsumowywane zgodnie z potrzebami użytkownika. Ponadto w raportach można
ustawić odpowiednio opcje, aby nagłówki i stopki identyfikujące zestawy informacji
były drukowane na każdej stronie raportu.
Projektowanie raportów jest podobne do projektowania formularzy. Na karcie
Tworzenie jest grupa ikon do konstruowania raportów. Ikona Raport służy do stwo‑
rzenia prostego raportu w formie tabelarycznej z danymi z jednej tabeli lub kwerendy,
wybranej poprzez ustawienie na niej kursora na liście obiektów. Aby stworzyć raport
prezentujący dane z wielu tabel, najwygodniej będzie użyć Kreatora raportów.
Przykładowy raport będzie zestawiał leki przepisane poszczególnym pacjentom
z podziałem na dni, w których te leki były przepisane. Podobnie jak w przypadku
kreatora formularzy, w pierwszym kroku projektowania raportu należy z odpo‑
wiednich tabel i kwerend wybrać pola, z których dane będą w nim prezentowane.
W omawianym przykładzie zostają wybrane pola z tabel: Pacjenci, Wizyty, Pozycje
recepty i Leki (rysunek 2.48).

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
84   2.  Podstawy pracy z relacyjną bazą danych MS Access

Rysunek 2.48. Wybieranie pól z wielu tabel/kwerend podczas tworzenia raportu


przy użyciu Kreatora raportów

W kolejnych dwóch krokach należy określić sposób grupowania danych w raporcie.


Najpierw należy wskazać, która tabela/kwerenda ma najwyższy poziom grupowania
(program podpowiada najkorzystniejszy układ zależności miedzy wybranymi polami,
wynikający z modelu powiązań relacyjnych miedzy tabelami) (rysunek 2.49).

Rysunek 2.49. Pierwszy krok grupowania danych w raporcie

Następny krok daje możliwość dodawania nowych poziomów grupowania lub


zmiany kolejności grupowania. W omawianym raporcie pole NazwaLeku zostanie
wykorzystane do stworzenia nowego poziomu grupowania. W tym celu należy na
polu NazwaLeku ustawić kursor i wskazać przycisk ze znakiem „>”, a następnie

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
2.7.  Raporty 85

przesunąć nowy poziom grupowania ponad grupowanie według pola Data przez
użycie przycisku ze znakiem „↑” (rysunek 2.50).

Rysunek 2.50. Drugi krok grupowania danych w raporcie

W kolejnym oknie można określić 4 poziomy sortowania rekordów szczegóło‑


wych według pól, których dane będą tworzyć poziom szczegółowy. W omawianym
raporcie dane szczegółowe tworzy tylko pole określające ilość przepisanego leku
w danym dniu, więc nie ma potrzeby definiowania kolejności sortowania.
Na następnym ekranie należy określić układ raportu jako Konspekt (rysunek 2.51)
i w ostatnim oknie nadać nazwę stworzonemu raportowi.

Rysunek 2.51. Definiowanie układu danych w raporcie

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
86   2.  Podstawy pracy z relacyjną bazą danych MS Access

Tak zdefiniowany raport po otwarciu w widoku projektu ukazuje, że każdy poziom


grupowania ma swoją sekcję typu Nagłówek, ale ukrywa odpowiadające im sekcje typu
Stopka. Sekcje typu Stopka dla poziomów grupowania są konieczne wówczas, gdy
chcemy dokonywać podsumowania danych szczegółowych tworzących element grupy.
W omawianym raporcie korzystne będzie podsumowanie ilości danego leku, jakie
zostały przepisane konkretnemu pacjentowi. W tym celu należy otworzyć okno grupo‑
wania poprzez wybranie ikony Grupuj i sortuj na wstążce. Okno to otworzy się na dole
widoku projektu raportu. Należy wybrać poziom NazwaLeku i rozwinąć opcję Więcej,
a w niej zamienić właściwość „bez sum” na „sumę częściową” w stopce grupy i określić
typ działania jako suma na polu Ilość (rysunek 2.52) i zamknąć okno grupowania.

Rysunek 2.52. Podsumowanie danych w grupie

W odkrytej sekcji Stopki dla grupy NazwaLeku będzie umieszczony formant Pole
tekstowe z działaniem „=Suma([Ilość])”. Obok niego należy dodać formant Etykieta,
zawierający tekst „Suma sztuk”, aby na raporcie wynik podsumowania miał nazwę.
Rysunek 2.53 przedstawia fragment stworzonego raportu, na którym widzimy
dane o dwóch lekach przepisanych pacjentowi z wyszczególnieniem dat wizyt, na któ‑
rych pacjent otrzymał recepty na dany lek z liczbą sztuk przepisaną na każdej recepcie.
Dane o każdym leku kończą się podsumowaniem wyszczególnionych ilości.

Rysunek 2.53. Widok raportu

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
2.8.  Przykład z rozwiązaniem i zadania do samodzielnego wykonania 87

Szerszy opis możliwości pakietu MS Access 2010 czytelnik może odnaleźć


w tzw. pomocy systemu (wykorzystując ikonę w prawym górnym rogu ekranu
lub przycisk funkcyjny F1) i w wielu publikacjach książkowych poświęconych wy‑
łącznie obsłudze tego pakietu10.

2.8. Przykład z rozwiązaniem i zadania do samodzielnego


wykonania
Przykład 2.1. Firma usługowa Relax
Oto wypunktowane fragmenty wywiadu przeprowadzonego z szefową małej
firmy usługowej Relax, oferującej masaż w domu klienta.
Przyjmujemy zamówienia telefonicznie i natychmiast zapisujemy dane klienta
(tj. imię i nazwisko, jego adres i telefon). Dojeżdżamy tylko na terenie Warszawy. Często
dzwonią znani nam już klienci, zadowoleni z poprzednich masaży. Podczas rozmowy
ustalam termin i godzinę wizyty oraz wyznaczam osobę, która pojawi się u klienta.
Współpracują z nami wysokiej klasy masażystki i masażyści, o których wiadomo,
jaki noszą pseudonim (unikalna wersja imienia, którą znają klienci) i jaką mają spe‑
cjalizację.
W trakcie wizyty masażystki lub masażysty klient ustala dokładnie, jaki zabieg
(czyli rodzaj masażu) będzie wykonywany. Na jednej wizycie wykonywany jest tylko
jeden zabieg. Każdy zabieg ma swoją nazwę i cenę odpowiadającą nakładowi pracy
łącznie z wartością użytych przy nim specyfików.

Zadania do tego przykładu


1) Na podstawie powyższych informacji proszę stworzyć odpowiedni diagram
związków encji dotyczący organizacji wizyt masażystów w domach klientów,
a więc wyznaczyć encje i ich atrybuty, a następnie określić odpowiednie relacje
między encjami.
2) Wykorzystując bazę Relax (do pobrania ze strony internetowej) proszę:
a) zbudować kwerendę podsumowującą, w której zostanie przedstawione ze‑
stawienie klientów (imię i nazwisko klienta w jednej kolumnie, posortowane
alfabetycznie) i nazwy zabiegów (alfabetycznie) jakim się poddał, a także
zostanie podana kwota, jaką klient wydał na każdy rodzaj masażu (suma
opłat za każdy rodzaj zabiegu);

10  Np. J. Cox, J. Lambert, T. Zajbt, Microsoft Access 2010: wersja polska, Wydawnictwo RM, Warszawa

2012.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
88   2.  Podstawy pracy z relacyjną bazą danych MS Access

b) na podstawie powyższej kwerendy zaprojektować kwerendę krzyżową, z której


będzie można odczytać, jaka była ogólna kwota, którą każdy klient wydał
dotychczas na wszystkie swoje masaże;
c) na podstawie kwerendy podsumowującej (z polecenia a) sporządzić raport
zawierający zestawienie klientów i nazw zabiegów (z grupowaniem według
klienta i zabiegu), podając także, ile każdy klient wydał na wszystkie swoje
masaże. Efekt porównaj z wynikiem polecenia b;
d) opracować formularz do wprowadzania do bazy danych nowego klienta
z podformularzem nowa wizyta;
e) zbudować kwerendę aktualizującą cenę promocyjnych zabiegów mających
w nazwie masaż pleców – zniżka o 10 %.

Odpowiedzi do powyższych zadań


1) Diagram związków encji (ERD)

1 N N 1
KLIENT WIZYTA MASAZYSTA
zamawia ma

1
jest wykonywany ZABIEG

W oparciu o powyższy model ERD można utworzyć model relacji jak poniżej:
KLIENT ZABIEG
nr_klienta PK Autonumerowanie nr_zabiegu PK Autonumerowanie

imie_klienta Tekst nazwa Tekst


nazwisko_klienta Tekst cena Liczba
Adres Tekst zalecenia_po_zabiegu Tekst
telefon Tekst

MASAZYSTA WIZYTA
nr_masazysty PK Autonumerowanie nr_wizyty PK Autonumerowanie
pseudonim Tekst nr_klienta FK1 Liczba
specjalizacja Tekst nr_masazysty FK2 Liczba
data Data/Godzina
komentarz_do_wizyty Tekst

Schemat relacji między tabelami w MS Access będzie zatem wyglądać następująco:

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
2.8.  Przykład z rozwiązaniem i zadania do samodzielnego wykonania 89

2a) Kwerenda podsumowująca powinna zawierać konkatenację imienia i nazwiska


klienta w jednym polu. Jej wygląd w widoku klienta jest widoczny poniżej.

2b) Kwerenda krzyżowa w wierszach zawiera imię i nazwisko klienta, w kolumnach –


nazwy zabiegów, a na przecięciach wierszy i kolumn – sumę wydatków klienta
na dany rodzaj masażu. Poniżej fragment tej kwerendy krzyżowej Podświetlona
kolumna zawiera sumę wszystkich wydatków klienta na masaże w tej firmie.

2c) W raporcie należy zwrócić uwagę na grupowanie według Klienta i według nazwy
(zabiegu). Raport może w efekcie końcowym wyglądać jak na rysunku (na ry‑
sunku widoczny jest początek wydruku).

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
90   2.  Podstawy pracy z relacyjną bazą danych MS Access

2d) Przy projektowaniu formularza z podformularzem należy pamiętać, że ma on


służyć do wprowadzania nowych danych, a nie tylko do przeglądania już zawar‑
tych w bazie. Taki formularz może wyglądać na przykład tak jak poniżej.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
2.8.  Przykład z rozwiązaniem i zadania do samodzielnego wykonania 91

2e) W kwerendzie aktualizującej trzeba uwzględnić dwa pola: nazwa, przy którym
umieścimy kryterium wyboru „masaż pleców...” (ciąg znaków po słowie „ple‑
ców” zastępujemy *), i cena, przy którym dokonamy przeszacowania wartości.
Kwerenda w widoku projektu powinna wyglądać jak na poniższym rysunku.

Zadania do samodzielnego wykonania


Przykładowe bazy do poniższych zadań (Fatałaszek, Office i Abstrakcja) są do
pobrania ze strony internetowej. A oto wypunktowane fragmenty wywiadu prze‑
prowadzonego z menedżerami tych przedsięwzięć w celu ustalenia podstawowych
oczekiwań wobec projektowanej bazy danych.

Zadanie 2.1. Wypożyczalnia strojów ślubnych i karnawałowych Fatałaszek


Z naszej wypożyczalni korzystają zarówno pary nowożeńców, jak i osoby wy‑
bierające się na prestiżowe bale karnawałowe. Na kompletny strój może składać się
nawet kilka elementów garderoby, np. suknia ślubna i welon, dla mężczyzny – żakiet,
spodnie sztuczkowe, kamizelka i fular. Za skompletowany strój jest wyznaczana kaucja
równa wycenie naszego pracownika, która jest zwracana klientowi w całości, gdy odda
strój w idealnym stanie. Każda sztuka garderoby powinna zostać zwrócona z metką
z pralni.
Każda sztuka garderoby poza automatycznie nadawanym numerem ma w bazie
dodatkowe oznaczenia: nazwę, kolor, typ (damska lub męska), rozmiar garderoby,
wzrost, na jaki pasuje, i opłatę przewidzianą za wypożyczenie na 1 dzień. Poza imie‑
niem i nazwiskiem klienta rejestrowany jest także jego rozmiar i wzrost (zaokrąglony
do 5 cm, bo na tyle są możliwe drobne poprawki) i nr dowodu osobistego.
Każde wypożyczenie następuje po skompletowaniu odpowiedniego stroju. Wprowa‑
dzana jest wówczas data wypożyczenia, a po zwrocie – data zwrotu. Dany strój może
być więc wielokrotnie wypożyczany.
Proszę stworzyć diagram związków encji dotyczący ewidencji wypożyczania
strojów, a zatem wyznaczyć encje i ich atrybuty, a następnie określić odpowiednie
relacje między encjami.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
92   2.  Podstawy pracy z relacyjną bazą danych MS Access

Wykorzystując bazę Fatałaszek (plik do pobrania ze strony internetowej), proszę:


a) zbudować kwerendę zawierającą zestawienie poszczególnych klientów (według
nazwiska i imienia w jednej kolumnie uszeregowane alfabetycznie), określenia
stroju, który wypożyczyli (określenie stroju i wysokość kaucji za strój w jed‑
nej kolumnie, rozdzielone myślnikiem, alfabetycznie), i wszystkich elementów
garderoby (według nazwy alfabetycznie), które wybrano do tego stroju, a także
zaprezentować wysokość opłaty dziennej za wypożyczenie tego elementu garde‑
roby i określić, ile dni strój był wypożyczony.
b) sporządzić raport na podstawie powyższej kwerendy, grupując w zestawieniu
według klienta i według określenia stroju, a także podając nazwę garderoby
oraz wysokość opłaty dziennej i sumy opłat za dzień wypożyczenia stroju. Nie
interesuje nas czas wypożyczenia i sumy ogólne (dla klienta i ogólna).
c) zaprojektować kwerendę aktualizującą podwyższającą opłatę za wypożyczenie
garderoby w kolorze szarym (wszystko jedno czy szary jasny, szary czy też szary
ciemny) o 3 zł za dzień.
d) zaprojektować formularz do wprowadzania danych o nowym elemencie garde‑
roby, gdy przybywa do magazynu.
e) zaprojektować formularz do kompletowania nowego stroju z podformularzem
z wybranymi do niego elementami garderoby.

Zadanie 2.2. Fabryka mebli biurowych Office


Przyjmujemy zamówienia na meble biurowe, w tym luksusowe wyposażenie gabi‑
netów. Klientem jest zwykle architekt wnętrz, który realizuje projekt w nowym obiek‑
cie. Poza imieniem i nazwiskiem architekta rejestrujemy również ­REGON jego firmy
i numer telefonu z faxem.
W trakcie wyposażania obiektu realizowane jest zamówienie klienta, które może
zawierać wiele rodzajów mebli w różnej liczbie. Zamówienie dotyczy więc konkret‑
nego, nazwanego obiektu. Odnotowuje się liczbę sztuk mebli danego rodzaju oraz datę
złożenia zamówienia (w każdej chwili można powiększyć zamówienie o dodatkowy
rodzaj mebli) i realizacji konkretnego rodzaju mebla (nie wszystkie rodzaje są gotowe
na ten sam termin).
Każdy oferowany mebel jest nazwany, szczegółowo opisany w katalogu i ma swój
indywidualny numer katalogowy. Każdy model mebla może występować w różnych
kolorach, przy czym kolor ma wpływ na cenę.
Zadowoleni klienci zawsze do nas wracają przy realizacji kolejnego zlecenia wy‑
posażenia obiektu biurowego.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
2.8.  Przykład z rozwiązaniem i zadania do samodzielnego wykonania 93

Proszę stworzyć diagram związków encji dotyczący rozliczania zamówień na


meble do konkretnego obiektu biurowego, a więc wyznaczyć encje i ich atrybuty,
a następnie określić odpowiednie relacje między encjami.
Wykorzystując bazę Meble (plik do pobrania ze strony internetowej), proszę:
a) zbudować kwerendę zawierającą zestawienie obiektów (uszeregowanych alfabe‑
tycznie), do których zamówiono meble, podając także nazwę mebla i jego cenę
(w jednej kolumnie rozdzielone myślnikiem, alfabetycznie), zakupioną liczbę
sztuk tego mebla i wartość tej pozycji zamówienia.
b) sporządzić raport na podstawie powyższej kwerendy, grupując w zestawieniu
według obiektu i podając pozostałe szczegóły, a dodatkowo wykazując łączną
wartość zakupionych mebli do poszczególnych obiektów.
c) proszę zbudować kwerendę aktualizującą, w wyniku której zostanie podwyższona
cena wszystkich biurek o dodatkowe 10 zł na pomoc dla domu dziecka, którego
sponsorem jest fabryka mebli.
d) opracować formularz do wprowadzania do bazy danych o nowym meblu (for‑
mularz Nowy mebel biurowy).
e) opracować formularz z podformularzem do kompletowania mebli w zamówieniu.

Zadanie 2.3. Muzeum sztuki nowoczesnej Abstrakcja


W naszym muzeum poza ekspozycją stałą są także organizowane wystawy tema‑
tyczne. Eksponaty na wystawę tematyczną pochodzą z zakupów eksponatów dokony‑
wanych specjalnie do konkretnej wystawy. (Dzięki zakupom do wystaw tematycznych
powiększają się zasoby dzieł sztuki naszego muzeum).
Zakupy eksponatów są dokonywane ze środków własnych muzeum i dotacji spon‑
sora przez komisarza wystawy – osobę z grona pracowników merytorycznych muzeum.
Właściwie o komisarzu musimy wiedzieć tylko tyle, jak się nazywa (imię i nazwisko),
jaka jest jego kategoria (wynikająca z zajmowanego stanowiska w muzeum) i jakie ma
osiągnięcia w dziedzinie organizacji wystaw.
Każdy nowy eksponat jest wprowadzany do bazy. Uzyskuje wówczas własny numer.
Ponadto są gromadzone także następujące dane: tytuł dzieła, rodzaj (np. obraz, rzeźba),
autor, opis, data powstania dzieła, wartość dzieła w dniu zakupu, kwota, na którą
eksponat został ubezpieczony na wypadek kradzieży lub zniszczenia (która może być
wyższa od wartości dzieła w dniu zakupu).
Wystawa tematyczna ma swój tytuł i komisarza. Jest zwykle sponsorowana przez
jednego mecenasa sztuki, który może sponsorować wiele wystaw. Jego przywilejem jest
umieszczenie logo sponsora (w bazie umieszczony jest symbol dwuliterowy logo) na
wszystkich materiałach reklamowych wystawy.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
94   2.  Podstawy pracy z relacyjną bazą danych MS Access

Proszę stworzyć diagram związków encji dotyczący organizacji wystawy tema‑


tycznej, a więc wyznaczyć encje i ich atrybuty, a następnie określić odpowiednie
relacje między encjami.
Wykorzystując bazę Abstrakcja (plik do pobrania ze strony internetowej), proszę:
a) sporządzić odpowiednią kwerendę, a następnie raport prezentujący zestawienie
sponsorów i sponsorowane przez nich wystawy tematyczne z podaniem nazwy
wystawy i nazwiska komisarza wystawy (w jednej kolumnie rozdzielone myślni‑
kiem uszeregowane według alfabetu) oraz łącznej kwoty wartości (wynikającej
z ubezpieczenia) eksponatów zgromadzonych na każdej wystawie.
b) zbudować kwerendę, a następnie na jej podstawie raport będący zestawieniem
eksponatów (uszeregowanych alfabetycznie), które wybrano do poszczególnych
wystaw, przy założeniu, że komisarzem wystawy była osoba z co najmniej 2. ka‑
tegorią (im wyższa kategoria, tym lepsza), prezentując w raporcie tytuł wystawy
i nazwisko komisarza wystawy (z grupowaniem), tytuł dzieła i jego autora (w jed‑
nej kolumnie rozdzielone ukośnikiem).
c) zbudować kwerendę aktualizującą podwyższającą wartość ubezpieczenia dzieł,
których rodzaj określono jako instalacja lub rzeźba o 10 %, a następnie sporządzić
raport po aktualizacji prezentujący zestawienie posiadanych eksponatów według
rodzaju z podaniem nazwy i autora dzieła, a także aktualne kwoty ubezpiecze‑
nia wszystkich dzieł sztuki. Dodatkowo proszę umieścić w tym zestawieniu
informację, jaki odsetek ogółu wartości (według kwota_ubezpieczenia) wszyst‑
kich zgromadzonych dzieł stanowiły poszczególne rodzaje (tj. łącznie obrazy,
rzeźby itd.).
d) zaprojektować formularz do kompletowania eksponatów do nowej wystawy te‑
matycznej (formularz Nowa wystawa tematyczna z podformularzem Eksponaty
do nowej wystawy).
e) zaprojektować formularz do przeglądania dotychczas zorganizowanych wystaw
i zakupionych do nich eksponatów (formularz Wystawa tematyczna z podfor‑
mularzem Eksponaty wykorzystane na wystawie).

Odpowiedzi do powyższych zadań


w pliku Odpowiedzi do zadań 2_1 do 2_3

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
3.1.  Przypomnienie i rozszerzenie podstawowych informacji z zakresu Excela 95

3. Podstawy Excela do studiowania ekonomii

Zapewne wszystkie osoby rozpoczynające studia w wyższej szkole ekonomicz‑


nej miały już kiedyś do czynienia z arkuszem kalkulacyjnym Excel. W niniejszym
rozdziale czytelnik odnajdzie nie tylko podsumowanie podstawowych informacji
niezbędnych do sprawnego posługiwania się Excelem na poziomie podstawowym, lecz
także wprowadzenie do zastosowań typowo ekonomicznych. Wybrane i zaprezento‑
wane tu zagadnienia stanowią jedynie zaproszenie do dalszego zgłębiania możliwości
tego niezwykle przydatnego narzędzia do wszelkich analiz ekonomicznych, jakim
jest Excel. Warto pokusić się też o wykonanie zamieszczonych na końcu zadań, które
powinny pomóc w nabraniu biegłości w korzystaniu z tej aplikacji.

3.1. Przypomnienie i rozszerzenie podstawowych


informacji z zakresu Excela

Typy wartości, kody błędów


W komórkach arkuszy Excela mogą znajdować się stałe lub formuły. Zarówno
wśród stałych, jak i formuł występują następujące typy wartości:
• numeryczne (inaczej: liczbowe),
• tekstowe (inaczej: alfanumeryczne),
• logiczne,
• kody błędów.
Excel interpretuje wprowadzone dane jako liczbę, jeśli jest to tylko możliwe.
Wprowadzając liczby należy pilnować użycia właściwego separatora dziesiętnego,
zdefiniowanego na poziomie systemu operacyjnego, gdyż w innym przypadku war‑
tość zostanie potraktowana jako tekst. Przy domyślnych ustawieniach formatowania
liczby powinny być wyrównywane do prawej strony komórki, teksty do lewej.
Wówczas, gdy użytkownik chce wymusić, żeby wprowadzona wartość była stałą
tekstową (a jest to przykładowo identyfikator składający się z ciągu cyfr rozpoczy‑
nających się od zer i w konsekwencji Excel interpretowałby wartość jako liczbę, po‑
mijając nieznaczące zera z przodu), najwygodniej wprowadzaną wartość poprzedzić
apostrofem. Jest on traktowany jako znak sterujący mówiący o typie wartości i nie
jest widoczny w komórce.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
96   3.  Podstawy Excela do studiowania ekonomii

Wartości logiczne to: ­PRAWDA i ­FAŁSZ. W praktyce są rzadko wykorzystywane


jako stałe wprowadzone przez użytkownika do komórki.
W Excelu występują następujące kody błędów:
• #ADR! –  błędne odwołanie do komórki,
• #N/D! –  brak wartości, wartość niedostępna dla formuły,
• #­­NAZWA? –  problem z rozpoznaniem tekstu w formule,
• #­­LICZBA! –  problem z liczbą w formule,
• #­­DZIEL/0! –  próba dzielenia przez 0 w formule,
• #ARG! –  błędny typ argumentu w formule,
• #ZERO! –  błędne przecięcie dwóch obszarów.

Rysunek 3.1. Przykłady różnych typów wartości i lista kodów błędów w Excelu

Dla dociekliwych
Kod błędu #N/D! jest wykorzystywany jako stała (ewentualnie wynik funkcji
BRAK), gdy chce się podkreślić tymczasowy brak wartości, odróżniając go od pustej
komórki. Formuły odwołujące się do takiej komórki dadzą wynik również #N/D!.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
3.1.  Przypomnienie i rozszerzenie podstawowych informacji z zakresu Excela 97

Adresowanie komórek i obszarów: względne, bezwzględne


i mieszane
W formułach arkusza mogą występować trzy typy adresów: względne, bez‑
względne i mieszane. Poprzedzenie w formule elementu adresu (symbolu wiersza
lub kolumny) znakiem $ powoduje zablokowanie tego elementu w przypadku ko‑
piowania formuły. W innym przypadku adresy w formułach przesuwają się wraz
z kierunkiem kopiowania. Wygodną metodą zamieniania typów adresów pomiędzy
adresami względnymi, bezwzględnymi i mieszanymi jest użycie klawisza F4 na danym
adresie w trybie edycji formuły.
Przykłady adresów pojedynczych komórek:
• A1 –  adres komórki względny,
• $A$1 –  adres komórki bezwzględny – z zablokowaną kolumną i wierszem,
• $A1 –  adres komórki mieszany z zablokowaną kolumną,
• A$1 –  adres komórki mieszany z zablokowanym wierszem.
Adresowanie obszarów może dotyczyć zarówno obszaru spójnego (przylegają‑
cego), jak i niespójnego. Zaznaczając obszar spójny za pomocą klawiatury, można
użyć klawisz Shift, natomiast niespójny – klawisz Ctrl. W przypadku adresowania
obszaru wykorzystuje się przy standardowych „polskich” ustawieniach następujące
separatory:
• dwukropek – do określenia zakresu obszaru spójnego w kształcie prostokąta,
• średnik – do określenia obszaru niespójnego, np. składającego się z dwóch lub
większej liczby nieprzylegających komórek,
• spacja – do określenia części wspólnej (przecięcia) dwóch podanych zakresów.
Przykłady adresów obszarów:
• A1:A5 –  adres obszaru względny,
• $A$1:$A$5 –  adres obszaru bezwzględny,
• A$1:A$5 –  adres obszaru mieszany,
• $A$1:A5 –  adres obszaru zawierający część bezwzględną i względną,
• A:C –  adres pełnych kolumn względny,
• 1:4 –  adres pełnych wierszy względny,
• A:A –  adres jednej pełnej kolumny względny (Uwaga: nie „A”!),
• 1:1 –  adres jednego pełnego wiersza względny (Uwaga: nie „1”!),
• $A:$A –  adres jednej pełnej kolumny bezwzględny,
• $A:C –  adres pełnych kolumn zawierający część bezwzględną i względną,
• A1; A5 –  adres obszaru niespójnego składającego się z dwóch komórek,
• A1:A5; C1:C5 – adres obszaru niespójnego składającego się z dwóch obszarów
spójnych,

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
98   3.  Podstawy Excela do studiowania ekonomii

• B1:B5 A2:D2 – część wspólna (przecięcie) obszarów, tutaj równoważna ko‑


mórce B2.

Dla dociekliwych
Dobra praktyka pracy z Excelem podpowiada, żeby, jeśli to możliwe, przede
wszystkim stosować adresy względne, w dalszej kolejności bezwzględne, mieszane
zaś w ostateczności.

Formuły, łącza, przecięcia obszarów


Formuły mogą odwoływać się do zawartości komórek bieżącego arkusza, innych
arkuszy bieżącego skoroszytu lub innych skoroszytów (tzw. łącza międzyskoroszy‑
towe) oraz ich kombinacji. Przykłady formuł z odwołaniami do innych komórek
wykorzystujących adresowanie względne i bezwzględne:
• =A1
formuła z odwołaniem do komórki bieżącego arkusza,
• =Arkusz2!A1
formuła z odwołaniem do komórki innego arkusza w bieżącym skoroszycie,
• =’Arkusz drugi’!A1
formuła z odwołaniem do komórki innego arkusza w bieżącym skoroszycie
(w przypadku nazwy arkusza zawierającej spację niezbędne są apostrofy),
• =[Zeszyt2]Arkusz1!A1
formuła z odwołaniem względnym do komórki w innym skoroszycie Zeszyt2
(łącze międzyskoroszytowe) w przypadku obu skoroszytów otwartych w pamięci
operacyjnej,
• =’C:\Nazwa_folderu\[Zeszyt2.xls]Arkusz1’!$A$1
formuła z odwołaniem bezwzględnym do komórki w innym skoroszycie Zeszyt2
(łącze międzyskoroszytowe) z podaniem pełnej ścieżki dostępu do pliku (gdy sko‑
roszyt z łączem nie jest w danej chwili dostępny w pamięci operacyjnej),
• =A1+B1
formuła – sumowanie wartości numerycznych,
• =A1&B1
formuła – łączenie wartości alfanumerycznych,
• =A1>B1
formuła zwracająca wartość logiczną (­PRAWDA lub ­FAŁSZ),
• =SUMA(A1:B4)
formuła z użyciem funkcji SUMA,

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
3.1.  Przypomnienie i rozszerzenie podstawowych informacji z zakresu Excela 99

• =SUMA(Arkusz1:Arkusz3!A2)
formuła zawierająca adres wielopoziomowy (tzw. 3D) z użyciem funkcji SUMA,
sumująca komórki A2 ze wszystkich arkuszy począwszy od Arkusza1, skończyw‑
szy na Arkuszu3.

Rysunek 3.2. Przykład zastosowania adresowania względnego i bezwzględnego

Przykład na rysunku zawiera informacje o sprzedaży dla wybranych klientów.


Informacją źródłową jest sprzedaż w złotych w kolumnie C. Na jej podstawie i kursu
z komórki C15 obliczono sprzedaż wyrażoną w EUR. Formułę wprowadzono pier‑
wotnie do komórki D4 i następnie skopiowano ją do obszaru D5:D12. Podczas ko‑
piowania formuły adres względny C4 jest przeliczany (zmienia się symbol wiersza
i w nowych formułach powstają adresy: C5, C6, C7 itd.), adres bezwzględny $C$15
pozostaje niezmienny.
Jest to typowe zastosowanie kombinacji adresowania względnego (odnoszącego
się do komórek z bieżącego wiersza) i bezwzględnego (odnoszącego się do komórek
spoza bieżącej tabeli). W takim przypadku, choć byłoby to obliczeniowo poprawne,
nie zaleca się wykorzystywać adresowania mieszanego.
Często stosuje się formuły zawierające odwołanie do adresu pełnej kolumny.
Adres pełnej kolumny podaje się zawsze w formie zakresu, nawet jeśli dotyczy poje‑
dynczej kolumny, np. „C:C”. Podobnie adres pierwszego wiersza to „1:1”. W wielu przy‑
padkach odwołanie do pełnej kolumny to tzw. przecięcie domniemane. Występuje

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
100   3.  Podstawy Excela do studiowania ekonomii

wtedy, gdy Excel domniema – na podstawie przecięcia z bieżącym wierszem – która


komórka z podanej kolumny powinna zostać wzięta do obliczeń. W przykładzie
określenie komórki zawierającej sprzedaż w złotych dla konkretnego klienta nastę‑
puje na podstawie przecięcia domniemanego – w poniższym przykładzie kolumny C
z wierszem bieżącym, czyli tym, w którym znajduje się komórka z formułą.

Rysunek 3.3. Przykład zastosowania adresowania dla pełnej kolumny z wykorzystaniem


przecięcia domniemanego z bieżącym wierszem

Dla dociekliwych
Poza formułami tzw. prostymi istnieją także formuły tablicowe, w których dzia‑
łania nie są wykonywane na pojedynczych komórkach, a na tablicach (macierzach).
Często są stosowane np. w obliczeniach statystycznych.

Nazwy zdefiniowane dla obszarów i komórek


Istnieje możliwość nadawania nazw obszarom poprzez wykorzystanie wstążki
(karta Formuły/Nazwy zdefiniowane/Menedżer nazw).

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
3.1.  Przypomnienie i rozszerzenie podstawowych informacji z zakresu Excela 101

Rysunek 3.4. Fragment wstążki Excela z zaznaczonym Menedżerem nazw na karcie


Formuły

Dzięki temu można odwoływać się do nazwanego obszaru poprzez nazwę zamiast
poprzez jego adres. Zaleca się, aby nadawane nazwy zdefiniowane były czytelne dla
użytkownika. Nie dopuszcza się stosowania spacji w nazwach, które można zastąpić
podkreślnikiem. Domyślnie nazwy odwołują się do obszarów adresowanych bez‑
względnie, domyślnie są dostępne na poziomie całego skoroszytu (wtedy można je
wykorzystywać we wszystkich arkuszach skoroszytu). W szczególności można również
stosować nazwy komórek, traktując pojedynczą komórkę jako obszar.
Podczas wprowadzania do arkusza formuł nie ma konieczności pamiętania nada‑
nych wcześniej nazw – można je w czasie edycji formuły wywołać poprzez wstążkę
(karta Formuły/Nazwy zdefiniowane/Użyj w formule).
W przykładzie na rysunku użyto zaadresowanych bezwzględnie nazw dla poje‑
dynczej komórki z kursem ($C$15) i obszaru ($C$4:$C$12). Formuła licząca sprzedaż
w EUR wykorzystuje przy odwołaniu do nazwy obszaru przecięcie domniemane.

Rysunek 3.5. Zastosowanie nazw zdefiniowanych dla obszaru i komórki

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
102   3.  Podstawy Excela do studiowania ekonomii

Rysunek 3.6. Okno Menedżera nazw ze zdefiniowaną nazwą komórki i obszaru

Dla dociekliwych
Nadawanie nazw jest możliwe nie tylko dla obszarów i komórek, lecz także
nazw zdefiniowanych dla stałych i wyrażeń zawierających formuły obliczeniowe.
Można ograniczać zakres dostępności nazwy zdefiniowanej wyłącznie do jednego
wskazanego arkusza.

Zasady przeliczania formuł, adresowanie cykliczne


Domyślnie w Excelu ustawione jest przeliczanie automatyczne, tj. formuły są
powtórnie przeliczane po dokonaniu zmiany w dowolnej komórce arkusza. Przeli‑
czenie jest wykonywane po każdej zmianie domyślnie jeden raz, bez iteracji.
Przeliczanie ręczne (karta Plik/Opcje/Formuły) jest zalecane przy bardzo zło‑
żonych skoroszytach, w których uciążliwe jest oczekiwanie na wynik przeliczenia po
każdej zmianie wprowadzonej w skoroszycie. W przypadku ustawienia opcji przeli‑
czania ręcznego dokonanie przeliczenia można wymusić za pomocą klawisza F9.
Jeśli w komórce występuje formuła, to w każdej chwili można zamienić formułę
na wartość, która w danej chwili jest jej wynikiem. Najprościej zrobić to również
za pomocą klawisza F9, ale w tym przypadku użytego w trybie edycji komórki
(np. w pasku formuły lub przez wciśnięcie kolejno klawiszy F2 i F9).

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
3.1.  Przypomnienie i rozszerzenie podstawowych informacji z zakresu Excela 103

Rysunek 3.7. Okno opcji programu Excel z domyślnym ustawieniem przeliczania


automatycznego

W przypadku typowych zastosowań zazwyczaj błędem jest powstanie odwołania


cyklicznego, tj. takiego, gdy formuła odnosi się bezpośrednio lub pośrednio do swo‑
jego wyniku. Odwołanie cykliczne przykładowo powstanie wtedy, gdy w komórce A5
zostanie wpisana formuła „=SUMA (A1:A5)”, gdyż obszar sumowania obejmuje
komórkę z formułą sumującą. Przed powstaniem adresowania cyklicznego system
ostrzega stosownym komunikatem (rysunek 3.8). Czasem użycie adresowania cy‑
klicznego jest zamierzone, lecz sytuacje takie są dość rzadkie.

Rysunek 3.8. Przykład odwołania cyklicznego wraz z oknem ostrzeżenia

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
104   3.  Podstawy Excela do studiowania ekonomii

Dla dociekliwych
Należy wykazać dużą czujność przy jednocześnie otwartych skoroszytach z try‑
bem przeliczania automatycznego i ręcznego, ponieważ parametr ten w praktyce
dotyczy całej instancji Excela.

Kopiowanie, wklejanie specjalne, malarz formatów


Typowa operacja kopiowania „kopiuj – wklej” (oczywiście warto pamiętać o skró‑
tach klawiszowych Crtl‑C, Crtl‑V) powoduje skopiowanie między innymi:
• zawartości komórek,
• formatu komórek.
Szczególną uwagę należy zwrócić przy kopiowaniu komórek zawierających
formuły – w takim przypadku kopiowana jest formuła (z uwzględnieniem typu
adresowania), a nie jej wynik.
Operacja „kopiuj – wklej specjalnie” daje możliwość doprecyzowania sposobu
kopiowania. Można wtedy ­m.­in. kopiować wyłącznie zawartość (poprzez „wklej
formuły”), ewentualnie wyłącznie format (poprzez „wklej formaty”). W przypadku
kopiowania formuł istnieje ponadto możliwość ich zamiany na aktualny wynik po‑
przez „wklej wartości”. Tak przykładowo należałoby postąpić w opisanym powyżej
przykładzie, aby skopiować dane ze sprzedażą wyrażoną w EUR, np. do innego arku‑
sza. Począwszy od Excela w wersji 2010 część funkcjonalności okna „wklej specjalnie”
została przeniesiona bezpośrednio do menu podręcznego.

Rysunek 3.9. Okno wklejania specjalnego z ustawieniem wklejania kopiowanych formuł


jako wartości stałe

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
3.1.  Przypomnienie i rozszerzenie podstawowych informacji z zakresu Excela 105

Warto pamiętać, że uproszczoną metodą kopiowania wyłącznie formatu jest


zastosowanie ikony malarza formatów dostępnej na karcie narzędzi głównych.

Dla dociekliwych
Jednokrotne kliknięcie ikony malarza formatów służy do pojedynczego skopiowa‑
nia formatu, dwukrotne kliknięcie – do wielokrotnego kopiowania, aż do odwołania
wyrażonego poprzez wciśnięcie klawisza Esc.

Formatowanie, formatowanie automatyczne


Formatowanie komórek ma na celu określenie sposobu prezentacji danych
na ekranie i wydruku. W przypadku ustawiania dla komórki z daną numeryczną
precyzji wyświetlanych cyfr dziesiętnych (np. z menu podręcznego pod prawym
klawiszem myszy lub za pomocą ikony Zwiększ dziesiętne, Zmniejsz dziesiętne)
zostaje zmieniona jedynie dokładność prezentacji liczby w samym arkuszu. Nie
wpływa na dokładność przechowywania danych i w konsekwencji na dokładność
wykonywania dalszych obliczeń. W przypadku stałej jej faktyczna wartość jest wi‑
doczna w pasku formuły.

Rysunek 3.10. Formaty liczbowe komórek (został tutaj zastosowany format typowy


dla danych finansowych: separatory co trzy cyfry i dwa miejsca
dziesiętne)

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
106   3.  Podstawy Excela do studiowania ekonomii

W zastosowaniach biznesowych chętnie stosowany jest format procentowy.


W takim przypadku w celu prezentacji w komórce wartość mnożona jest przez 100
i dodawany jest znak „%”. Widoczna przykładowo wartość 30 % oznacza faktycznie
w komórce liczbę 0,3. Gdy w komórce wprowadzona jest liczba 30 i następnie usta‑
wiony zostanie format procentowy, w komórce widoczna będzie wartość 3000 %. Jeśli
format procentowy został ustawiony przed wprowadzeniem do komórki wartości,
wprowadzana wartość od razu traktowana jest jako wyrażona w procentach.
Formaty najczęściej są definiowane poprzez zaznaczenie obszaru, dla którego mają
zostać określone i następnie poprzez wybranie pożądanego formatu. Zaznaczony do
tego celu obszar może być zarówno obszarem spójnym, jak i niespójnym (nieprzyle‑
gającym – składającym się z kilku części lub mającym kształt inny niż prostokąt).
Program oferuje również automatyczne formatowanie jako tabelę (karta Na‑
rzędzia główne/Style/Formatuj jako tabelę), czyli predefiniowane gotowe zestawy
formatów przeznaczone dla typowych tabel. Poniżej przedstawiono arkusz sforma‑
towany za pomocą jednego z predefiniowanych formatów tabeli.

Rysunek 3.11. Dane sformatowane jako tabela

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
3.1.  Przypomnienie i rozszerzenie podstawowych informacji z zakresu Excela 107

Rysunek 3.12. Predefiniowane wzory formatów tabeli

Dla dociekliwych
Traktowanie obszaru danych jako tabela w powyższym sensie oznacza dużo
więcej niż tylko zastosowanie predefiniowanych formatów tabeli. Działania na takich
tabelach upodobniają się do klasycznych operacji na tabelach bazodanowych (o czym
w dalszej części rozdziału).

Formatowanie warunkowe
Istnieje możliwość uzależnienia sposobu wyświetlania komórek w danym ob‑
szarze od wartości (w tym wyniku formuły), które znajdują się aktualnie w tych
komórkach. Służy do tego formatowanie warunkowe dostępne we wstążce (karta
Narzędzia główne/Style/Formatowanie warunkowe). Dla każdego formatu istnieje
możliwość określenia:
• wypełnienia (w tym koloru),
• czcionki,
• sposobu obramowania,
• formatu liczbowego.
Najczęściej wykorzystywana w praktyce jest opcja formatuj tylko komórki za‑
wierające... w oknie nowa reguła...
W poniższym przykładzie (rysunek 3.13) w formacie warunkowym dla obszaru
G2:G40 jako pierwsza reguła: kwoty zadłużenia klientów przekraczające 100 000 zł

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
108   3.  Podstawy Excela do studiowania ekonomii

zostały wyróżnione kolorem czerwonym. W tym przypadku jako odniesienie zastoso‑


wano stałą, lecz można także uzależnić format komórki od wartości innych komórek.
W przykładzie poprzez drugi warunek kwoty zadłużenia klientów przekraczające
jedną czwartą wartości ich rocznej sprzedaży dodatkowo wyróżnione zostały nie‑
bieską czcionką. Niektóre komórki mają aktywowane obie reguły – czerwony kolor
tła i niebieską czcionkę.
Należy zwracać uwagę, aby w formatach warunkowych prawidłowo wykorzy‑
stywać typy adresowania – względne i bezwzględne. Przy wprowadzaniu takiego
formatu dla obszaru wyrażenie zawierające adres innej komórki odnosi się zawsze do
komórki bieżącej (komórki, od której rozpoczęto zaznaczanie obszaru). W przypadku
zastosowania adresu względnego adres ulegnie odpowiedniemu przesunięciu dla
pozostałych komórek obszaru. Stąd w przykładzie w drugim warunku następuje od‑
niesienie do komórki E2 zaadresowanej względnie (względem pierwszej komórki G2
obszaru, dla którego zdefiniowano format warunkowy G2:G40).
W formatach warunkowych można także wykorzystywać funkcje Excela. Można
ponadto uzależniać format od innych elementów, jak np. od średniej dla zaznaczonego
obszaru, od zduplikowania lub unikatowości wartości.

Rysunek 3.13. Format warunkowy z dwiema regułami – jedna odnosi się do stałej, druga


do innej komórki

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
3.1.  Przypomnienie i rozszerzenie podstawowych informacji z zakresu Excela 109

Specyficznym typem formatu warunkowego są formaty uzależnione od rozkładu


danych w zaznaczonym obszarze. Należą do nich:
• paski danych,
• skale kolorów,
• zestawy ikon.
Excel bada w tym przypadku rozkład danych dla zaznaczonego obszaru i na
przykład wypełnia komórkę kolorowym paskiem proporcjonalnym do wartości
w komórce. W przykładzie zastosowano paski danych, których długość zależy od
wartości w poszczególnych komórkach.

Rysunek 3.14. Format warunkowy uzależniony od rozkładu danych – typu paski danych

Dla dociekliwych
W bardziej złożonych przypadkach można uzależnić format od wyniku formuły
logicznej. Do tego celu w oknie nowej reguły formatowania należy wykorzystać opcję
Użyj formuły do określenia komórek, które należy sformatować i wprowadzić for‑
mułę dającą w wyniku wartość ­PRAWDA lub ­FAŁSZ. Wynikowa wartość ­PRAWDA
powoduje aktywację formatu warunkowego.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
110   3.  Podstawy Excela do studiowania ekonomii

Wykresy
Do podstawowych typów należą wykresy:
• liniowe,
• kolumnowe,
• kołowe.
Ich zmodyfikowanymi wersjami są odpowiednio typy wykresów: warstwowe,
słupkowe i pierścieniowe.
Podstawowe znaczenie ma właściwe zaznaczenie danych do wykresu. Po zazna‑
czeniu odpowiedniego obszaru i wybraniu ikony wskazanego typu wykresu (karta
Wstawianie/Wykresy) wykres w domyślnym układzie utworzy się automatycznie.
Zaznaczając dane do wykresu liniowego lub kolumnowego, poza właściwymi danymi
numerycznymi, zazwyczaj należy wskazać też tzw. etykiety danych, czyli nazwy dla
poszczególnych serii danych (na rysunku 3.15 to np. jabłka, pomarańcze itd.) oraz
podpisy do skali osi poziomej (na rysunku 3.15 to np. kwartał I, kwartał II itd.).
Po zbudowaniu wykresu w domyślnym układzie można przystąpić do jego modyfikacji
z wykorzystaniem dodatkowych kontekstowych kart narzędzi wykresów na wstążce
lub menu podręcznego. Przy zmienianiu poszczególnych elementów wykresu istotne
jest uprzednie zaznaczenie tego elementu. Szczegółowe możliwości modyfikacji są
uzależnione od typu wykresu.

Rysunek 3.15. Wykres liniowy ukazujący sprzedaż w funkcji czasu

Najistotniejsze możliwe zmiany w wykresach to:


• zmiana typu wykresu i jego szczegółowego podtypu (karta Narzędzia wykresów/
Projektowanie/Typ),

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
3.1.  Przypomnienie i rozszerzenie podstawowych informacji z zakresu Excela 111

• wybór lokalizacji wykresu pomiędzy obiektem (oknem) w normalnym arkuszu


a odrębnym arkuszem wykresu (karta Narzędzia wykresów/Projektowanie/Lo‑
kalizacja/Przenieś wykres),
• wybór układu wykresu – decyzja o wyświetlaniu legendy, tytułu wykresu, war‑
tości liczbowych lub procentowych na wykresie itp. (karta Narzędzia wykresów/
Projektowanie/Układy wykresu),
• zmiana znaczenia wierszy i kolumn (karta Narzędzia wykresów/Projektowanie/
Dane/Przełącz wiersz­‑kolumnę); uwaga: nie każdy układ, szczególnie w przypadku
wykresu liniowego, ma sens,
• szczegółowe ustawienia osi, etykiet, tła itp. (karta Narzędzia wykresów/Układ),
• dodawanie elementów graficznej analizy danych, jak linii trendu, linii rzutu,
słupków błędów itp. (karta Narzędzia wykresów/Układ/Analiza),
• szczegółowe ustawienia formatowania, jak rozmiar, rozmieszczenie, style kształtów
(karta Narzędzia wykresów/Formatowanie).
Przykład na rysunku 3.16 prezentuje na wykresie liniowym typową zależność
funkcyjną – sprzedaż towarów w funkcji czasu.
Na wykresie kołowym zaprezentowano z kolei udziały sprzedaży poszczególnych
towarów. W tym celu dodano wcześniej w kolumnie N odpowiednie formuły sumujące
sprzedaż roczną. W celu wyświetlenia legendy zaznaczono obszar wykresu w sposób
niespójny (z użyciem klawisza Ctrl) zawierający komórki z nazwami poszczególnych
owoców (I6:I8) i danymi liczbowymi o rocznej sprzedaży (N6:N8).

Rysunek 3.16. Wykres kołowy pokazujący udział sprzedaży poszczególnych towarów

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
112   3.  Podstawy Excela do studiowania ekonomii

Dla dociekliwych
Rzadziej wykorzystywanymi, specjalistycznymi typami wykresów są wykresy:
punktowe, giełdowe, bąbelkowe i radarowe. Są one tworzone według podobnych
zasad, co wcześniej omówione.

3.2. Wybrane funkcje

Funkcje, kategorie funkcji, zagnieżdżanie funkcji


Funkcje można określić jako predefiniowane formuły. Zazwyczaj posiadają pa‑
rametry wejściowe, zawsze zwracają wartość (tzn. podają wynik obliczonej funkcji).
Funkcje można wykorzystywać w formułach za pomocą tzw. biblioteki funkcji,
stosując narzędzie wstaw funkcję (inaczej to tzw. kreator funkcji) lub wprowadzając
nazwę funkcji wraz z jej parametrami (argumentami) ręcznie. Funkcje w bibliotece
i w kreatorze funkcji są usystematyzowane według kategorii (choć nazwy kategorii
nieznacznie się różnią w obu tych miejscach). Wyróżniono w Excelu następujące
kategorie funkcji:
• finansowe – różnego typu obliczenia związane z finansami, w szczególności
dotyczące wartości pieniądza w czasie, różnorodnych papierów wartościowych,
kredytów itp. (por. podrozdział o funkcjach finansowych),
• logiczne – operacje na wartościach logicznych, ale przede wszystkim podstawowa
funkcja warunkowa ­JEŻELI (por. podrozdział o tej funkcji),
• tekstowe – operacje związane z działaniami na tekstach rozumianych jako ciągi
znakowe,
• daty i godziny – działania związane z data i godziną, (por. podrozdział o dacie
i czasie),
• wyszukiwania i odwołań/adresu – działania na adresach komórek, a także wyszukiwa‑
nie zawartości komórek (por. podrozdział o funkcji ­WYSZUKAJ.­PIONOWO),
• matematyczne i trygonometryczne – różne działania matematyczne,
• statystyczne – różne działania statystyczne, jak statystyki, rozkłady testy itp.,
• bazy danych – zaawansowane funkcje agregacji warunkowej dla baz danych,
często zastępowane w praktyce przez prostsze w użyciu funkcje innych kategorii
(por. podrozdział o funkcjach SUMA.­JEŻELI i SUMA.­WARUNKÓW),
• informacyjne – funkcje służące przede wszystkim do sprawdzania typu zawartości
wskazanych komórek,
• inżynierskie – funkcje zaawansowanych obliczeń numerycznych, głównie zwią‑
zanych z różnymi systemami liczbowymi, liczbami zespolonymi itp.,

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
3.2.  Wybrane funkcje 113

• modułowe – funkcje wykorzystywane do współpracy z innymi narzędziami


Microsoft,
• zgodności – stare wersje funkcji statystycznych, zastąpione przez ich nowe od‑
powiedniki.

Rysunek 3.17. Okno tzw. kreatora funkcji z wyborem funkcji wg kategorii

W przypadku wprowadzania funkcji ręcznie parametry podaje się po nazwie


funkcji w nawiasie okrągłym, rozdzielając je separatorem zdefiniowanym na poziomie
systemu operacyjnego (w polskich ustawieniach regionalnych stosuje się średnik).
W przypadku wykorzystywania biblioteki funkcji (na karcie Formuły) lub narzę‑
dzia wstaw funkcję Excel sam tworzy właściwą składnię na podstawie wypełnienia
okna argumentów funkcji. Parametry obowiązkowe mają w tym oknie wytłuszczoną
czcionkę w nazwie, opcjonalne czcionkę zwykłą.
Jako parametry funkcji (nazywanej tu funkcją zewnętrzną) mogą wystąpić ko‑
lejne funkcje (nazywane tutaj funkcjami zagnieżdżonymi lub wewnętrznymi). Jeśli
buduje się takie złożone formuły z wykorzystaniem biblioteki lub kreatora funkcji,
można w celu wstawienia funkcji wewnętrznej skorzystać z listy funkcji dostępnej
w miejscu pola nazwy (na lewo od paska formuły). W tym celu, znajdując się w oknie
argumentów funkcji zewnętrznej, za pomocą listy rozwijanej w polu nazwy wybiera
się odpowiednią funkcję wewnętrzną. Excel wstawia ją w miejscu kursora i zmie‑
nia dotychczasowe okno, wyświetlając argumenty wybranej funkcji wewnętrznej.
Po zakończeniu wypełniania parametrów tej funkcji, w celu powrotu do argumentów

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
114   3.  Podstawy Excela do studiowania ekonomii

funkcji zewnętrznej należy w pasku formuły kliknąć w nazwę odpowiedniej funkcji.


Każde kliknięcie w pasku formuły w nazwę funkcji powoduje zmianę analizowanej
funkcji w oknie argumentów. Analogicznie można także edytować zagnieżdżone
funkcje występujące w już zbudowanej formule.

Przykład
ZAOKR(SUMA(A1:A10); 0) – funkcja zagnieżdżona dająca w wyniku zaokrąglenie
do liczby całkowitej sumy komórek z obszaru A1:A10 (szczegółowy opis parametrów
funkcji ­ZAOKR znajduje się w dalszej części rozdziału).

Podstawowe funkcje agregujące, agregacja w pasku stanu


Te bardzo często wykorzystywane funkcje dostępne są ­m.­in. za pomocą ikony
autosumowania na kartach narzędzi głównych i formuł. Należą do nich następujące
funkcje:
• SUMA,
• ŚREDNIA,
• ILE.LICZB,
• MAX,
• MIN.
Są to funkcje o zmiennej liczbie parametrów.

Przykłady
SUMA(A1:A5) – suma komórek z pojedynczego obszaru spójnego A1:A5,
ŚREDNIA(A1:A5; D1:D5) – średnia komórek z dwóch obszarów spójnych A1:A5
i D1:D5.

Należy także pamiętać, że w przypadku konieczności tymczasowego uzyskania


którejś z wartości agregujących dla wybranych komórek jest możliwe wykorzystanie
paska stanu w dolnej części okna Excela. Domyślnie po zaznaczeniu dowolnych
komórek z wartościami numerycznymi (obszar może być zarówno spójny, jak i nie‑
spójny) na pasku pokazuje się suma, średnia i licznik zaznaczonych komórek. Listę
pokazywanych wartości zagregowanych można modyfikować za pomocą okna
„dostosuj pasek stanu” otwartego na tym pasku za pomocą prawego klawisza myszy
(rysunek 3.18).

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
3.2.  Wybrane funkcje 115

Rysunek 3.18. Agregacje wybranych komórek w pasku stanu wraz z oknem


dostosowania paska

Dla dociekliwych
Typowe wymienione powyżej funkcje agregują wszystkie komórki ze wskaza‑
nego obszaru (także np. te z ukrytych wierszy w procesie filtrowania). Istnieje także
możliwość pominięcia komórek ukrytych w agregacji. Można to uzyskać za pomocą
funkcji SUMY.­CZĘŚCIOWE (funkcja_nr; adres_obszaru) z parametrem funkcja_nr
z przedziału 101–111, np. 109 dla sumy, 101 dla średniej.

Funkcja ­ZAOKR, zagadnienie dokładności


Funkcja ­ZAOKR (liczba; liczba_cyfr) jest najczęściej wykorzystywaną z rodziny
funkcji do zaokrągleń. Należy do kategorii funkcji matematycznych. W przeciwień‑
stwie do formatu wyświetlania komórki funkcja ta decyduje o dokładności przecho‑
wywania wyniku i w konsekwencji dalszych obliczeń prowadzonych z wykorzystaniem
komórki, w której jej użyto. Często stosowana jest jako funkcja zewnętrzna, której
parametrami są inne zagnieżdżone funkcje matematyczne lub formuły.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
116   3.  Podstawy Excela do studiowania ekonomii

Rysunek 3.19. Zastosowanie funkcji ­ZAOKR do zaokrąglenia wartości z komórki A1


do jednego miejsca po przecinku

Parametr liczba jest zazwyczaj adresem komórki, która ma zostać zaokrąglona,


ewentualnie zawiera formułę lub funkcję zagnieżdżoną.
Parametr liczba_cyfr oznacza liczbę cyfr, do której ma zostać zaokrąglona podana
wartość. Dopuszcza się również wartości ujemne, wówczas zaokrąglenie nastąpi do
całych dziesiątek (gdy –1), setek (gdy –2) itd.

Przykłady
Gdy A1 = 4234,765, to:
ZAOKR(A1; 0) = 4234
ZAOKR(A1; 2) = 4234,77
ZAOKR(A1; –2) = 4200

Na rysunku przedstawiono przykłady zastosowania funkcji ­ZAOKR i wyko‑


rzystania formatów liczbowych. Jak widać w kolumnie C, wyłącznie zastosowanie
formatu wyświetlającego liczby bez miejsc po przecinku może pozornie prowadzić do
błędnych wyników. W wierszu 8 przy zastosowaniu tylko formatu liczby całkowitej
uzyskano sumę 10 (kolumna C), a przy zastosowaniu zaokrąglenia każdej wartości
cząstkowej do pełnej liczby uzyskano sumę 9 (kolumna E). Nie można jednoznacz‑
nie powiedzieć, które z tych rozwiązań jest bardziej prawidłowe, gdyż zależy to od
konkretnych zastosowań Excela.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
3.2.  Wybrane funkcje 117

Rysunek 3.20. Różnica w wyniku sumowania komórek pomiędzy obliczeniem


z zastosowanym wyłącznie formatem liczbowym a obliczeniem
z wykorzystaniem zaokrąglenia

Dla dociekliwych
Inne podobne funkcje umożliwiają przykładowo zaokrąglanie do liczby parzy‑
stej lub nieparzystej, zaokrąglanie w z góry określonym kierunku (góra lub dół) lub
w określonym kierunku do wielokrotności podanej liczby.

Funkcja ­JEŻELI
Funkcja ­JEŻELI (test_logiczny; wartość_jeżeli_prawda; wartość_jeżeli_fałsz)
z kategorii funkcji logicznych służy do uzależnienia wartości w komórce od speł‑
nienia określonego warunku.
Parametr obowiązkowy test_logiczny (warunek) w wyniku musi dać jedną
z dwóch wartości logicznych: ­PRAWDA lub ­FAŁSZ. Przykładowe typowe wartości
testu logicznego: A1>0, A1=0, A1>=0, A1<>0 (<> oznacza ≠), A1+A2>0, A1=„ABC”.
W przypadku podania stałej tekstowej, np. „ABC”, należy pamiętać o użyciu cudzy‑
słowów.
Parametr wartość_jeżeli_prawda oznacza wartość wstawioną do komórki,
w której znajduje się formuła w przypadku, gdy zostanie spełniony warunek (czyli
test_logiczny przybierze wartość ­PRAWDA).

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
118   3.  Podstawy Excela do studiowania ekonomii

Parametr wartość_jeżeli_fałsz oznacza wartość, która zostanie wstawiona do


komórki zawierającej formułę w przypadku, gdy warunek nie zostanie spełniony
(czyli test_logiczny przybierze wartość ­FAŁSZ).
Parametry wartość_jeżeli_prawda i wartość_jeżeli_fałsz są opcjonalne, lecz za‑
leca się ich podanie. W przypadku pozostawienia wartości pustej wynikiem będzie
wartość logiczna: ­PRAWDA lub ­FAŁSZ.
Typową wartością parametru dla wartość_jeżeli_prawda i wartość_jeżeli_fałsz jest
kolejna zagnieżdżona funkcja ­JEŻELI. Dzieje się tak, jeżeli funkcja dotyczy wyboru
z więcej niż dwóch możliwości. W przypadku potrzeby wielokrotnych zagnieżdżeń
zazwyczaj w zamian można stworzyć oddzielną tabelę z wartościami testowanej
komórki i wykorzystać funkcję ­WYSZUKAJ_PIONOWO.
Na rysunku zaprezentowano różne metody liczenia premii sprzedawców, uza‑
leżnione od działu lub wysokości wypracowanej sprzedaży. Wszystkie wymagają
zastosowania funkcji J­ EŻELI.

Rysunek 3.21. Przykład zastosowania funkcji ­JEŻELI w trzech metodach liczenia


premii sprzedawców. Wyświetlone okno argumentów funkcji
dotyczy metody drugiej

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
3.2.  Wybrane funkcje 119

Przykłady
Gdy A1 = –45, to:
JEŻELI(A1>0; A1; 0) = 0
JEŻELI(A1>0; A1) = „fałsz”.

Dla dociekliwych
Funkcje z tej samej kategorii ORAZ, LUB i NIE zastępują operatory logiczne,
których w ogóle nie ma w Excelu. Często występują one jako funkcje zagnieżdżone
w innych funkcjach, np. w funkcji ­JEŻELI.

Funkcje SUMA.­JEŻELI, SUMA.­WARUNKÓW


Funkcje te dają możliwość prostych agregacji warunkowych. Funkcja SUMA.­
JEŻELI (zakres; kryteria; suma_zakres) z kategorii funkcji matematycznych służy
do podsumowania komórek, dla których jest spełniony jeden określony warunek.
Warunek nie musi dotyczyć bezpośrednio sumowanych komórek, lecz również może
dotyczyć komórek znajdujących się w innej kolumnie. Jej rozbudowaną wersją jest
funkcja SUMA.­WARUNKÓW (suma_zakres; kryteria_zakres; kryteria; ...), która
daje możliwość podania wielu warunków, które jednocześnie muszą zostać speł‑
nione. Parametry zakres (w przypadku funkcji SUMA.­JEŻELI) i kryteria_zakres
(w przypadku funkcji SUMA.­WARUNKÓW) oznaczają zakres komórek, dla których
będą określone warunki. Należy zwrócić uwagą na inną kolejność parametrów w obu
omawianych funkcjach.
Parametr kryteria oznacza warunek nałożony na komórki z parametru zakres
lub kryteria_zakres. W przypadku warunku określonego przez równość wystarczy
podać pożądaną wartość (równoważne jest podanie kryteriów: „A” i =„A”). Można
również wykorzystać inne operatory porównań (np. >20, <=0, <>„A”).
Parametr suma_zakres oznacza obszar komórek, które mają zostać zsumowane
w przypadku spełnienia warunku. W funkcji SUMA.­JEŻELI parametr suma_zakres
jest opcjonalny, w przypadku jego braku przyjmuje się, że jest równy parametrowi
zakres, czyli kryteria dotyczą bezpośrednio komórek przeznaczonych do sumo‑
wania.
W przykładzie na rysunku użyto funkcji SUMA.­WARUNKÓW w celu zsumowa‑
nia zadłużenia na 31 grudnia dla klientów danej grupy, wyłącznie biorąc pod uwagę
klientów o sprzedaży przekraczającej 800 000 zł. Sparametryzowano symbol grupy
klienckiej poprzez odwołanie do adresu komórki. W przypadku przeznaczenia funk‑
cji do kopiowania dla innych grup klienckich należy zwrócić uwagę na prawidłowe
zastosowanie adresów bezwzględnych, ewentualnie mieszanych.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
120   3.  Podstawy Excela do studiowania ekonomii

Rysunek 3.22. Zastosowanie funkcji SUMA.­WARUNKÓW

Dla dociekliwych
Na identycznej zasadzie, co funkcje SUMA.­JEŻELI i SUMA.­WARUNKÓW dzia‑
łają funkcje LICZ.­JEŻELI (zakres, kryteria) i LICZ.­WARUNKI (kryteria_zakres;
kryteria; ...) służące do zliczenia wartości (liczba wystąpień) spełniających określony
warunek. Należą one do kategorii funkcji statystycznych.
Podobne zastosowanie do funkcji SUMA.­JEŻELI i SUMA.­WARUNKÓW ma
funkcja BD.SUMA należąca do kategorii baz danych. Daje ona możliwość budowania
złożonego kryterium składającego się z wielu warunków połączonych nie tylko za
pomocą koniunkcji. Podobnie działają inne funkcje kategorii bazy danych, dając
możliwość różnych metod agregacji warunkowej.

Funkcja ­WYSZUKAJ.­PIONOWO
Funkcja ­WYSZUKAJ.­PIONOWO (szukana_wartość, tabela_tablica, nr_indeksu_
kolumny, przeszukiwany_zakres) służy do wyszukiwania w tabeli podanej wartości
i zwracania zawartości komórki z tego samego wiersza, co komórka ze znalezioną
wartością, lecz z innej kolumny tabeli. Dotychczas omawiane operacje na tabelach
miały możliwość operowania na jednej tabeli. W praktyce często istnieje konieczność
połączenia ze sobą danych pochodzących z różnych tabel. Omawiana funkcja ma
podstawowe zastosowanie do łączenia ze sobą dwóch tabel na podstawie jednego

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
3.2.  Wybrane funkcje 121

atrybutu. Można wyróżnić dwie wyraźnie różniące się odmiany zastosowania tej
funkcji – w celu wyszukiwania dokładnego lub wyszukiwania przedziałami.
Parametr szukana_wartość to poszukiwana wartość; zazwyczaj jest to adres
komórki z tabeli, do której ma zostać przeniesiona wartość, czyli tabeli docelowej.
Parametr tabela_tablica to adres (lub nazwa) tabeli źródłowej, w której mają być
poszukiwane dane. Ważne, aby pierwszą kolumną z lewej strony tabeli_tablicy była
kolumna, w której będą poszukiwane dane (poszukiwany atrybut). W przypadku,
gdy komórka z funkcją będzie kopiowana, parametr tabela_tablica jest zazwyczaj
adresem bezwzględnym obszaru. Parametr nr_indeksu_kolumny to numer kolumny
w tabeli_tablicy, z której to kolumny ma zostać pobrana wartość. Parametr ten musi
być wyrażony liczbą, przy czym pierwsza kolumna tabeli (z wartościami szukanymi)
ma wartość 1. Parametr przeszukiwany_zakres może przybierać wartości logiczne:
­PRAWDA (wartość domyślna – może zostać pominięta) lub ­FAŁSZ. ­FAŁSZ oznacza
wyszukiwanie dokładne, ­PRAWDA – wyszukiwanie przedziałami.
Przy wyszukiwaniu dokładnym nieodnalezienie poszukiwanej wartości spo‑
woduje zwrócenie kodu błędu #N/D. Takie wyszukiwanie nie wymaga sortowania
tabeli_tablicy.
Przy wyszukiwaniu przedziałami tabela_tablica musi być posortowana rosnąco
według atrybutu poszukiwanego. Ten typ wyszukiwania polega na odszukaniu gór‑
nej granicy przedziału, w którym znajduje się poszukiwany atrybut. Przedziały są
traktowane jako lewostronnie domknięte.
W przykładzie wyszukiwania dokładnego na rysunku dla każdego klienta ma
zostać dopisana nazwa grupy klienckiej. Symbole i nazwy grup podano w dolnej
części ekranu i obszar ten będzie traktowany jako tabela źródłowa w wyszukiwaniu
dokładnym (nie ma tu potrzeby sortowania tej tabeli) (rysunek 3.23).
W przykładzie wyszukiwania przedziałami na rysunku zostało wyliczone zadłuże‑
nie klientów na koniec roku oraz współczynnik ukazujący stosunek tego zadłużenia do
wartości rocznych zakupów klienta. Na potrzeby dalszej analizy stworzono pięć klas
klientów, w zależności od wartości tego współczynnika. Przedziały te podano w dolnej
części ekranu i obszar ten będzie traktowany jako tabela źródłowa w wyszukiwaniu
przedziałami. Dla każdego klienta podana ma zostać jego klasa zadłużenia. Przy
wyszukiwaniu przedziałami jest istotne, aby źródłowa tabela (tutaj klasy klientów)
była posortowana rosnąco według kolumny wyszukiwania (rysunek 3.24).

Dla dociekliwych
Istnieje również znacznie rzadziej wykorzystywana podobna funkcja
­WYSZUKAJ.­POZIOMO. Działa ona analogicznie, ale na danych, dla których za‑
mieniono wiersze z kolumnami w stosunku do omawianego przykładu.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
122   3.  Podstawy Excela do studiowania ekonomii

Rysunek 3.23. Funkcja ­WYSZUKAJ.­PIONOWO w wyszukiwaniu dokładnym

Rysunek 3.24. Funkcja ­WYSZUKAJ.­PIONOWO w wyszukiwaniu przedziałami

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
3.2.  Wybrane funkcje 123

Operacje na dacie i czasie, funkcje DZIŚ, ­TERAZ


Zapisane w komórkach arkusza informacje o dacie i czasie są traktowane jako
zwykłe liczby – część całkowita (nazywana w Excelu tzw. numerem kolejnym daty)
to data, część ułamkowa (nazywana tzw. numerem kolejnym czasu) to czas. Liczba „1”
w przypadku pracy z systemem MS Windows reprezentuje 01 stycznia 1900 roku,
a każda kolejna liczba naturalna to kolejny dzień. Przykładowo więc 19 lipca 2014
roku to liczba 41839 (rysunek 3.25), a 1 stycznia 2015 roku to liczba 42005. Excel
nie obsługuje dat starszych niż 1.01.1900 r. Czas to proporcjonalna część doby, czyli
24 godzin. Przykładowo, godzina 12 w południe to 0,5. Komórka reprezentująca datę
lub czas powinna mieć ustawiony właściwy format z kategorii data lub czas, który
zamienia wewnętrzny zapis numeryczny na zrozumiały dla nas kalendarz i zegar. Przy
wprowadzeniu do komórki stałej zgodnej z formatem daty lub czasu, lub formuły
operującej na dacie lub czasie stosowny format zazwyczaj zostanie ustawiony auto‑
matycznie. Jeśli tak się nie stanie (bo np. komórka miała już wcześniej zdefiniowany
inny format), należy format przestawić samodzielnie. W przypadku stałej zawierającej
datę lub czas w pasku formuły nie jest widoczna faktyczna liczba przechowywana
w komórce, tylko wartość sformatowana jako data lub czas.

Rysunek 3.25. Wykorzystanie funkcji DZIŚ i ­TERAZ z różnymi formatami kategorii


daty i czasu lub formatami niestandardowymi

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
124   3.  Podstawy Excela do studiowania ekonomii

Powyższy sposób przechowywania informacji o dacie bardzo ułatwia wszelkie


obliczenia typu „jaka będzie data x dni od podanego dnia początkowego” oraz oblicze‑
nia liczby dni pomiędzy podanymi datami. Przykłady obliczeń dotyczących upływu
czasu zawarto poniżej. Należy pamiętać, że do takich obliczeń nie są potrzebne żadne
funkcje, wyłącznie formuły wykorzystujące działania arytmetyczne dodawania lub
odejmowania. Pamiętać jednak należy, że w niektórych zastosowaniach obliczenia
należy skorygować o jeden dzień – w przypadku, gdy w liczbie dni powinny być
uwzględnione obie skrajne daty. Przykładowo 7‑­dniowy termin płatności faktury
wystawionej 1 lutego upływa 8 lutego, ale 7‑­dniowy urlop rozpoczynający się 1 lutego
kończy się 7 lutego (bez uwzględnienia dni wolnych od pracy).
Przy tego typu działaniach szczególnie istotne jest ustawianie prawidłowego
formatu danych numerycznych:
• dla daty – format daty,
• dla liczby dni – typowy format liczbowy, w tym ogólny.

Rysunek 3.26. Podstawowe obliczenia na dacie bez wykorzystania funkcji

Jedną z częściej wykorzystywanych funkcji dotyczących daty jest DZIŚ(). Funkcja


ta nie posiada parametrów, zwraca datę bieżącą. Należy pamiętać, że data ta aktu‑
alizuje się ­m.­in. przy powtórnym otwieraniu pliku. Natomiast wygodnym skrótem
klawiszowym do wstawienia daty bieżącej (w postaci stałej, a nie formuły) jest Ctrl;
(Ctrl ze średnikiem).

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
3.3.  Podstawowe operacje na bazach danych 125

Funkcja zwracająca bieżącą datę wraz z aktualnym czasem to ­TERAZ(). Podobnie


jak DZIŚ() jest to funkcja bez parametrów. Obie powyższe funkcje, jeśli są wprowa‑
dzane bezpośrednio w komórce, po nazwie funkcji muszą mieć puste nawiasy.

Dla dociekliwych
W przypadku wyświetlania daty i czasu poza wbudowanymi formatami daty
i godziny często wykorzystuje się formaty niestandardowe, w przypadku których
można zbudować własną maskę formatu. Do bardziej skomplikowanych działań na
dacie i czasie służą inne funkcje z kategorii daty i godziny. Są tam ­m.­in. dostępne
funkcje do obliczeń dotyczących dni roboczych.

3.3. Podstawowe operacje na bazach danych

Pojęcie bazy danych w Excelu


W Excelu tzw. bazy danych (inaczej listy) odpowiadają typowemu podejściu do
pojedynczej tabeli w relacyjnym modelu bazy danych11. Zazwyczaj więc pierwszym
wierszem bazy danych jest wiersz nagłówków, począwszy od drugiego wiersza rozpo‑
czynają się dane zorganizowane tak, aby każdy wiersz był jednym rekordem (krotką).
Bezproblemowa praca z bazą danych wymaga przestrzegania poniższych zaleceń.
1) Każda kolumna musi mieć unikatowy nagłówek.
2) W każdej kolumnie powinny znajdować się dane jednego typu.
3) Rekomenduje się, aby formuły znajdujące się w bazie danych, w przypadku, gdy
odwołują się do obszaru spoza bazy, zawierały adresy bezwzględne, w przypadku,
gdy odwołują się do innej komórki w ramach tego samego rekordu, zawierały
adresy względne. Nie zaleca się formuł odnoszących się do innych rekordów
z bazy (np. potencjalne problemy z sortowaniem). Nie zaleca się też stosowania
adresów mieszanych.
4) Jeśli w arkuszu są inne dane, zaleca się, aby baza danych była rozdzielona od
swojego otoczenia przynajmniej jednym pustym wierszem i pustą kolumną.
Operacje działające na bazach danych znajdują się w większości na karcie Dane,
ponadto niektóre są powielone na karcie Narzędzia główne.

11  Nie należy więc utożsamiać pojęcia baza danych z analogicznym terminem w relacyjnych sys‑

temach zarządzania bazami danych, np. MS Access. Interpretacja tego pojęcia w Excelu jest znacznie
uproszczona.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
126   3.  Podstawy Excela do studiowania ekonomii

Rysunek 3.27. Przykład prawidłowo zbudowanej bazy danych

Dla dociekliwych
Rozszerzeniem przedstawionej powyżej koncepcji baz danych jest traktowanie
obszaru jako tabeli (karta Wstawianie).

Sortowanie
Sortowanie jest porządkowaniem kolejności rekordów według określonych
kluczy wyboru.

Rysunek 3.28. Sortowanie z wykorzystaniem dwóch poziomów

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
3.3.  Podstawowe operacje na bazach danych 127

Sortowanie jest operacją, którą można wykonywać również na danych nie‑


spełniających ściśle kryteriów bazy danych. Można sortować, używając w prostych
przypadkach ikon: Sortuj rosnąco lub Sortuj malejąco albo w bardziej złożonych:
Sortuj/Sortowanie niestandardowe (karta Dane/Sortowanie i filtrowanie lub karta
Narzędzia główne/Edytowanie/Sortuj i filtruj). Sortowanie można przeprowadzać
według wielu kluczy – następny klucz jest brany pod uwagę tyko w przypadku rów‑
ności komórek będących poprzednim kluczem. Dla każdego klucza można określić
kolejność (rosnąco lub malejąco).

Dla dociekliwych
Dla poszczególnych kluczy sortowania można zdefiniować własny porządek
wg tzw. listy niestandardowej np. kolejność grup klienckich inna niż zgodna z po‑
rządkiem alfabetycznym. Do sortowania można ponadto wykorzystywać ­m.­in. kolory
komórek lub czcionki.

Filtrowanie
Podstawowym typem filtra jest tzw. autofiltr, pozwalający na ukrycie rekordów
niespełniających określonych kryteriów.
Filtr (karta Dane/Sortowanie i filtrowanie/Filtruj lub karta Narzędzia główne/
Edytowanie/Sortuj i filtruj) umożliwia przeprowadzenie selekcji (filtrowania) z wy‑
korzystaniem kilku kolumn na zasadzie łączenia warunków dotyczących różnych
kolumn poprzez koniunkcję (wszystkie warunki muszą jednocześnie zostać speł‑
nione). W ramach jednej kolumny można sformułować dwa warunki elementarne
połączone poprzez koniunkcję lub alternatywę. Można ponadto wskazać w każdej
kolumnie wiele konkretnych wartości do filtrowania (rysunek 3.29).

Dla dociekliwych
Inny typ filtra – filtr zaawansowany – pozwala na budowanie bardziej złożonych
kryteriów (analogicznych do kryteriów w funkcjach baz danych), umożliwia ponadto
kopiowanie wybranych rekordów do innego obszaru.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
128   3.  Podstawy Excela do studiowania ekonomii

Rysunek 3.29. Filtrowanie klientów, którzy dokonali w ciągu roku zakupów na kwotę


przekraczającą 800 000 zł

Tabele przestawne

Tabele przestawne służą zazwyczaj do analizowania danych zawartych w bazie


danych. Można uzyskiwać podsumowania (lub agregacje z wykorzystaniem innych
działań matematycznych lub statystycznych) w różnych przekrojach. Tabele prze‑
stawne są bardzo łatwe w modyfikacji – rozbudowana jest możliwość zmiany ich
układu poprzez przestawianie i transponowanie poszczególnych nagłówków wierszy
i kolumn. Czyni je to doskonałym narzędziem analitycznym.
Dla prawidłowego wykorzystania tabeli przestawnej należy wcześniej zrozumieć
znaczenie danych w poszczególnych kolumnach. Warto wyróżnić: wymiary analizy
i miary. Wymiary analizy to zazwyczaj powtarzające się dane, często pochodzące
z katalogów dostępnych wartości (np. kraj, typ klienta, rok urodzenia, waluta itp.).
Służą one do grupowania (klasyfikacji) danych. Miary to wartości liczbowe (np. war‑
tość, ilość), które będą podlegały agregacji (sumowaniu, liczeniu średniej itp.) według
poszczególnych wymiarów lub ich kombinacji.
W poniższym przykładzie na rysunku 3.30 źródłem dla tabeli przestawnej jest baza
danych o rocznej sprzedaży i zapłatach klientów. W danych z poprzedniego przykładu
uwzględniono także kolumnę z regionem, do którego przypisano każdego klienta,
gdyż tabela przestawna jest szczególnie użyteczna przy większej liczbie wymiarów.
Jako wymiary analizy można więc w przykładzie traktować grupę kliencką i region.
Jako miary – wszystkie dane numeryczne dotyczące sprzedaży, zapłat i zadłużenia.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
3.3.  Podstawowe operacje na bazach danych 129

Narzędzie budowy tabeli przestawnej jest zawarte na wstążce (karta Wstawianie/


Tabela/Tabela przestawna). Należy podać źródło danych (tutaj najbardziej typowa jest
opcja tabela/zakres) i miejsce, w którym tabela ma zostać umieszczona (najczęściej to
nowy arkusz). Powstaje szkielet pustej tabeli przestawnej, w której należy rozmieścić
poszczególne elementy. Jako etykiety kolumn, wierszy i ewentualnie filtry raportu
umieszcza się kolumny z wymiarami analizy (wartościami powtarzalnymi). Jako
agregacje wartości umieszcza się kolumny pełniące funkcje miar.

Rysunek 3.30. Tworzenie tabeli przestawnej dla danych o klientach

Rysunek 3.31. Pusty szkielet tabeli przestawnej utworzony w nowym arkuszu z oknem


listy pól tabeli przestawnej do zdefiniowania układu tabeli

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
130   3.  Podstawy Excela do studiowania ekonomii

Rysunek 3.32. Tabela przestawna zawierająca jedną miarę (sprzedaż roczną)


i dwa wymiary (grupa kliencka i region)

Dla tabeli wybrano jeden z predefiniowanych stylów i ustawiono format liczbowy


danych.

Rysunek 3.33. Tabela przestawna zawierająca dwie miary (sprzedaż roczną i zadłużenie


na 31 grudnia) oraz dwa wymiary (grupę kliencką i region)

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
3.4.  Wybrane funkcje finansowe 131

Poniżej przedstawiono 6 najważniejszych dodatkowych możliwości przy pracy


z tabelami przestawnymi. Większość z nich jest dostępna pod prawym klawiszem
myszy w obszarze tabeli przestawnej lub na wstążce na kontekstowych kartach na‑
rzędzi tabel przestawnych.
1) Układ istniejącej tabeli przestawnej można łatwo modyfikować poprzez przesu‑
wanie poszczególnych elementów w oknie listy pól tabeli przestawnej.
2) Opcje ustawienia pola wartości lub podsumuj wartości według umożliwiają
zmianę działania agregującego z sumy np. na licznik rekordów, średnią, mak‑
simum, odchylenie standardowe lub inne. Ponadto dane można przedstawiać
poza układem normalnym jako różnicę w stosunku do innej wartości, procent
liczony od innej wartości lub jeszcze w innej metodzie prezentacji danych.
3) Tabela przestawna nie pobiera automatycznie formatu liczbowego dla danych
z obszaru źródłowego. Format ten dla danych w tabeli ustawia się przez opcje
ustawienia pola wartości lub format liczby.
4) Dodatkowe ustawienia dotyczące całej tabeli przestawnej są dostępne w opcjach
tabeli. Dotyczą one w szczególności określania szczegółowego układu tabeli, de‑
cydowania o tym, które sumy końcowe mają być pokazywane, wyboru sposobu
sortowania danych elementarnych.
5) W przypadku dokonania zmian w liście będącej źródłem danych należy wymusić
odświeżenie tabeli opcją odśwież.
6) Poprzez opcję pokaż szczegóły lub poprzez dwukrotne kliknięcie na dowolną
daną zagregowaną można uzyskać w oddzielnym arkuszu wyciąg z listy źródłowej
ze szczegółowymi rekordami wchodzącymi w skład wskazanego agregatu.

Dla dociekliwych
Wykresy przestawne funkcjonują analogicznie do tabel i bardzo podobny jest
sposób ich budowy. Po wybraniu opcji wstawienia wykresu przestawnego Excel
tworzy tabelę przestawną, a w oparciu o nią – właściwy wykres.

3.4. Wybrane funkcje finansowe

Ogólne zasady dotyczące funkcji finansowych


Jest to grupa funkcji wspomagająca obliczenia związane w szczególności z ana‑
lizą inwestycji, obliczeniami rat kredytów, odpisami amortyzacyjnymi, papierami
wartościowymi itp. Dzięki nim użytkownik nie musi sam każdorazowo konstruować

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
132   3.  Podstawy Excela do studiowania ekonomii

skomplikowanych formuł obliczeniowych. Ze zrozumiałych względów ta kategoria


funkcji jest szczególnie ważna dla studentów uczelni ekonomicznych.

Rysunek 3.34. Biblioteka funkcji dla kategorii funkcji finansowych

Większość funkcji finansowych wykorzystuje zbliżone parametry. Poniżej przed‑


stawiono uniwersalne znaczenie parametrów:
• stopa – stopa procentowa w zależności od funkcji np. związana z inwestycją lub
będąca stopą rynkową (np. jako stopa odniesienia),
• rata – wartość systematycznego (powtarzalnego co do kwoty w kolejnych rów‑
nych odstępach czasowych) przepływu pieniężnego; kwota ujemna to przepływ
od inwestora (pieniądze wydawane np. spłata raty kredytu), kwota dodatnia to
przepływ do inwestora (pieniądze otrzymywane np. jako dywidenda); parametr
w niektórych funkcjach może występować w postaci (rata1; rata2; ...) w przypadku
przepływów systematycznych, lecz w różnych kwotach,
• liczba rat – liczba rat równa czasowi trwania inwestycji,
• okres – numer okresu równy numerowi raty,
• wartość bieżąca – obecna wartość inwestycji, wartość aktualna,
• wartość przyszła – wartość inwestycji na koniec jej okresu trwania; gdy parametr
zostanie opuszczony, domyślnie jest przyjmowana wartość zerowa;

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
3.4.  Wybrane funkcje finansowe 133

• typ – typ spłacania rat: 0 – na koniec każdego okresu (wartość domyślna, jeśli
pominięto), 1 – na początek każdego okresu.
Pamiętać należy o zachowaniu adekwatności okresów i stopy procentowej.
Stopa jest wyrażana dla wybranego okresu (np. jeśli pojedynczy okres to rok, stopa
wyrażana jest w stosunku rocznym; jeśli okres to miesiąc, stopa musi być podana
w stosunku miesięcznym).

Funkcja FV
Funkcja FV (ang. future value) służy do obliczenia przyszłej wartości inwestycji
przy założeniach niezmiennej stopy procentowej i systematycznych przepływów
pieniężnych o powtarzalnej kwocie lub jednorazowej inwestycji początkowej. Ma na‑
stępującą składnię:

FV (stopa; liczba rat; rata; wartość bieżąca; typ)12

Przykładowo może służyć do obliczenia oczekiwanej wartości przyszłych oszczęd‑


ności przy systematycznym oszczędzaniu stałych kwot w równych odstępach czasu.
W przykładzie na rysunku 3.35 założono, że co miesiąc oszczędza się 300 zł przez
5 lat, czyli 60 miesięcy. Przepływy są comiesięczne, dlatego stopa procentowa musi
być także podana dla takiego okresu. Funkcja przyjmuje, że kapitalizacja także będzie
miesięczna i opiera się na kalkulacji procentu składanego13. W przykładzie przyjęto
miesięczną stopę oprocentowania na poziomie 0,3 %. Należy zwrócić uwagę, że rata
powinna tu być liczbą ujemną, ponieważ jest kwotą wykładaną przez oszczędzają‑
cego. W przykładzie przyjęto także założenie, że oszczędza się począwszy od kwoty
zerowej (parametr Wartość bieżąca), a przepływy dokonywane są na koniec każdego
miesięcznego okresu (parametr Typ także równy zero). W związku z powyższym nie
ma potrzeby podania tych dwóch ostatnich parametrów opcjonalnych.

12  Pogrubione parametry w nawiasie muszą wystąpić, niepogrubione są opcjonalne. Zasada ta jest

stosowana wobec wszystkich omawianych funkcji finansowych.


13  Wzór uwzględniający procent składany do obliczenia wartości przyszłej inwestycji: FV = PV(1 +

r/m)mn, gdzie n to liczba lat, m – liczba okresów kapitalizacji, r – wartość stopy procentowej wyrażonej
jako ułamek dziesiętny.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
134   3.  Podstawy Excela do studiowania ekonomii

Rysunek 3.35. Przykład zastosowania funkcji FV

W  zaprezentowanym przykładzie przyszła wartość oszczędności wyniesie


19 689,48 zł.

Funkcja PV
Funkcja PV (ang. present value) służy do obliczenia bieżącej wartości inwestycji
przy założeniach niezmiennej stopy procentowej i systematycznych przepływów
pieniężnych o powtarzalnej kwocie lub jednorazowej inwestycji początkowej. Ma na‑
stępującą składnię:

PV (stopa; liczba rat; rata; wartość przyszła; typ)

Funkcję można zastosować, przy założeniu systematycznych oszczędności, w przy‑


kładzie analogicznym do powyższego. Poniżej jednak na rysunku 3.36 zaprezentowano
zastosowanie funkcji w sytuacji przepływu jednorazowego w celu odpowiedzi na pytanie:
„Jaka, przy założonej rocznej stopie procentowej na poziomie 4 %, powinna być jedno‑
razowa początkowa inwestycja, w celu uzyskania po 10 latach kwoty 50 000 zł?”.
W tym przypadku podano roczną stopę procentową (parametr Stopa), liczbę
lat oszczędzania (parametr Liczba rat) i oczekiwaną kwotę po dziesięciu latach (pa‑
rametr Wartość przyszła). Pominięto wartość parametru Rata, co oznacza zerową

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
3.4.  Wybrane funkcje finansowe 135

ratę systematycznego przepływu. Pominięto także parametr Typ, który w przypadku


braku systematycznych przepływów nie miałby znaczenia.
Przy długich okresach inwestycji istotnym czynnikiem, który powinno się w rze‑
czywistości brać pod uwagę, jest inflacja. Zagadnienie to wykracza jednak poza
problematykę niniejszego skryptu.

Rysunek 3.36. Przykład zastosowania funkcji PV

W tym przykładzie należałoby zdeponować 33 778,21 zł, żeby po 10 latach


oszczędzania uzyskać kwotę 50 000 zł. Na rysunku pokazano także wartość FV dla
początkowej inwestycji w kwocie obliczonej jako powyższy wynik funkcji PV przy
identycznych pozostałych założeniach. Wynikiem FV jest wtedy 50 000 zł, co świadczy
o tym, że funkcje FV i PV można traktować jako działania odwrotne.

Dla dociekliwych
W przypadku przepływów systematycznych, ale o zmiennej kwocie, w celu ob‑
liczenia wartości bieżącej stosuje się metodę bieżącej wartości netto i funkcję NPV
(ang. Net Present Value).

Funkcja RATE
Funkcja RATE służy do obliczenia procentowej stopy zwrotu z inwestycji przy
założeniach niezmiennej stopy procentowej i systematycznych przepływów pie‑

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
136   3.  Podstawy Excela do studiowania ekonomii

niężnych o powtarzalnej kwocie, ewentualnie jednorazowej inwestycji początkowej.


Ma następującą składnię:

RATE (liczba rat; rata; wartość bieżąca; wartość przyszła; typ; wynik)

W przykładzie na rysunku 3.37 obliczono roczną stopę oprocentowania dla in‑


westycji o początkowym wydatku 500 000 zł (parametr Wartość bieżąca podany jako
przepływ ujemny) i następnie otrzymywanych przez pięć lat (parametr Liczba rat)
corocznych przepływach w kwocie 125 000 zł (parametr Rata – dodatni). Pominięto
parametry Wartość przyszła, Typ i Wynik, zakładając zerową przyszłą wartość inwe‑
stycji i przepływy dokonywane na koniec okresów. Parametr Wynik to opcjonalny
szacunek oczekiwanej stopy wspomagający działanie funkcji, zazwyczaj niepotrzebny
przy typowych obliczeniach.

Rysunek 3.37. Przykład zastosowania funkcji RATE

Dla dociekliwych
W przypadku przepływów systematycznych, ale o zmiennej kwocie, w celu ob‑
liczenia stopy stosuje się metodę wewnętrznej stopy zwrotu i funkcję IRR (ang. In‑
ternal Rate of Return).

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
3.4.  Wybrane funkcje finansowe 137

Funkcja NPER
Funkcja NPER (ang. number of periods) służy do obliczenia liczby okresów in‑
westycji niezbędnej do uzyskania oczekiwanej kwoty przy założeniach niezmiennej
stopy procentowej i systematycznych przepływów pieniężnych o powtarzalnej kwocie
lub jednorazowej inwestycji początkowej. Funkcja NPER ma następującą składnię:

NPER (stopa; rata; wartość bieżąca; wartość przyszła; typ)

W przykładzie na rysunku 3.38 przyjęto, że wartość początkowa inwestycji


wpłacona do banku wynosi 130 000 zł (parametr Wartość bieżąca – ujemny) i będzie
systematycznie uzupełniana w ratach rocznych po 9000 zł (parametr Rata – ujemny).
Poszukuje się w nim liczby lat, po której można zaoszczędzić na mieszkanie 300 000 zł
(parametr Wartość przyszła – dodatni) przy założeniu rocznej stopy procentowej
z inwestycji na poziomie 4 % (parametr Stopa). Nie podano parametru Typ, pozo‑
stawiając wartość domyślną – oszczędzanie na koniec każdego roku.
W przykładzie planowana kwota zostanie zaoszczędzona po upływie niespełna 10 lat.

Rysunek 3.38. Przykład zastosowania funkcji NPER

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
138   3.  Podstawy Excela do studiowania ekonomii

Funkcja PMT
Funkcja PMT (ang. payment) to podstawowa funkcja służąca do obliczenia raty
spłaty kredytu przy założeniu spłaty w równych ratach.
Całkowita rata spłaty kredytu składa się w rzeczywistości z dwóch części:
• raty kapitałowej,
• raty odsetkowej.
W typowym modelu spłaty rata odsetkowa maleje wraz ze spadkiem niespłaco‑
nego kapitału kredytu. Przy spłatach w równych ratach część kapitałowa rośnie więc,
równoważąc spadek części odsetkowej.
Funkcja PMT ma następującą składnię:

PMT (stopa; liczba rat; wartość bieżąca; wartość przyszła; typ)

W przykładzie na rysunku 3.39 obliczono miesięczną ratę spłaty kredytu sa‑


mochodowego zaciągniętego w kwocie 80 000 zł na okres 4 lat przy rocznej stopie
procentowej 10 %. Częstotliwość przepływów jest miesięczna, dlatego parametr Stopa
został podzielony przez 12, czyli liczbę miesięcy w roku. Analogicznie w parametrze
Liczba rat podany okres kredytowania w latach został z kolei przemnożony przez 12.
Zostały pominięte parametry: Wartość przyszła (kredyt jest spłacany do końca) i Typ
(przepływy następują na koniec okresów).
W tym przykładzie rata spłaty kredytu samochodowego wyniesie 2 029,01 zł.

Rysunek 3.39. Przykład zastosowania funkcji PMT

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
3.5.  Przykłady z rozwiązaniami i zadania do samodzielnego wykonania 139

Dla dociekliwych
W celu obliczenia raty oddzielnie dla części kapitałowej i części odsetkowej stosuje
się odpowiednio funkcje: PPMT i IPMT.
Zaprezentowane zagadnienia z zakresu wykorzystania pakietu Excel nie wyczer‑
pują rzecz jasna wszystkich jego możliwości. Stanowią jedynie wprowadzenie do zasad
korzystania z arkusza kalkulacyjnego. Szerszy opis możliwości pakietu MS Excel 2010
czytelnik może odnaleźć w tzw. pomocy korzystania z programu (wykorzystując ikonę
w prawym górnym rogu ekranu lub przycisk funkcyjny F1) i w wielu publikacjach
książkowych poświęconych wyłącznie obsłudze tego konkretnego pakietu14.

3.5. Przykłady z rozwiązaniami i zadania do samodzielnego


wykonania

Przykłady z rozwiązaniami
Dane do poniższych przykładów i zadań są do pobrania ze strony internetowej
Instytutu Informatyki i Gospodarki Cyfrowej15 w okienku Podręcznik (pliki nazwane
odpowiednio Przykład 3_1 i zadanie 3_3 – tu dane są wspólne, Przykład 3_2, Przy-
kład 3_3, Przykład 3_4, Przykłady 3_5 do 3_11 itd.).

Przykład 3.1
Wspólnota mieszkaniowa prowadzi ewidencję opłat za lokale mieszkalne. W ta‑
beli 1 zebrano informacje charakteryzujące lokale. Opłaty za eksploatację i centralne
ogrzewanie są uzależnione od powierzchni zajmowanego lokalu i naliczane według
stawek znajdujących się w tabeli 2. Opłaty za wodę, wywóz śmieci, gaz i kanaliza‑
cję są zależne od liczby osób zameldowanych w danym lokalu i naliczane według
stawek w tabeli 2. Ile wynoszą całkowite opłaty dla każdego z lokali i średnie opłaty
eksploatacyjne w spółdzielni?

14  Np. C. Frye, T. Zajbt, Microsoft Excel® 2010: wersja polska, Wydawnictwo RM, Warszawa 2012.
15  http://kolegia.sgh.waw.pl/pl/KAE/struktura/IIiGC.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
140   3.  Podstawy Excela do studiowania ekonomii

W tabeli 3 w tym przykładzie przedstawiono rozwiązanie.

F1 → =WYSZUKAJ.PIONOWO($B14;tabela1;2;0)*WYSZUKAJ.PIONOWO(C$13;tabela2;3;0)

F2 → =WYSZUKAJ.PIONOWO($B14;tabela1;3;0)*WYSZUKAJ.PIONOWO(E$13;tabela2;3;0) F3 → =SUMA(C14:H14)

F4 → =ŚREDNIA(C14:C25)

W prezentowanym zadaniu mamy dane:


• tabela 1 – obszar zdefiniowany A3:C8 jako zmienna tabela1,
• tabela 2 – obszar zdefiniowany E3:G8 jako zmienna tabela2,
• numer lokalu w tabeli 3 z obszaru A14:A25,
• rodzaj lokalu w tabeli 3 z obszaru B14:B25.

Rozwiązanie
Rozwiązaniem są formuły przygotowane tak, żeby można było je kopiować
w odpowiedni sposób:
• F1 do komórek z obszaru C14:D25,
• F2 do komórek z obszaru E14:H25,
• F3 do komórek z obszaru I14:I25,
• F4 do komórek z obszaru C26:I26,

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
3.5.  Przykłady z rozwiązaniami i zadania do samodzielnego wykonania 141

gdzie:
• F1 – funkcja/formuła znajdującą się w komórce C14
=­WYSZUKAJ.­PIONOWO($B14; tabela1; 2; 0)*­WYSZUKAJ.­PIONOWO(C$13;
tabela2; 3; 0);
Adresowanie mieszane kolumny $B (bezwzględnie) i wiersza 14 (względnie)
umożliwia automatyczne obliczenia pobieranych danych z tabela1 na podstawie
rodzaju lokalu, a adresowanie mieszane kolumny C (względnie) i wiersza $13 (bez‑
względnie) zapewnia automatyczne obliczenia pobieranych z tabela2.
• F2 – funkcja/formuła znajdującą się w komórce E14
=­WYSZUKAJ.­PIONOWO($B14; tabela1; 3; 0)*­WYSZUKAJ.­PIONOWO(E$13;
tabela2; 3; 0);
• F3 – funkcja/formuła znajdującą się w komórce I14
=SUMA(C14:H14);
• F4 – funkcja/formuła znajdującą się w komórce C26
=ŚREDNIA(C14:C25).
Adresowanie z wykorzystaniem odwołań mieszanych jest tu kluczowe ze względu
na szybkość prowadzonych obliczeń. Przygotowywanie odrębnych formuł dla po‑
szczególnych lokali byłoby pracochłonne i nieekonomiczne z punktu widzenia kosztu
pracy. Przygotowanie formuł, które można kopiować zgodnie z podaną instrukcją,
oszczędza czas i pomaga skupić się na analizie przypadku, a nie na przygotowaniu
zestawienia.

Przykład 3.2
Sklep osiedlowy przygotowuje zestawienie zamówionych towarów. W tabeli 1
zebrano wszystkie oferowane towary, ich ceny zakupu oraz ustaloną marżę.

W tabeli 2 będącej zestawieniem zamówionych towarów wyznacz kwotę Do zapłaty.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
142   3.  Podstawy Excela do studiowania ekonomii

F1 → =WYSZUKAJ.PIONOWO(E3;$A$3:$C$14;2;0)*F3

F2 → =WYSZUKAJ.PIONOWO(E3;$A$3:$C$14;3;0)*G3 F3 → =SUMA(G3:H3)

F4 → =SUMA(I3:I8)

W prezentowanym zadaniu jest dane:


• zawartość tabeli 1, w obszarze A3:C14,
• nazwy zamówionych towarów w tabeli 2 w obszarze E3:E8,
• ilość zamówionych towarów w tabeli 2 w obszarze F3:F8.

Rozwiązanie
Rozwiązaniem są formuły przygotowane tak, żeby można było je kopiować
w odpowiedni sposób:
• F1 do komórek z obszaru G3:G8,
• F2 do komórek z obszaru H3:H8,
• F3 do komórek z obszaru I3:I8,
gdzie:
• F1 – funkcja/formuła znajdującą się w komórce G3

=WYSZUKAJ.PIONOWO(E3; $A$3:$C$14; 2; 0)*F3;

• F2 – funkcja/formuła znajdującą się w komórce H3

=WYSZUKAJ.PIONOWO(E3; $A$3:$C$14; 3; 0)*G3;

• F3 – funkcja/formuła znajdującą się w komórce I3

=SUMA(G3:H3);

Wartość F4 Do zapłaty wyliczono w komórce I9=SUMA(I3:I8).

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
3.5.  Przykłady z rozwiązaniami i zadania do samodzielnego wykonania 143

Przykład 3.3
W poniższej tabeli znajdują się odległości z Warszawy do wybranych miast
w Polsce. Koszt transportu wynosi: mniej niż 275 km – 2,25 zł/km, powyżej 500 km –
1,25 zł/km, a pozostałe odległości są liczone stawką 1,75 zł/km. Na tej podstawie
wyznacz koszty transportu z Warszawy.

Rozwiązanie
Rozwiązaniem jest wprowadzenie funkcji „jeżeli” do komórki C3 o następującej
postaci:

=JEŻELI(B3<275; B3*2,25; JEŻELI(B3>500; B3*1,25; B3*1,75)).

Tak przygotowaną formułę można przekopiować do komórek w zakresie C3:C70


obejmującym wybrane miasta.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
144   3.  Podstawy Excela do studiowania ekonomii

Przykład 3.4
Myjnia samochodowa Robert Gąbka prowadzi rejestr swoich usług. Rejestr ten
został zapisany jako następująca tabela:

Właściciel myjni chce wiedzieć:


1) Ile razy była uruchomiona każda z usług?
2) Dokonaj podsumowania wartości wykonanych usług dla każdego typu po‑
jazdu.
3) Ile razy były realizowane wszystkie z usług jednocześnie, łącznie z motocyklami,
dla których odkurzanie nie jest dostępne w ofercie?
4) W ilu przypadkach kwota DO KASY przekroczyła 40 zł?
W prezentowanym zadaniu jest dane:
• Rejestr usług myjni samochodowej Robert Gąbka umieszczony w powyższej
tabeli 1 w obszarze A2:A230, łącznie z wierszem nagłówkowym.

Rozwiązanie
W tabeli 2 (w tym przykładzie) przedstawiono nazwy wykonanych usług i ich
liczbę. W kolejnej tabeli 3 zebrano typy samochodów i obliczono dla każdego wartość
wykonanych usług. Następna tabela 4 jest tabelą kryteriów pomocną do obliczenia
liczby wszystkich usług realizowanych jednocześnie.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
3.5.  Przykłady z rozwiązaniami i zadania do samodzielnego wykonania 145

F1 → =LICZ.JEŻELI($B$3:$B$230;"tak")

F2 → =SUMA.JEŻELI($A$3:$F$230;K3;$F$3:$F$230)

142

W tabeli 2 wykonano następujące obliczenia przy założeniu, że wartość formuły F1


dla usługi mycia znajduje się w komórce I3.
• I3=LICZ.­JEŻELI($B$3:$B$230; „tak”),
• I4=LICZ.­JEŻELI($C$3:$C$230; „tak”),
• I5=LICZ.­JEŻELI($D$3:$D$230; „tak”),
• I6=LICZ.­JEŻELI($E$3:$E$230; „tak”).
W tabeli 3 formułę F2 (w komórce L3=SUMA.­JEŻELI($A$3:$F$230; K3; $F$3:
$F$230)) należy przekopiować na kolejne komórki o  kolejnych adresach  L4,
L5, L6.
W celu wyznaczenia liczby zdarzeń, kiedy wszystkie usługi były realizowane
jednocześnie, należy skorzystać z tabeli 4 i przy założeniu, że jest zaadresowana
w obszarze H9:L11 przy konstruowaniu argumentów funkcji:

BD.ILE.REKORDÓW($A$2:$F$230; $F$2; $H$9:$L$11).

Liczba zdarzeń, kiedy kwota DO KASY przekroczyła 40 zł może być obliczona
z funkcji LICZ.­JEŻELI(F3:F230; „>40”).

Przykład 3.5
Pan Adam dostał nagrodę jubileuszową w wysokości 8000 zł. Postanowił wpłacić
całą kwotę do banku na 12 miesięcy jako lokatę oprocentowaną 2,3 % w skali roku
z kapitalizacją miesięczną i z założeniem, że w każdym miesiącu będzie wypłacane
15 zł, które pan Adam chce przekazywać swojemu małemu wnukowi jako kieszon‑
kowe. Jaką kwotę otrzyma po roku pan Adam?

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
146   3.  Podstawy Excela do studiowania ekonomii

Rozwiązanie

Odpowiedź
Wartość przyszła lokaty pana Adama zwiększy się przez rok tylko nieznacznie
(do kwoty 8004,04 zł), ale pozwoli wypłacać wnukowi kieszonkowe przez ten rok.

Przykład 3.6
Państwo Malinowscy planują za trzy lata pojechać na wycieczkę po Skandynawii.
Muszą na ten cel uzbierać 8000 zł. Są w stanie odkładać co kwartał 500 zł, a bank
oferuje im oprocentowanie 2,8 % przez 3‑­letni okres systematycznego oszczędzania
pod warunkiem dokonania jakiejś wpłaty początkowej. Ile powinna wynosić wpłata
początkowa, żeby plan państwa Malinowskich mógł się zrealizować?

Rozwiązanie

Odpowiedź
Państwo Malinowscy powinni rozpocząć oszczędzanie na wycieczkę, wpłacając
na początku 1621,91 zł.

Przykład 3.7
Franek dostał od dziadków w prezencie 3 000 zł jako nagrodę za dobrze zdaną
maturę. Rodzice w obawie, żeby syn nie roztrwonił zaraz pieniędzy, zaproponowali,
że jeśli wpłaci pieniądze od dziadków na lokatę do banku, to oni będą przez całe

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
3.5.  Przykłady z rozwiązaniami i zadania do samodzielnego wykonania 147

pięć lat jego studiów dopłacać do lokaty po 100 zł miesięcznie. Jakie oprocentowanie
roczne powinien oferować bank, żeby po studiach Franek mógł sobie kupić wyma‑
rzony motor za 10 000 zł?

Rozwiązanie

Odpowiedź
Funkcja RATE pomaga obliczyć oprocentowanie dla pojedynczego okresu kapi‑
talizacji. Stąd uzyskaną wartość należy pomnożyć przez liczbę okresów kapitalizacji
w roku – w tym wypadku przez 12 miesięcy, żeby uzyskać odpowiedź, jakie opro‑
centowanie roczne banku będzie satysfakcjonujące dla Franka.

Przykład 3.8
Pan Wurst postanowił wyremontować łazienkę za 5000 zł. Potrzebną kwotę
może pożyczyć w banku i spłacać zadłużenie przez 2,5 roku. Oprocentowanie tej
pożyczki ustalono na 9,5 % w skali roku. Jaka będzie wysokość rat miesięcznych
pana Wursta?

Rozwiązanie

Odpowiedź
Pan Wurst powinien spłacić swój kredyt, oddając co miesiąc 187,90 zł.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
148   3.  Podstawy Excela do studiowania ekonomii

Przykład 3.9
Jak długo trzeba będzie oszczędzać, żeby posiadaną kwotę 2 000 zł podwoić przy
założeniu, że w każdym miesiącu będziemy wpłacać 100 zł, a oprocentowanie roczne
wynosi 4,55 % w skali roku? Wynik proszę podać w miesiącach z dokładnością do
dwóch miejsc po przecinku.

Rozwiązanie

Odpowiedź
Należy oszczędzać 1,5 roku, żeby zrealizować wszystkie powyższe założenia.

Przykład 3.10
Oferta biura turystycznego WorldTour zawiera atrakcyjną wycieczkę do Chin na
3 tygodnie w cenie 14 000 zł za osobę. Wycieczkę można opłacić w całości i wówczas
możliwy jest rabat w wysokości 10 % lub wpłacić 4000 zł, a pozostałą kwotę spłacać
przez rok ratami kwartalnymi oprocentowanymi 5 % w skali roku. O ile droższy jest
wariant ratalny?

Rozwiązanie

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
3.5.  Przykłady z rozwiązaniami i zadania do samodzielnego wykonania 149

Odpowiedź
Przyjmując wariant ratalny zapłacimy o 1 714,44 zł więcej.

Przykład 3.11
Joasia kupuje swoje pierwsze mieszkanie u developera, który zaproponował
jej dwa rodzaje spłaty kredytu zaciągniętego na brakującą kwotę 150 000 zł. Może
uzyskać rabat w wysokości 12 %, jeśli pozostałą kwotę spłaci w ciągu 12 lat, płacąc
miesięczne raty oprocentowane 9 % rocznie, lub też bez rabatu, gdy spłaci brakującą
kwotę w tym samym czasie, ale raty miesięczne będą oprocentowane tylko 6,5 %
rocznie. Który wariant jest korzystniejszy dla Joasi, przy założeniu, że płatności
następują na początku miesiąca?

Rozwiązanie

Odpowiedź
W tym zadaniu przyjęto założenie, że spłata następuje na początku miesiąca,
a więc ostatni parametr w zastosowanej funkcji PMT powinien wynosić 1. Wariant 1
okazuje się nieznacznie korzystniejszy pomimo wysokiego oprocentowania.

Zadania do samodzielnego wykonania


Dane do poniższych zadań są do pobrania ze strony internetowej podręcznika
(pliki nazwane odpowiednio Zadanie 3_1, Zadanie 3_2, Przykład 3_1 i zadanie 3_3 –
tu dane są wspólne, Zadania 3_4 do 3_8, Zadanie 3_9 – dane, Zadanie 3_10, Za-
danie 3_11, Zadanie 3_12). Odpowiedzi czytelnik odnajdzie od razu w kolejnych
arkuszach pliku z danymi lub w przypadku zadania 3.9 – w pliku Odpowiedzi do
zadania 3_9.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
150   3.  Podstawy Excela do studiowania ekonomii

Zadanie 3.1
Przygotuj wizualizację danych sprzedaży zebranych w tabeli zgodnie z podanym
przykładem.

Wielkość Średnio na
Miesiąc
sprzedaży jednego klienta
styczeń 2978 14
luty 3152 12
marzec 3031 15
kwiecień 3459 23
maj 4052 24
czerwiec 3986 25

Należy:
• dodać nową serię danych (średnio na jednego klienta), używając drugiej osi,
• dodać słupki błędów do serii wielkość sprzedaży (błędy pomiarów 5 %),
• dodać odpowiednią linię trendu z prognozą na miesiąc do przodu,
• sformatować odpowiednio wygląd i układ wykresu.

Zadanie 3.2
Należy obliczyć premie dla sprzedawców wymienionych w tabeli poniżej w trzech
możliwych wariantach.
1) Tylko gdy przekroczono sprzedaż 10 000, wówczas 5 % kwoty sprzedaży.
2) Niezależnie od wielkości sprzedaży dla pracowników działu A – 10 %, dla pozo‑
stałych – 5 %.
3) Niezależnie od wielkości sprzedaży dla pracowników działu: A – 10 %, B – 5 %,
C – 15 %.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
3.5.  Przykłady z rozwiązaniami i zadania do samodzielnego wykonania 151

Zadanie 3.3
Korzystając z tabeli 3 otrzymanej w przykładzie 3.1 (w pliku Przykład 3_1 i zada-
nie 3_3), przygotuj za pomocą tabeli przestawnej poniższy raport i wykres średnich
kosztów poszczególnych typów mieszkań.

Wskazówka
W oknie Tworzenie tabeli przestawnej podajemy obszar tabeli 3 obliczonej w przy‑
kładzie 3.1 jako dane, które chcemy analizować. Następnie do raportu zaznaczamy
interesujące nas pola. Dla pola Wartości i każdej wartości pola wybranego do raportu
zmieniamy jego Ustawienia pola wartości, wybierając średnią w miejsce sumy.

Zadanie 3.4
Dealer Forda oferuje nam samochód w kredycie 50/50 za 39 000 zł. Załóżmy,
że mamy pieniądze na pierwszą wpłatę. Drugą połowę należy spłacić w ratach kwar‑
talnych po 4 500 zł w ciągu 2,5 roku. Możemy też kupić ten samochód za gotówkę
płacąc 78 000 zł, ale wówczas musimy zaciągnąć kredyt w banku na brakującą kwotę
39 000 zł. Bank udzielający kredytu proponuje jego spłatę także przez 2,5 roku w ra‑
tach miesięcznych i przy oprocentowaniu w skali roku takim samym jak u dealera.
Który wariant jest dla nas korzystniejszy i o ile?

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
152   3.  Podstawy Excela do studiowania ekonomii

Zadanie 3.5
Beata i Tomek postanowili się pobrać i nie bacząc na posiadane zasoby finansowe
wyprawić huczne wesele. Po podsumowaniu kosztów okazało się, że wesele będzie
kosztowało 35 000 zł, a pozostało im na ten cel tylko 3 500 zł. Daleka ciotka Tomka
zaoferowała im pożyczkę brakującej kwoty oprocentowaną 5 % rocznie, którą zobo‑
wiązali się spłacać w ratach kwartalnych po 1 200 zł. Ile lat zajmie im spłacanie tej
pożyczki?

Zadanie 3.6
Alfred wygrał w Totolotka niebagatelną sumę 300 000 zł. Postanowił jakoś
zainwestować te pieniądze, bo do ukończenia studiów pozostało mu jeszcze 3 lata.
Po zakończeniu studiów zamierza wyjechać do innego miasta i wówczas zdecyduje,
czy kupić za te pieniądze małe mieszkanie czy pojechać w podróż życia. Wygraną
może zainwestować w 3‑­letnie obligacje oprocentowane 3,5 % rocznie lub w produkcję
uli, którą prowadzi wujek Adam. Produkcja wujka dzięki inwestycji w nowoczesne
maszyny powinna przynieść 10 % zysku w ciągu tych 3 lat. Która inwestycja jest dla
Alfreda korzystniejsza?

Zadanie 3.7
Towarzystwo ubezpieczeniowe oferuje polisę posagową dla 10‑­latków. Gwaran‑
towana kwota po 10 latach ma wynosić 25 000 zł przy założeniu, że pierwsza wpłata
wyniesie 2 000 zł, a składki kwartalne 500 zł. Czy warto założyć dziecku taką polisę,
jeśli wiadomo, że oferowane przez bank oprocentowanie lokat długoterminowych
wynosi 3,5 %? Ile możemy zyskać, wybierając korzystniejszą ofertę?

Zadanie 3.8
Ile należy wpłacić do banku, żeby po 2 latach systematycznego wpłacania 200 zł
miesięcznie otrzymać 7 000 zł przy oprocentowaniu 3,3 % rocznie?

Odpowiedzi do zadań 3.4–3.8


w pliku Zadania 3_4 do 3_8.

Zadanie 3.9
Na podstawie zestawienia danych PZPM przedstawiającego wielkość produkcji
pojazdów samochodowych w Polsce w latach 2000–2013 (plik Zadanie 3_9 – dane)
utwórz wykresy: kolumnowy, słupkowy i bąbelkowy.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
3.5.  Przykłady z rozwiązaniami i zadania do samodzielnego wykonania 153

Odpowiedź
w pliku Odpowiedź do zadania 3_9.

Zadanie 3.10
Firma handlowo­‑usługowa ma w swojej ofercie towary przedstawione w poniższej
tabeli (dane i odpowiedzi w pliku Zadanie 3_10).
Wykorzystując tabelę przestawną przygotuj:
a) zestawienie sprzedawców i wartości ich sprzedaży,
b) zestawienie rodzajów towarów, ilości i wartości ich sprzedaży,
c) zestawienie rodzajów towarów, ilości i wartości ich sprzedaży z możliwością
przeglądania tych wyników dla każdego ze sprzedawców,
d) wykres i zestawienie sprzedawców oraz wartości i ilości sprzedaży towarów.

Wskazówki
W celu rozpoczęcia pracy z tabelami przestawnymi należy zaznaczyć jedną
z komórek analizowanej tabeli, a następnie ze wstążki Wstawianie wybrać Tabela
przestawna bądź Wykres przestawny.

Jeżeli w oknie Tworzenie tabeli przestawnej zgadzają się adresy analizowanej tabeli,
należy zaakceptować w celu przeglądania Listy pól tabeli przestawnej. W zależności

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
154   3.  Podstawy Excela do studiowania ekonomii

od potrzeb analizy należy wybrać pola, następnie sprawdzić poprawność ich przy‑
pisania do Sekcji obszarów.

Odpowiedź
w pliku Zadanie 3_10.

Zadanie 3.11
W pliku Zadanie 3_11 (arkusz Dane) znajduje się cennik usług pralni osiedlowej
Pingwin. Przy przyjmowaniu garderoby do prania powstaje rachunek, w którym
wpisywana jest nazwa rzeczy, liczba sztuk tego samego rodzaju odzieży (w przypadku
dywanu jednostką przeliczeniową jest powierzchnia dywanu w metrach kwadrato‑
wych). Gdy klient zażyczy sobie dodatkowo zabezpieczyć odzież poprzez nałożenie
apretury lub impregnację (tylko jedno z tych zabezpieczeń jest możliwe do wyboru),
doliczane są dodatkowe opłaty za każdą zabezpieczoną sztukę.
Należy wprowadzić odpowiednie formuły w pola oznaczone na fioletowo, by uzy‑
skać efekt jak na rysunku załączonym poniżej. Ważne jest także, aby komórki,
w których znajdą się obliczenia, były prawidłowo sformatowane (np. pole walutowe)
i pozostawały puste, dopóki nie zostanie wpisana nazwa garderoby. Proszę także
wstawić w komórce J25 formułę powodującą wyświetlenie komunikatu bonus, gdy
wartość usług z dodatkami przekroczy 200 zł.

Odpowiedź
w pliku Zadanie 3_11.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
3.5.  Przykłady z rozwiązaniami i zadania do samodzielnego wykonania 155

Zadanie 3.12
W pliku Zadanie 3_12 znajdują się dane dotyczące premii za spektakl tancerzy
zatrudnionych w teatrze muzycznym wg zaszeregowania do klasy baletowej (1÷5 –
gdzie 1 oznacza najwyższą klasę baletową) oraz wzrostu i płci. Na podstawie tych
danych należy sporządzić:
a) tabelę przestawną zawierającą średnią kwotę premii wg płci i wzrostu tancerki
lub tancerza;
b) wykresy przestawne, z których będzie można wysnuć wniosek, która podgrupa
tancerzy jest inaczej traktowana niż pozostałe przy podziale premii.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
156   3.  Podstawy Excela do studiowania ekonomii

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
Zakończenie 157

Zakończenie

Oddajemy do rąk czytelnika podręcznik, będący przede wszystkim pomocą


w studiowaniu przedmiotu Wstęp do informatyki gospodarczej, co oznacza, że zawarte
w nim treści są zgodne z sylabusem tego przedmiotu w Szkole Głównej Handlowej
w Warszawie. W zamierzeniu autorów książka ma być pomocna w podnoszeniu
indywidualnych kompetencji cyfrowych zarówno dla początkujących, jak i bardziej
dojrzałych ekonomistów, którzy odczuwają potrzebę samokształcenia w tym zakresie.
Na stronie Instytutu Informatyki i Gospodarki Cyfrowej SGH16 w okienku Podręcz‑
nik zostały zamieszczone pliki ćwiczeniowe do zawartych w książce przykładów
i zadań.
W procesie kształcenia studenci i wykładowcy Szkoły Głównej Handlowej w War‑
szawie korzystają z różnych pomocy dydaktycznych, również w postaci elektronicznej.
Możliwość udostępniania bieżących materiałów dydaktycznych dla studentów przez
wykładowców uczelni daje platforma e‑learningową: www.e‑sgh.pl. Można tam od‑
naleźć wiele interesujących materiałów, choć z reguły są to pomoce do studiowania
konkretnych przedmiotów. Wszyscy autorzy tej książki posiadają swoje strony na
platformie e‑learningowej SGH, do których dostęp jest możliwy tylko dla studentów,
a pozostałych czytelników zachęcamy do kontaktu mailowego w przypadku pytań
lub wątpliwości (adresy według szablonu: imie.nazwisko@sgh.waw.pl).
Wychodząc nieco poza obszar, który prezentuje platforma e‑learningowa SGH,
należy zwrócić uwagę na serwisy światowe promujące zdalną edukację. Z pewnością
godnym uwagi jest serwis iTunes U proponowany przez firmę Apple. Umożliwia on
tworzenie kursów i uczestnictwo w nich za pośrednictwem iTunes U na urządzeniach
mobilnych.
Alternatywą iTunes U może być serwis Lynda.com. Serwis ten jest firmą prowa‑
dzącą edukację on‑line. Pomaga w doborze materiałów tak, aby użytkownik mógł
osiągnąć swoje cele osobiste i zawodowe. Dzięki subskrypcji na Lynda.com człon‑
kowie otrzymują nieograniczony dostęp do obszernej biblioteki wysokiej jakości,
aktualnych i wciągających filmów edukacyjnych. Nowe kursy i tematy są dodawane
co tydzień bez dodatkowych opłat. Firma dobiera najlepszych ekspertów w swojej
dziedzinie na świecie, pasjonatów tematu, którzy wiedzą jak uczyć. Członkostwo na
Lynda.com daje dostęp do materiałów płatnych, choć niektóre lekcje wprowadzające

16  http://kolegia.sgh.waw.pl/pl/KAE/struktura/IIiGC.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
158   Zakończenie

są udostępnianie za darmo. Od czasu do czasu pojawiają się też promocje, np. dar‑


mowy miesiąc testowania serwisu.
Warto zwrócić także uwagę na serwis KhanAcademy – www.khanacademy.org.
Khan Academy jest organizacją non profit, której celem jest podnoszenie poziomu
wykształcenia poprzez zapewnienie bezpłatnej edukacji na światowym poziomie dla
każdego, w dowolnym miejscu. Wszystkie zasoby witryny są dostępne bezpłatnie.
Studenci mogą korzystać z bogatej biblioteki z dowolnego komputera z dostępem
do sieci Internet. Nauczyciele mają wgląd w to, czego ich uczniowie uczą się i jakie
robią postępy w Khan Academy. Biblioteka zawiera ­m.­in. treści z obszaru matematyki,
biologii, chemii i fizyki, finansów czy historii.
Serwis edX – www.edx.org – oferuje interaktywne lekcje on‑line i materiały
z najlepszych uczelni na świecie takich jak: MITx, HarvardX, BerkeleyX, UTx i wielu
innych. Tematyka obejmuje ­m.­in. biologię, chemię, biznes, informatykę, ekonomię,
finanse, elektronikę, inżynierię, historię, nauki humanistyczne, prawo, literaturę,
matematykę, medycynę, muzykę, filozofię, fizykę, statystykę i wiele więcej. EdX to
inicjatywa non profit stworzona w internecie przez partnerów założycieli Harvard
i MIT. Dodatkowo można uzyskać za pośrednictwem edX certyfikaty ukończenia
kursów uczelni wyższej.
Niniejsza książka jest zbiorem materiałów dydaktycznych, które mogą być wy‑
korzystywane podczas nauki podstawowych zagadnień związanych z relacyjną bazą
danych i arkuszem kalkulacyjnym na kursach, szkoleniach, zajęciach akademickich
i w trakcie studiowania indywidualnego. Każdy rozdział jest zakończony przykładami
i zadaniami. Przykłady z rozwiązaniami, które prowadzą czytelnika krok po kroku,
pokazują, jak zastosować omówione zagadnienia w praktyce. Zadania do samodziel‑
nego rozwiązania służą utrwaleniu opanowanego materiału.
Autorzy zachęcają przy tym czytelników do dalszych poszukiwań i korzystania
z globalnych źródeł informacji i edukacji w celu doskonalenia swoich kompetencji
informatycznych.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
Bibliografia 159

Bibliografia

Barker R., Longman C., Case Method. Modelowanie funkcji i procesów, WNT, Warszawa


2001.
Cox J., Lambert J., Zajbt T., Microsoft Access 2010: wersja polska, Wydawnictwo RM, Warszawa
2012.
Frye C., Zajbt T., Microsoft Excel® 2010: wersja polska, Wydawnictwo RM, Warszawa 2012.
Kisielnicki J., MIS – systemy informatyczne zarządzania, Placet, Warszawa 2008.
Ullman J.D., Widom J., Podstawowy kurs systemów baz danych, Helion, Gliwice 2011.

Netografia
http://www.idealware.org/articles/comparing-microsoft-office-office-365 (7.07.2014).
http://www.komputerswiat.pl/testy/programy/pakiety-biurowe/2011/12/porownanie-pakietow-
biurowych-office-2010-libreoffice-i-dokumenty-google.aspx (7.07.2014).
http://antyapps.pl/porownanie-darmowych-pakietow-biurowych-dokumenty-google-vs-of‑
fice-mobile (20.05.2014).

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
160   Bibliografia

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
Aneks 1.  Przegląd aplikacji biurowych alternatywnych wobec Microsoft Office 161

Aneks 1.  Przegląd aplikacji biurowych


alternatywnych wobec Microsoft Office

Współczesne rozwiązania w zakresie komputerowego wspomagania prac biuro‑


wych zmieniają się wraz z ich charakterem. Aplikacje biurowe stają się coraz częściej
mobilne i coraz bardziej rozproszone. Bazy danych on‑line, dyski sieciowe i inne usługi
przetwarzane w chmurze już nie zaskakują dzięki szerokopasmowemu dostępowi
do sieci Internet. W 2014 roku urządzenia mobilne, takie jak: ultrabooki, netbooki,
tablety, tabletofony, smartfony są powszechnie dostępne z wielordzeniowymi, ener‑
gooszczędnymi procesorami, coraz bardziej wydajnymi interfejsami sieciowymi,
co sprawia, że praca może być wykonywana zdalnie niezależnie od miejsca i czasu.
Oprogramowanie dla różnych systemów operacyjnych jest udostępniane w sieci
zarówno z licencjami płatnymi, jak i bezpłatnymi. Przed instalacją należy zwrócić
baczną uwagę na rodzaj licencji i dokładnie zapoznać się z jej warunkami. W związku
z dużym wyborem oprogramowania w internecie w dalszej części przybliżone zostaną
możliwości dostępu do alternatywnych aplikacji względem płatnych pakietów firmy
Microsoft, tj. MS Accessa i MS Excela.
Alternatywę dla MS Access mogą stanowić udostępnione jako wolne oprogra‑
mowanie pakiety programowe, które przedstawiono w tabeli A.1.
Spośród pakietów zaprezentowanych w tabelach A.1 i A.2 oraz propozycji za‑
wartych w vortalach dobreprogramy.pl oraz instalki.pl na szczególna uwagę zasługują
takie rozwiązania, jak: Apache Open Office, LibreOffice, iWork, Google Drive. Poza
tym warto zainteresować się także iCloud, OneDrive czy też Chmurą SGH zarówno
udostępnianą studentom w SGH, jak i poza uczelnią. Należy przy tym zwrócić uwagę
na to, że więcej wirtualnych dysków i pamięci przenośnych oferuje możliwość prze‑
glądania i edycji plików w popularnych formatach. W związku z powyższym można
przyjąć podział dostępnego oprogramowania na: instalowane w systemie, dostępne
w chmurze i przenośne.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
162   Aneks 1.  Przegląd aplikacji biurowych alternatywnych wobec Microsoft Office

Tabela A.1. Bazy danych – wybrane alternatywy dla MS Access


Liczba Licencja | Właściwy system
Lp. Nazwa Etykiety
like’ów operacyjny
Open Source by The Document Office & Productivity database, database­
1 LibreOffice – Base 46 Foundation | Mac, Windows, ‑management, libreoffice, database­
Linux ‑software
Development web‑based, database,
Open Source by Marcello
mysql, frontend, sqlite, postgresql,
2 VFront 27 Verona | Mac, Windows, Linux,
postgres, microsoft­‑access, mysql­
Online
‑front‑end
Business & Commerce, Development
Open Source by ManyDesigns
3 Portofino 23 portable, cms, java­‑based, content­
S.r.l. | Mac, Windows, Linux
‑management, website­‑creator, charting
Freemium by nuSoftware | Development development, web‑based,
4 nuBuilder 15 Windows, Linux, Online, Self­ database, mysql, php‑development,
‑Hosted rapid­‑application­‑development
Business & Commerce, Development
Open Source by Rodrigo web‑based, cms, mysql, frontend,
5 Crudin 9
A. Rodriguez | Online rapid­‑application­‑development, code­
‑generation
Open Source by Apache
Apache OpenOffice Office & Productivity xml, database­
6 7 Software Foundation | Mac,
Base ‑management, openoffice­‑suite, tables
Windows, Linux
Education & Reference database, wiki,
Freemium by WikiWorks |
7 Referata 6 wikipedia, semantic, languages‑min‑20,
Online, Self­‑Hosted
wiki­‑engine, wikifarm, adfree, mediawiki
Open Source by Calligra Suite | Office & Productivity database, database­
8 Kexi 6
Linux ‑management, kde, data­‑management
Open Source | Mac, Windows,
9 HSQLDB 5 Development database, sql, rdbms
Linux
10 Glom 2 Open Source | Windows, Linux database, database­‑applications
Źródło: na podstawie alternativeto.net/software/microsoft­‑access, stan z dnia 14.05.2014.

Podobnie, alternatywne programy dla MS Excel przedstawiono w tabeli A.2.

Tabela A.2. Arkusze kalkulacyjne – wybrane alternatywy dla MS Excel


Liczba
Lp. Nazwa Licencja | System operacyjny Etykiety
like’ów
Open Source by The Document Office & Productivity portable,
1 LibreOffice – Calc 229 Foundation | Mac, Windows, spreadsheet, spreadsheet­‑creation,
Linux libreoffice
Open Source by Apache
Apache OpenOffice Office & Productivity spreadsheet,
2 98 Software Foundation | Mac,
Calc openoffice­‑suite
Windows, Linux
Google Drive – Free by Google | iPhone, iPad, Office & Productivity spreadsheet, online­
3 96
Sheets Android + Tablet, Online ‑collaboration, sheets

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
Aneks 1.  Przegląd aplikacji biurowych alternatywnych wobec Microsoft Office 163

Liczba
Lp. Nazwa Licencja | System operacyjny Etykiety
like’ów
Commercial by Apple | Mac, Office & Productivity spreadsheet,
4 iWork – Numbers 46
iPhone, iPad numbers, iwork
Open Source by The ­GNOME Office & Productivity spreadsheets,
5 Gnumeric 35
Project | Mac, Windows, Linux spreadsheet­‑creation
Office & Productivity database,
Open Source by Planamesa presentation, word­‑processing,
6 NeoOffice 29
Inc | Mac spreadsheet, office­‑suite, fullscreen­
‑support
Office & Productivity collaboration,
7 Zoho Sheet 13 Free by ZOHO Corp. | Online
spreadsheet, calculation
Office & Productivity tabbed­‑interface,
Kingsoft Freemium by Kingsoft Office |
8 6 spreadsheet, built‑in‑pdf‑converter,
Spreadsheets Windows, Linux
excel‑to‑pdf, xls‑to‑txt
Education & Reference, Office &
Free by Team and Concepts
9 EditGrid 6 Productivity collaboration, spreadsheet,
Limited | Online
grid, calculator
Education & Reference, Office &
10 EtherCalc 6 Open Source | Linux, Online Productivity collaboration, spreadsheet,
online­‑collaboration, calculator
Źródło: na podstawie alternativeto.net/software/microsoft­‑excel, stan z dnia 14.05.2014.

Oprogramowanie instalowane w systemie operacyjnym


The Apache Software Foundation jest odpowiedzialna za rozwój Apache Open­
Office, a The Document Foundation jest odpowiedzialna za rozwój LibreOffice.
Obie fundacje zostały powołane na rzecz dalszego rozwoju kodu OpenOffice.org.
Funkcje obu pakietów są zbliżone, choć można się spodziewać, że niedługo może
rozpocząć się proces pogłębiający różnice pomiędzy tymi pakietami biurowymi.
Więcej informacji na temat obu projektów można znaleźć na stronach www.openof‑
fice.org i www.libreoffice.org.
W skład obu pakietów wchodzi 6 aplikacji biurowych17:
1) Edytor tekstu – Writer,
2) Arkusz kalkulacyjny – Calc,
3) Baza danych – Base,
4) Edytor grafiki – Draw,
5) Edytor prezentacji – Impres,
6) Edytor formuł matematycznych – Math.

17  Zachowano pisownię oryginalną z pakietu w wersji polskiej i angielskiej.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
164   Aneks 1.  Przegląd aplikacji biurowych alternatywnych wobec Microsoft Office

Writer – jest to edytor tekstu nadający się do profesjonalnych zastosowań, stano‑


wiący bardzo dobrą alternatywę dla Microsoft Word. Edytor ten oferuje wiele stylów,
rozbudowany słownik, do którego można wstawiać nowe wyrazy lub całe frazy. Writer
posiada zdefiniowane szablony dokumentów, rozbudowane funkcje formatowania
i indeksowania tekstu, nieustępujące możliwościom MS Worda, z którym bez więk‑
szych problemów może współpracować.
Calc – jest to arkusz kalkulacyjny będący substytutem MS Excela. Istotne jest
również to, że formuły mogą być tworzone z wykorzystaniem słów w języku polskim.
Calc to w pełni funkcjonalny i przejrzysty arkusz kalkulacyjny, umożliwiający forma‑
towanie komórek oraz prezentację danych tabelarycznych w postaci graficznej i jako
struktury formuł. Aplikacja obsługuje format .xls, co ułatwia wymianę dokumentów
z osobami posługującymi się MS Excel.
Base – jest aplikacją do tworzenia baz danych, umożliwia tworzenie i edycję tabel,
formularzy, zapytań i raportów. Jest to udana alternatywa dla MS Access. Program
wykorzystuje wbudowany silnik bazodanowy H‑SQL, obsługuje bazy oparte na
dBase, a dane przechowuje w plikach XML. Praca możliwa jest w widoku: kreatora,
projektu lub SQL.
Draw – jest to aplikacja pozwalająca na manipulację grafiką i w pełni może
zastąpić MS Visio. Można za pomocą tego programu stworzyć ilustracje, schematy,
modele, np. w UML. Ponadto zapewnia edytowanie gradientu, rendering tekstur,
efekty oświetlenia, perspektywy, przeźroczystości, obiekty 3D, obsługę OpenGL.
Możliwa jest konwersja rastrów na wektory i odwrotnie, skalowanie na siatkach
i prowadnicach, rozciąganie tekstu po liniach.
Impress – to aplikacja do tworzenia prezentacji, którą można zastąpić MS Power‑
Point. Ma możliwość formatowania slajdów i dynamiki prezentacji. Dzięki współpracy
z Draw można stosować grafikę rastrową i wektorową. Dużą zaletą jest możliwość
tworzenia prezentacji przenośnych i integracja z formatem MS PowerPoint.
Math – jest edytorem formuł matematycznych. Wygodny i intuicyjny interfejs
graficzny, menu kontekstowe lub alternatywne zastosowanie poleceń tekstowych
sprawiają, że Math jest narzędziem przyjaznym nawet dla początkującego użyt‑
kownika. Math daje możliwość zapisywania formuły w postaci OpenDocument,
dokumentów z formułami, a także eksportowania plików w formacie XML‑owego
formatu MathML i PDF.
Pisząc o pakietach aplikacji biurowych, warto wspomnieć również o Lotus
Symphony. Ostatnia wersja pakietu biurowego zawierająca łącznie edytor tekstów,
arkuszy kalkulacyjnych i kreator prezentacji IBM jest datowana na 2012 rok. Obecnie
programiści IBM są zaangażowani w projekt Apache OpenOffice, co może skutkować
integracją rozwiązań OpenOffice.org i Lotus Symphony. Ponadto w 2011 roku IBM
uruchomił projekt LotusLive Symphony.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
Aneks 1.  Przegląd aplikacji biurowych alternatywnych wobec Microsoft Office 165

Z punktu widzenia współpracy z bazami danych na uwagę zasługuje Calligra


Suite – do niedawna rozwijany pod nazwą KOffice. Pakiet ten składa się z 10 apli‑
kacji:
  1) Words – edytor tekstu,
  2) Sheets – arkusz kalkulacyjny,
  3) Stage – edytor prezentacji,
  4) Author – aplikacja do tworzenia książek elektronicznych,
  5) Krita – aplikacja do obróbki grafiki rastrowej,
  6) Karbon – aplikacja do tworzenia grafiki wektorowej,
  7) Flow – aplikacja do tworzenia wykresów, schematów blokowych lub organiza‑
cyjnych,
  8) Kexi – aplikacja do wizualnego tworzenia aplikacji bazodanowych,
  9) Plan – aplikacja do zarządzania projektami,
10) Braindump – aplikacja do tworzenia notatek i map myśli.
Zaletą tego pakietu są stosunkowo małe wymagania sprzętowe i możliwość pracy
na starszych komputerach. Wadą, choć nie dla każdego, może być brak polskiej
wersji językowej.
iWork to pakiet złożony z trzech aplikacji biurowych: Pages, Keynote i Numbers,
stworzonych przez firmę Apple, a wersje instalacyjne dostępne są tylko dla systemów
OS X oraz iOS.
Pages jest to program do obsługi tekstu z możliwościami prostej aplikacji typu
DTP (ang. Desktop Publishing). Część funkcji z wcześniejszego pakietu AppleWorks
została ograniczona – zwiększono natomiast możliwości programu i dodano szablony
ulotek i folderów Apple. Pages ma prosty arkusz kalkulacyjny wbudowany w funkcje
tabeli. Program ten umożliwia tworzenie wykresów i wklejanie elementów multi‑
medialnych. Pliki zapisywane są z rozszerzeniem .pages, ale można też korzystać
z takich formatów, jak: .doc, .rtf, .txt, .html i .pdf.
Numbers to arkusz kalkulacyjny, który jest odpowiednikiem programu MS Excel.
Ułatwia pracę z danymi i ich wizualizację, np. tworzenie wykresów. Daje możliwość
zachowania niestandardowych formatów liczb przy imporcie arkuszy MS Excel,
a także wcześniejszych wersji Numbers. Możliwe jest personalizowanie arkusza,
jego udostępnienie w postaci chronionej hasłem, a nawet zachowanie zgodności
z arkuszami w formacie MS Excel. Możliwe jest monitorowanie postępu obliczeń
i przebiegu importu z dokładnością do pojedynczych komórek.
Keynote jest to program do tworzenia prezentacji. Jest alternatywą dla MS Power‑
Point. Dzięki możliwości integrowania elementów prezentacji z elementami innych
aplikacji firmy Apple można intuicyjnie tworzyć materiały do wystąpień. Slajdy,

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
166   Aneks 1.  Przegląd aplikacji biurowych alternatywnych wobec Microsoft Office

podobnie jak w MS PowerPoint, mogą zawierać zdjęcia, muzykę i filmy. Keynote jest
powiązany z Pages i pakietem iLife firmy Apple, a pliki zapisywane są z rozszerze‑
niem .key. Sterowanie prezentacją na Macbooku może odbywać za pomocą aplikacji
Keynote Remote na iPhone i iPod Touch.

Oprogramowanie dostępne w chmurze


Bardzo ciekawym rozwiązaniem jest iCloud.com, będące rozszerzeniem iWork.
Po zarejestrowaniu się na stronach Apple.com uzyskuje się dostęp do aplikacji biu‑
rowych on‑line w przeglądarce internetowej.

Rysunek A.1. Wybrane elementy w oknie iCloud.com po zalogowaniu się użytkownika


Źródło: konto iCloud autora.

Dokumenty Google, inaczej Google Docs, są jedną z usług firmy Google, nieod‑
płatnie udostępnianą każdemu, kto posiada konto pocztowe Gmail. W skład pakietu
Google Docs wchodzą:
1) Dokument – edytor tekstu,
2) Prezentacja – kreator prezentacji,
3) Arkusz – arkusz kalkulacyjny,
4) Formularz – kreator formularzy,
5) Rysunek – aplikacja on‑line umożliwiająca tworzenie rysunków wektorowych
i schematów.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
Aneks 1.  Przegląd aplikacji biurowych alternatywnych wobec Microsoft Office 167

Dokumenty Google oparte są na modelu chmury SaaS18. Do zalet takiego rozwią‑


zania można zaliczyć pracę grupową nad dokumentami, względne bezpieczeństwo
danych (przede wszystkim niwelujące niebezpieczeństwo utraty danych z powodu
awarii lub utraty osobistego sprzętu komputerowego), dostęp do danych z różnych
systemów operacyjnych, obsługa większości popularnych rozszerzeń plików.
Tworzenie dokumentów za pomocą procesora tekstu w Google Docs bardziej
przypomina pracę w Word Padzie niż w MS Word. Z punktu widzenia formatowania
tekstu jest to bardzo proste narzędzie, jednakże w kontekście tworzenia treści ro‑
zumianego jako proces wydaje się wręcz znakomite. Dzięki możliwości współpracy
kilku osób przygotowywane treści mogą mieć unikatową wartość merytoryczną.
Narzędzie Google umożliwia tworzenie treści przez kilka osób w tym samym czasie.
Nie tylko może to zwiększyć jakość przygotowania treści i ich doskonalenia, lecz
także przyśpieszyć pracę nad opracowywanym dokumentem.
Podobnie jest z pozostałymi elementami pakietu Google Docs. Są to w większo‑
ści uproszczone odpowiedniki MS Excel, MS PowerPoint lub MS Visio. Na uwagę
zasługuje jednak moduł Formularz. Jest to narzędzie umożliwiające gromadzenie
wiedzy i informacji na interesujący nas temat. Opracowywanie ankiet lub wniosków
nabiera innego charakteru ze względu na możliwość korzystania z elektronicznych
kanałów ich dystrybucji.
Dokumenty Google są dedykowane społecznościom pracującym, a nawet myślą‑
cym grupowo. W związku z tym nie należy traktować Google Docs jako zamiennika
aplikacji biurowych off‑line, ale jako ich ważne i potrzebne uzupełnienie.
OneDrive (dawniej SkyDrive) jest odpowiedzią Microsoftu na to, co dzieje
się u konkurentów, takich jak Apple czy Google. OneDrive jest to dysk wirtualny
z możliwością edycji przechowywanych plików z każdego miejsca na dowolnym
urządzeniu połączonym z internetem.

Rysunek A.2. Elementy w oknie www.live.com po zalogowaniu się użytkownika


Źródło: konto OneDrive autora.

18  SaaS (Software as a Service) – udostępnienie infrastruktury technicznej wraz ze zbiorem aplikacji.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
168   Aneks 1.  Przegląd aplikacji biurowych alternatywnych wobec Microsoft Office

Microsoft skutecznie wykorzystał niszę rynkową w oprogramowaniu, tworząc


pakiet MS Office 2013, który umożliwia otwieranie, edytowanie i udostępnianie
dokumentów Worda, Excela i innych aplikacji pakietu Office w wirtualnym miejscu
pod nazwą OneDrive oraz pracowanie nad nimi jednocześnie z innymi osobami19.
Ponadto można je nadal wyświetlać, tworzyć i współtworzyć, udostępniać za po‑
mocą OneDrive – bezpłatnie, bezpośrednio w przeglądarce – pod warunkiem stałej
łączności internetowej w naszym komputerze.
Szkoła Główna Handlowa w Warszawie udostępnia swoim studentom Chmurę
SGH. Aplikacje udostępniane przez SGH są oparte na modelu SaaS i w pełni wspierają
społecznościowy charakter kontaktów panujący na uczelni.
Wejście/Logowanie do systemu jest możliwe przez stronę główną student.sgh.
waw.pl, na której znajduje się link do chmura.sgh.waw.pl. Okno logowania dostępne
po wybraniu Zaloguj się przedstawiono na rysunek A.3.

Rysunek A.3. Okno logowania do poczty w o365


Źródło: konto testowe Działu Infrastruktury Informatycznej SGH.

Chmura SGH integruje pocztę, kontakty, aktualności, wirtualny dysk (o pojem‑


ności 75 GB dla każdego studenta) wraz z wybranymi aplikacjami MS Office oraz
miejsca publikacji w sieci tzw. witryny.

19  Więcej na http://www.idealware.org/articles/comparing-microsoft-office-office-365.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
Aneks 1.  Przegląd aplikacji biurowych alternatywnych wobec Microsoft Office 169

Rysunek A.4. Menu Chmury SGH


Źródło: konto testowe Działu Infrastruktury Informatycznej SGH.

Menu z  aplikacjami dostępnymi on‑line w  OneDrive przestawiono na ry‑


sunku A.5.

Rysunek A.5. Wybrane menu OneDrive w Chmurze SGH


Źródło: konto testowe Działu Infrastruktury Informatycznej SGH.

Aplikacje dostępne on‑line w Chmurze SGH są identyczne jak w darmowej wersji


OneDrive, tak więc osobom, które używają OneDrive na smartphonach z Windows
Mobile, korzystanie z Chmury SGH nie powinno sprawiać większych problemów.

Rysunek A.6. Zestawienie wstążki Excela Online z Chmury SGH i OneDrive


Źródło: konto testowe Działu Infrastruktury Informatycznej SGH i konto OneDrive autora.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
170   Aneks 1.  Przegląd aplikacji biurowych alternatywnych wobec Microsoft Office

Niewątpliwą zaletą Chmury SGH jest dostępna powierzchnia dyskowa 75 GB,


którą student może wykorzystać nie tylko do przechowywania plików z zajęć na
Uczelni, lecz także prywatnych zdjęć, filmów i muzyki.
Ponadto coraz więcej aplikacji instalowanych na urządzeniach przenośnych ma
możliwość integracji z wirtualnymi dyskami, np. Box, DropBox, iCloud, OneDrive,
automatycznie synchronizującymi pliki pomiędzy urządzeniami zalogowanymi do
danego konta.

Oprogramowanie przenośne
System operacyjny live inaczej określany Live‑CD jest to system operacyjny
uruchamiany z płyty CD/DVD lub pamięci flash i rezydujący w pamięci RAM. Sys‑
tem taki nie wymaga instalacji na dysku twardym, w związku z tym unika się tego
żmudnego procesu. System operacyjny live podczas uruchamiania konfiguruje się
na potrzeby dostępnego sprzętu komputerowego, w związku z tym można przete‑
stować hardware wybraną dystrybucją, np. Linuxa, nie uszkadzając zainstalowanego
na dysku systemu Windows ani jakiegokolwiek innego. Daje to potencjalną korzyść
korzystania z systemu niezależnie od ustawień fizycznego komputera, na którym
pracujemy. Systemy operacyjne live mogą spełniać specjalistyczne funkcje, takie
jak: odtwarzacza multimediów, podręcznego zestawu diagnostycznego lub nawet
elementu zaawansowanej platformy modelowania i symulacji, np. wykorzystywanego
w LabIIiGC™20.
Z punktu widzenia pracy biurowej system operacyjny Linux live ma tę za‑
letę, że są w nim najczęściej zainstalowane pakiety biurowe oparte na OpenOffice.
Do popularnych systemów Linux live należy Knoppix, Ubuntu, OpenSuse. Pracując
mobilnie, warto mieć przy sobie płytę CD/DVD lub pamięć flash z ulubionym sys‑
temem operacyjnym live. Może on być wykorzystany w przypadku awarii systemu
operacyjnego zainstalowanego na komputerze, a także umożliwia dostęp do danych
na nim zapisanych.
Aplikacje przenośne (ang. portable application, portable app) – programy, które
nie wymagają instalacji. W związku z tym mogą być uruchamiane na dowolnym
komputerze i przenoszone na nośnikach typu dyskietka, CD/DVD lub pendrive.
Do najbardziej popularnych projektów należą PortableApps.com i U3.
Dzięki tego typu rozwiązaniom użytkownik może przenosić nie tylko swoje
pliki, lecz także aplikacje. Bardzo przydatny może być przenośny program pocztowy

20  LabIIiGC™ – Wirtualne Laboratorium Instytutu Informatyki i Gospodarki Cyfrowej w Kolegium

Analiz Ekonomicznych Szkoły Głównej Handlowej w Warszawie.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
Aneks 1.  Przegląd aplikacji biurowych alternatywnych wobec Microsoft Office 171

sprawdzający wszystkie posiadane skrzynki, przenośna przeglądarka internetowa


z zapisaną historią przeglądanych stron lub ulubionymi stronami, klient ftp, klient
zdalnego pulpitu, edytor baz danych, gry i pakiety biurowe OpenOffice.
Reasumując: w sieci Internet można zapoznać się z wieloma różnymi porówna‑
niami, ocenami i opisami pakietów biurowych. Najczęściej porównywanym pakietem
jest MS Office z dostępnymi aplikacjami (tabela A.3).

Tabela A.3. Porównanie przykładowych funkcji wybranych pakietów biurowych


Nazwa Pakietu
Microsoft Open Office.
Aplikacje Pakietu iWork Lotus Sympony kOffice Star Office
Office org
Edytor tekstu Word Writer Pages Documents kWord StarWriter
Arkusz Excel Calc Number Spreadsheets KSpread StarCalc
kalkulacyjny
Prezentacje PowerPoint Impress Keynote Presentation kPresentes StarImpress
Outlook, brak Mail brak Kontact brak
E‑mail
Entourage
Schematy MS Visio Draw brak brak Kivio, Kugar StarDraw
organizacyjne kChart
Grafika MS Visio Draw brak brak Krita, Karbon StarDraw
Edytor formuł Equation Editor Math brak brak kFormula StarMath
Baza danych Access Base Bento brak Kexi StarBase
Zarządzanie MS Project brak brak brak kPlato brak
projektami
Źródło: opracowanie własne na postawie materiałów Stowarzyszenia Integracji Stołecznej Komunikacji.

Porównanie możliwości oferowanych w ramach samego arkusza kalkulacyjnego


prowadzi do wniosku, że alternatywne aplikacje dostępne w sieci, choć są mniej
doskonałe, mogą być w wielu zakresach substytutami MS Office (tabela A.4).

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
172   Aneks 1.  Przegląd aplikacji biurowych alternatywnych wobec Microsoft Office

Tabela A.4. Zestawienie popularnych arkuszy kalkulacyjnych w MS Office 2010,


LibreOffice i Google Docs
Funkcja programu MS Office Excel LibreOffice Calc Google Docs Arkusze
Wyszukiwanie/zamiana tekstu możliwe możliwe możliwe
Blokowanie wierszy/kolumn możliwe możliwe możliwe
Grupowanie wierszy/kolumn możliwe możliwe niemożliwe
Ukrywanie wierszy/kolumn możliwe możliwe możliwe
Obsługiwane formuły dużo dużo 5, pozostałe trzeba
wprowadzać ręcznie
Autouzupełnianie formułami możliwe możliwe możliwe
Śledzenie formuł możliwe możliwe niemożliwe
Formatowanie warunkowe możliwe możliwe możliwe
Podświetlanie komórek użytych w formułach możliwe możliwe możliwe
Gotowe style tabel dużo mało brak
Rodzaje wykresów bardzo dużo dużo dość dużo
Formatowanie wykresów dużo opcji dużo opcji mało opcji
Zawijanie tekstu w komórkach możliwe możliwe możliwe
Automatyczne dopasowanie wielkości komórek możliwe ręcznie dla każdej ręcznie dla każdej
kolumny i wiersza kolumny i wiersza
Zmiana orientacji tekstu w komórkach możliwe możliwe niemożliwe
Sprawdzanie pisowni jest jest jest
Sortowanie danych możliwe możliwe możliwe
Formaty danych w komórkach dużo dużo dużo
Szablony diagramów dużo brak brak
Szablony skoroszytów dużo brak dużo społecznościowych
Kilka arkuszy w skoroszycie tak tak tak
Odwołania do innych arkuszy/skoroszytów możliwe możliwe możliwe/niemożliwe
Komentowanie komórek możliwe możliwe możliwe
Ustawianie obszaru wydruku możliwe niemożliwe niemożliwe
Zmiana powiększenia dokumentu możliwe możliwe niemożliwe
Obsługa makr jest jest brak
Tworzenie tabel przestawnych możliwe możliwe możliwe
Zabezpieczenie przed edycją/otwieraniem możliwe możliwe możliwe/niemożliwe
Widoki dokumentów dużo mało mało
Ręczne rysowanie obramowania możliwe niemożliwe niemożliwe
Style obramowania komórek bardzo dużo dużo dość dużo
Specjalne opcje wklejania dużo opcji dużo opcji mało opcji
Przenoszenie komórek metodą „przeciągnij możliwe możliwe możliwe
i upuść”
Źródło: opracowanie własne na postawie http://www.komputerswiat.pl/testy/programy/pakiety-biurowe/2011/12/
porownanie-pakietow-biurowych-office-2010-libreoffice-i-dokumenty-google.aspx, stan z dnia 20.05.2014.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==
Aneks 1.  Przegląd aplikacji biurowych alternatywnych wobec Microsoft Office 173

Decydując się na wykorzystanie pakietów aplikacji biurowych dostępnych on‑line,


warto porównać ich możliwości funkcjonalne. Przykładowe zestawienie produktów
programowych on‑line oferowanych przez Microsoft i Google zawiera tabela A.5.

Tabela A.5. Porównanie wybranych pakietów dostępnych on‑line


Office OnLine Dokumenty Google
Elementy pakietu Word Online Dokument
Excel Online Prezentacja
PowerPoint Online Arkusz
OneNote Online
SharePoint Workspace
Możliwość otwierania Word Online: .doc, .docx, .dot, .dotx, .dotm, .docm, Dokument: .gdoc, .doc, .docx
formatów z poziomu .txt, .rtf. Prezentacja: .gslides
aplikacji Excel Online: .xls, .xlsx, .xlt, .xltx, .xlsm, .xltm. Arkusz: .gsheet
PowerPoint Online: .ppt, pptx, .pps, .ppsx, pptm,
.ppsm.
OneNote Online: .one
Możliwość edycji .txt, .pptx, .pptm, .docx, .docm, .xlsx, .xlsm, .one. .gdoc, .gsheet
z poziomu aplikacji
Możliwość tworzenia .docx, .xlxs, .one. .gdoc, .gsheet
nowych dokumentów
Praca off‑line tak .gdoc
Szablony Word Online, Excel Online nie
Dodawanie komentarzy tak tak
Nadawanie i edycja Przez OneDrive tak
uprawnień
Praca na wspólnych tak tak
dokumentach
Dostępność tak tak
w smartphonie
Szybki dostęp do tak tak
dokumentów
Źródło: Na postawie materiałów z http://antyapps.pl/porownanie-darmowych-pakietow-biurowych-dokumenty-
google-vs-office-mobile, stan z dnia 20.05.2014.

Plik zabezpieczony watermarkiem jawnym i niejawnym: 10880303A3961313


##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

##7#52#aMTA4ODAzMDNBMzk2MTMxMw==

You might also like