Slow7 - Officehttp://slow7.pl/office2022-04-12T17:06:31+00:00Joomla! - Open Source Content ManagementExcel w zadaniach. Funkcje tekstowe i wyszukujące.2017-07-14T09:12:48+00:002017-07-14T09:12:48+00:00http://slow7.pl/office/item/156-excel-w-zadaniach-funkcje-tekstowe-i-wyszukujacepikolo[email protected]<div class="K2FeedImage"><img src="http://slow7.pl/media/k2/items/cache/15d43aef6c8a5134e1fc00a9c98b8ab0_S.jpg" alt="Excel w zadaniach. Funkcje tekstowe i wyszukujące." /></div><div class="K2FeedIntroText"><p>Pomimo, iż arkusz kalkulacyjny został stworzony aby uprościć operacje związane z analizą i przetwarzaniem danych liczbowych to zawiera on szereg funkcji związanych z tekstem oraz wyszukiwaniem. Funkcje te typowo nie są związane z operacjami matematycznymi lecz pośrednio je wspomagają. Poznanie ich przeznaczenia i sposobu działania wiele spraw ułatwia gdyż operując na liczbach trzeba je w jakiś sposób opisać.</p>
</div><div class="K2FeedFullText">
<p> </p>
<p>Wpis rozpoczniemy od omówienia funkcji <strong>DŁ()</strong> (zaczynamy od tych najprostszych, by w miarę zgłębianie tematu przejść do tych bardziej zaawansowanych).</p>
<p> </p>
<p>Funkcja zwraca liczbę znaków, z których składa się tekst wskazany w argumencie funkcji. Argumentem może być konkretny ciąg zbudowany z liczb bądź liter lub adres komórki w której dana fraza się znajduje. Do zliczanych znaków włączane są również znaki interpunkcyjne oraz odstępy.</p>
<p> </p>
<p>Składnia funkcji jest bardzo prosta i ma postać: <strong>DŁ(tekst/adres_komórki)</strong></p>
<p> </p>
<p>Argument:<strong> tekst/adres_komórki</strong> określa tekst bądź adres komórki w której tekst został wpisany, którego długość ma zostać określona. Spacje są liczone jako znaki.</p>
<p> </p>
<p>Przykład zastosowania funkcji: <strong>DŁ()</strong> zaprezentowano na rysunku poniżej. W lewej kolumnie znajdują się wpisane frazy zaś po prawej została wyliczona ilość znaków. Jak można zauważyć ilość znaków z których są zbudowane dane ciągi została wyliczona prawidłowo. Choć w przypadku ostatniego przykładu wydawać by się mogło, że jest błąd gdyż przecież wyraz „spacja” zbudowany jest z 6 liter a nie 7. Taki stan rzeczy spowodowany jest tym, że po wyrazie „spacja” został dodany jeden znak właśnie w formie spacji - 6 liter plus spacja = 7.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image1.png" alt="image1" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Funkcję DŁ() możemy wykorzystać np. w zbudowaniu funkcji, która będzie Nam sprawdzać czy wpisany numer, który mus się składać z określonej liczby znaków (PESEL, NIP, REGON) został wpisany prawidłowo. Poniżej przykład w którym za pomocą formuły: <strong>=JEŻELI(DŁ(adres_komórki)=11;"OK";"BŁĄD")</strong> sprawdzamy poprawność numeru PESEL. Numer ten składa się z 11 liczb, brak (lub też pojawienie się dodatkowej) liczby powoduje wypisanie komunikatu <strong>BŁĄD</strong> Jeśli numer PESEL jest prawidłowy pojawia się słowo <strong>OK</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image2.png" alt="image2" width="700" height="304" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Te samo zadanie można wykonać z wykorzystaniem reguł formatowania warunkowego. Poprawnie zbudowane numery PESEL są zaznaczane na żółto.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image3.png" alt="image3" width="700" height="282" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>W sytuacjach w których z podanego ciągu tekstowego musimy wyodrębnić jakąś jego część możemy wykorzystać funkcję: <strong>FRAGMENT.TEKSTU()</strong> Ogólna składnia funkcji wygląda następująco: <strong>FRAGMENT.TEKSTU(tekst;liczba_początkowa;liczba_znaków)</strong></p>
<p> </p>
<p>Zadaniem funkcji jest zwrócenie znaku bądź ciągu znaków zawartych w dowolnym innym tekście, pobrany ciąg liter bądź cyfr może rozpoczynać się od określonej pozycji tekstu bazowego i składać się z określonej liczby znaków. Do znaków tych zaliczamy litery, cyfry oraz znaki interpunkcyjne.</p>
<p> </p>
<p>Pierwszy argument definiuje <strong>tekst</strong> bądź <strong>adres komórki</strong> w której ten tekst się znajduje, z którego ma zostać wyodrębniony znak lub ciąg znaków. Drugi parametr (<strong>liczba_początkowa</strong>) określa numer pozycji liczonej od lewej strony od której ma rozpocząć się pobieranie znaków. Ostatni argument <strong>liczba_znaków</strong> określa liczbę wyodrębnianych znaków.</p>
<p> </p>
<p>Poniżej przykład użycia omawianej funkcji - z lewej strony zostały zapisane nazwy miejscowość z prawej zaś wyodrębniony ciąg - użyta formuła: =<strong>FRAGMENT.TEKSTU(D4;4;8)</strong> nakazuje wypisać 8 znaków począwszy od 4 znaku. Jak można zaobserwować znak spacji wliczany jest do wyodrębnianych znaków.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image4.png" alt="image4" width="700" height="304" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Praktyczny przykład wykorzystujący funkcję <strong>FRAGMENT.TEKSTU()</strong> został przedstawiony poniżej. Przypuśćmy, że posiadamy bazę faktur, których zasada numerowania opiera się na wzorcu: <strong><numer_kolejny>/<kontrahent>/<rok> </strong>przy czym każde z pól zawiera następującą liczbę znaków: <strong>5/3/4 </strong>Potrzebujemy z tak przygotowanej bazy wyodrębnić nazwę kontrahentów. Aby zadanie to wykonać została użyta następująca formuła: <strong>=FRAGMENT.TEKSTU(J18;7;3)</strong> która nakazuje od 7 znaku włącznie pobrać 3.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image5.png" alt="image5" width="700" height="505" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>W operacjach związanych z tekstem bardzo często wykorzystywana jest funkcja: <strong>LEWY()</strong> oraz funkcja bliźniak: <strong>PRAWY()</strong>.</p>
<p> </p>
<p>Funkcja: <strong>LEWY()</strong> zwraca określoną liczbę znaków liczoną od lewej strony ciągu liczbowego bądź tekstowego.</p>
<p> </p>
<p>Zaś funkcja: <strong>PRAWY()</strong> jak łatwo się domyśleć zwraca określoną liczbę znaków ciągu lecz tym razem znaki są liczone od strony prawej.</p>
<p> </p>
<p>Składnia funkcji wygląda następująco: <strong>LEWY(tekst/adres_komórki;liczba_znaków)</strong> oraz <strong>PRAWY(tekst/adres_komórki;liczba_znaków)</strong></p>
<p> </p>
<p>Zastosowanie obu funkcji zostało zaprezentowane na zrzucie poniżej. W prezentowanym przykładzie z puli nazwisk wyodrębniono trzy pierwsze litery (formuła: <strong>=LEWY(adres_komórki;3</strong>) oraz trzy ostatnie litery nazwiska (formuła: <strong>=PRAWY(adres_komórki;3</strong>).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image6.png" alt="image6" width="700" height="221" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Praktyczne zastosowanie funkcji możemy zobrazować na przykładzie w którym to potrzebujemy na bazie imienia i nazwiska stworzyć nazwę logowania opierającą się na schemacie: 3 litery imienia + 3 litery nazwiska.</p>
<p> </p>
<p>Aby zadanie te zrealizować została użyta dwukrotnie funkcja: LEWY() w połączeniu z symbolem łączenia zawartości dwóch komórek (&) - z zawartości dwóch komórek (imię i nazwisko) zostały pobrane 3 pierwsze znaki, które w następnym kroku zostały ze sobą połączone. Formuła, która realizuje powyższe zadanie ma postać: <strong>=LEWY(adres_komórki;3)&LEWY(adres_komórki;3)</strong></p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image7.png" alt="image7" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>No to jeszcze jeden mały przykład. Posiadamy bazę imion i nazwisk niestety są one poprzedzone tytułami naukowymi a my potrzebuje tylko imię i nazwisko. Aby z tak zbudowanego ciągu wyodrębnić samo imię i nazwisko z pominięciem tytułu naukowego należy użyć takiej o to formuły: <strong>=JEŻELI(LUB(LEWY(V16;4)="inż.";LEWY(V16;3)="mgr";LEWY(V16;2)="dr");PRAWY(V16;DŁ(V16)-ZNAJDŹ(" ";V16));V16)</strong></p>
<p> </p>
<p>Formuła ta działa w ten sposób, że przy pomocy funkcji JEŻELI() w połączeniu z funkcją LUB() oraz LEWY() sprawdzane jest czy występują tytuły naukowe: inż., mgr oraz dr jeśli ten warunek jest spełniony wyliczana jest długość znaków całego ciągu pomniejszona o liczbę pozycji w której występuje znak spacji. Tak wyliczona długość ciągu jest wyodrębniona za pomocą funkcji PRAWY(). Jeśli tytuł naukowy nie występuje zawartość komórki zostaje powielona. W formule tej została użyta funkcja ZNAJDŹ(), której opis działania znajdziesz w dalszej części wpisu.</p>
<p> </p>
<p>Opis funkcji JEŻELI() oraz LUB() znajdziesz w tych wpisach: <a href="http://slow7.pl/office/item/22-excel-w-zadaniach-funkcja-jezeli">Excel w zadaniach. Funkcja JEŻELI</a> oraz <a href="http://slow7.pl/office/item/21-excel-w-zadaniach-funkcja-oraz-i-lub">Excel w zadaniach. Funkcja ORAZ i LUB</a></p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image8.png" alt="image8" width="700" height="185" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Trzy następne funkcje są bardzo proste a ich zadaniem jest zamiana liter małych na wielkie i odwrotnie.</p>
<p> </p>
<p>Aby każde słowo w komórce zostało zamienione na wielkie litery należy użyć funkcji: <strong>LITERY.WIELKIE(adres_komórki)</strong> Poniżej przykład w którym imiona zapisane w komórkach od D5 do D10 zostały zamienione na wielkie litery (komórki od G5 do G10).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image9.png" alt="image9" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>W sytuacji odwrotnej używamy funkcji: <strong>LITERY.MAŁE(adres_komórki) </strong>Analogiczny przykład z tym powyżej lecz tym razem imiona zostają zapisane za pomocą małych liter.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image10.png" alt="image10" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Trzecią z funkcji odpowiedzialną za zmianę wielkości liter jest funkcja: <strong>Z.WIELKIEJ.LITERY(adres_komórki)</strong> która to pierwszą literę każdego słowa zamienia na wielką literę, zaś wszystkie pozostałe litery tworzące dany ciąg są literami małymi.</p>
<p> </p>
<p>O to przykład w którym przy pomocy funkcji Z.WIELKIEJ.LITERY() imiona i nazwiska zostały zmienione tak by rozpoczynały się od wielkiej litery (zgodnie z zasadami ortografii). Imiona i nazwiska zapisane mały literami zostały pobrane z kolumny D oraz E i połączone ze sobą przy pomocy symbolu <strong>&</strong> (pomiędzy imieniem i nazwiskiem dodatkowo został dodany znak spacji) - formuła realizująca to zadanie przyjmie postać: <strong>Z.WIELKIEJ.LITERY(D37)&" "&Z.WIELKIEJ.LITERY(E37)</strong></p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image11.png" alt="image11" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Komórka D37 zawierała tekst <strong>jan</strong> użycie formuły spowodowało zwrócenie tekstu <strong>Jan</strong>. Użycie formuły na komórce w której zawarty byłby tekst <strong>pan jan</strong> spowoduje zwrócenie ciągu <strong>Pan Jan</strong>. Użyta spacja w ciągu tekstowym powoduje, że słowo zawarte po spacji również rozpoczynane jest od wielkiej litery. Taką samą sytuację mamy w przypadku użycia znaku apostrofu (słowo d'artagnan).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image12.png" alt="image12" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Znając już funkcję LEWY(), PRAWY(), LITERY.WIELKIE, LITERY.MAŁE oraz DŁ() zadanie zapisania wyrazu zaczynającego się od wielkiej litery z pominięcie funkcji Z.WIELKIEJ.LITERY() można by było zrealizować za pomocą formuły użytej na poniższym zrzucie: <strong>=LITERY.WIELKIE(LEWY(D28))&PRAWY(LITERY.MAŁE(D28);DŁ(D28)-1) </strong>Formuła pobiera pierwszy lewy znak z imienia i zamienia go na wielki (LITERY.WIELKIE(LEWY(D28))) a następnie obliczana jest długość całego ciągu tekstowego minus znak pierwszy (DŁ(D28)-1), która w kroku kolejnym zamienia pozostałe litery na małe (PRAWY(LITERY.MAŁE(D28)) Tak oba powstałe ciągi są ze sobą łączone (symbol &).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image13.png" alt="image13" width="700" height="203" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Tak wiem, że przykład przedstawiony powyżej jest pewnego rodzaju „przekombinowaniem” ale pokazuje fajnie jak poznane do tej pory funkcję można ze sobą łączyć. Czytelniku potraktuj przedstawiony przykład jak łamigłówkę i postaraj zrozumieć jak przytoczona formuła działa.</p>
<p> </p>
<p>W pracy z tekstem bardzo często zdarzają się takie sytuacje, w których trzeba część jakiegoś większego tekstu zastąpić innym. Do sytuacji takiej dochodzi najczęściej w przypadku importu danych np. data z importowanego pliku ma inny format od tego oczekiwanego - np. importowana data ma postać 12/02/1980 a my potrzebujemy mieć ją zapisaną w postaci 12-02-1980. Do przekształcenia znaku <strong>/ </strong>na <strong>-</strong> możemy użyć narzędzia <strong>Zamień</strong> (polecenie Narzędzia główne/Edycja/Znajdź i zaznacz/Zamień) bądź wykorzystać rozwiązanie oparte na formule.</p>
<p> </p>
<p>Do zamiany jednego fragmentu tekstu w drugi możemy użyć następujących dwóch funkcji:</p>
<p> </p>
<p>funkcja: <strong>PODSTAW(tekst;stary_tekst;nowy_tekst;[wystąpienie_liczba])</strong> - tą funkcję należy wybrać wtedy gdy znany Nam jest znak (bądź ich ciąg) lecz niewiadomą jest jego pozycja.</p>
<p> </p>
<p>argumenty funkcji:</p>
<p style="padding-left: 2em;"><strong>tekst</strong> - tekst lub odwołanie do komórki zawierającej tekst, w którym zostaną zastąpione znaki,</p>
<p style="padding-left: 2em;"><strong>stary_tekst</strong> - łańcuch, który zostanie zastąpiony,</p>
<p style="padding-left: 2em;"><strong>nowy_tekst</strong> - nowy łańcuch, który pojawi się w miejscu ciągu zdefiniowanego przez argument stary_tekst,</p>
<p style="padding-left: 2em;"><strong>wystąpienie_liczba</strong> - jest to argument opcjonalny. Definiuje, które wystąpienie argumentu stary_tekst zostanie zastąpione przez argument nowy_tekst.</p>
<p> </p>
<p>Poniżej zostały przedstawione trzy przykłady użycia funkcji: <strong>PODSTAW()</strong></p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image14.png" alt="image14" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Przykład 1</strong>: formuła: <strong>=PODSTAW(D5;"2015";"2016") </strong>- zostaje wykonana zamiana roku 2015 na 2016,</p>
<p> </p>
<p><strong>Przykład 2</strong>: <strong>=PODSTAW(D10;" ";"")</strong> - zostają usunięte znaki spacji,</p>
<p> </p>
<p><strong>Przykład 3</strong>: <strong>=PODSTAW(D15;"r";"R";2)</strong> - zostaje zamienione drugie wystąpienie małej litery r na duże R.</p>
<p> </p>
<p>funkcja: <strong>ZASTĄP(stary_tekst;nr_poz_pocz;liczba_znaków;nowy_tekst)</strong> - zamienia część ciągu tekstowego na inny ciąg tekstowy z uwzględnieniem określonej liczby znaków.</p>
<p> </p>
<p>Argumenty funkcji:</p>
<p style="padding-left: 2em;"><strong>stary_tekst</strong> - tekst, który ma zostać zamieniony,</p>
<p style="padding-left: 2em;"><strong>nr_poz_pocz</strong> - pozycja znaku w tekście argumentu stary_tekst, w której ma nastąpić zamiana na tekst argumentu nowy_tekst,</p>
<p style="padding-left: 2em;"><strong>liczba_znaków</strong> - liczba znaków w tekście argumentu stary_tekst, które funkcja ZASTĄP() ma zamienić na tekst argumentu nowy_tekst,</p>
<p style="padding-left: 2em;"><strong>nowy_tekst</strong> - tekst, na który zostaną zamienione znaki w tekście argumentu stary_tekst.</p>
<p> </p>
<p>Poniżej przykład zastosowania opisywanej funkcji. W komórce F21 została wprowadzona formuła: <strong>=ZASTĄP(D21;6;1;"")</strong>, której zadaniem jest zastąpienie 6 znaku w komórce D21. Na wskutek działania formuły znak ukośnika zostaje skasowany.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image15.png" alt="image15" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Oprócz wykonywania operacji zastąpienia jednego tekstu drugim w przypadku pracy z danymi tekstowymi bardzo często dochodzi do sytuacji w której musimy dokonać wyszukania określonego ciągu znaków. W realizacji tego zadania pomogą Nam funkcję: <strong>ZNAJDŹ()</strong> oraz <strong>SZUKAJ.TEKST()</strong></p>
<p> </p>
<p>Funkcje ZNAJDŹ() oraz SZUKAJ.TEKST() umożliwiają określenie początkowej pozycji szukanego ciągu znaków, będącego częścią innego łańcucha.</p>
<p> </p>
<p>Funkcja ZNAJDŹ(), której ogólna składnia prezentuje się następująco: <strong>ZNAJDŹ(tekst_szukany;w_tekście;[nr_poz_pocz])</strong> zwraca pozycję początkową jednego ciągu tekstowego w drugim ciągu tekstowym. Funkcja opcjonalnie umożliwia definicję znaku, od którego ma rozpocząć się wyszukiwanie. Funkcja ta rozróżnia wielkie i małe litery. Nie można za jej pomocą przeprowadzić wyszukiwania wieloznacznego.</p>
<p> </p>
<p>Argumenty funkcji to:</p>
<p style="padding-left: 2em;"><strong>tekst_szukany</strong> - tekst, który ma zostać odnaleziony,</p>
<p style="padding-left: 2em;"><strong>w_tekście</strong> - tekst/adres komórki przeszukiwania,</p>
<p style="padding-left: 2em;"><strong>nr_poz_pocz</strong> - parametr opcjonalny, definiujący znak, od którego ma się rozpocząć wyszukiwanie (domyślnie w przypadku braku definicji tego argumentu przyjmuje się wyszukiwanie od pierwszego znaku).</p>
<p> </p>
<p>Dwa przykłady pokazujące działanie funkcji ZNAJDŹ() zostały zaprezentowane na zrzucie poniżej.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image16.png" alt="image16" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Przykład 1</strong>: formuła: <strong>=ZNAJDŹ("abc";C20) </strong>- zostaje przeprowadzone wyszukanie ciągu liter: <strong>abc</strong> Po wywołaniu formuły zwracana jest wartość jego pozycji. Jak można zauważyć wielkość liter ma znaczenie gdyż w sytuacji wystąpienia łańcucha liter <strong>ABC</strong> zwracany jest błąd <strong>#ARG!</strong> (zresztą tak jak i w innych przypadkach),</p>
<p> </p>
<p><strong>Przykład 2</strong>: <strong>=FRAGMENT.TEKSTU(C30;1;ZNAJDŹ("-";C30;1)-1) </strong>- w połączeniu z funkcją FRAGMENT.TEKSTU() zostaje wykonana operacja wyodrębnienia pierwszego członu numeru partii. Funkcja ZNAJDŹ() wyszukuje pozycję wystąpienia pierwszego znaku:<strong> -</strong> (w tym przypadku zwracana jest wartość 4) i od tej pozycji jest odejmowane 1 (czwarta pozycja znaku minus jeden = 3) w kolejnym kroku tak wyliczona wartość jest przekazywana do funkcji FRAGMENT.TEKSTU().</p>
<p> </p>
<p>Funkcja SZUKAJ.TEKST() podobnie jak wyżej przedstawiona ZNAJDŹ() zwraca numer znaku, który rozpoczyna ciąg znaków znaleziony w innym łańcuchu znaków. W przypadku tej funkcji również można określić pozycję znaku, od którego ma być rozpoczęte wyszukiwanie, lecz funkcja ta nie rozróżnia wielkich i małych liter, ale rekompensatą jest możliwość przeprowadzenia wyszukania wieloznacznego.</p>
<p> </p>
<p>Składnia funkcji jest następująca: <strong>SZUKAJ.TEKST(tekst_szukany;w_tekście;[nr_poz_pocz])</strong></p>
<p> </p>
<p>Parametry:</p>
<p style="padding-left: 2em;"><strong>tekst_szukany</strong> - szukany ciąg znaków,</p>
<p style="padding-left: 2em;"><strong>w_tekście</strong> - przeszukiwany tekst bądź adres komórki w której tekst się znajduje,</p>
<p style="padding-left: 2em;"><strong>nr_poz_pocz</strong> - parametr opcjonalny, określający numer znaku od którego ma nastąpić przeszukiwanie.</p>
<p> </p>
<p>Przykłady użycia funkcji SZUKAJ.TEKST() zostały pokazana na zrzucie poniżej.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image17.png" alt="image17" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Przykład 1</strong>: formuła: <strong>=SZUKAJ.TEKST("abc";I20) </strong>- zostaje przeprowadzone wyszukanie ciągu liter: <strong>abc</strong> Po wywołaniu formuły zwracana jest wartość jego pozycji. Jak można zauważyć wielkość liter nie ma znaczenie gdyż w każdej sytuacji niezależnie od użytej wielkości liter zwracana jest pozycja wystąpienia szukanego ciągu. W przypadku wystąpienia braku dopasowania zwracany jest błąd <strong>#ARG!</strong></p>
<p> </p>
<p><strong>Przykład 2</strong>: <strong>=SZUKAJ.TEKST("?-?";I30;1) </strong>- formuła wyszukuje wystąpienie znaku myślnika (-) Do jej zbudowania został wykorzystany symbol wyszukiwania wieloznacznego: znak zapytania (?). Przy budowaniu formuły z użyciem funkcji SZUKAJ.TEKST() można użyć dwóch symboli umożliwiających przeprowadzenie wyszukania wieloznacznego:</p>
<ul>
<li style="padding-left: 4em;"><strong>znak zapytania (?)</strong> - zastępuje jeden dowolny znak,</li>
<li style="padding-left: 4em;"><strong>gwiazdka (*)</strong> - zastępuje dowolną sekwencję znaków.</li>
</ul>
<p> </p>
<p>W sytuacji w której wyszukanym symbolem ma być znak zapytania bądź gwiazdki umieszczamy przed nim znak tyldy (~).</p>
<p> </p>
<p>Kolejną funkcją wspomagającą Nas w wyszukiwaniu zawartości jest funkcja: <strong>PODAJ.POZYCJĘ()</strong> Funkcja ta bardzo często łączona jest z funkcją: <strong>INDEKS()</strong>.</p>
<p> </p>
<p>Rozpoczniemy od omówienia funkcji INDEKS() a następnie przejdziemy do funkcji PODAJ.POZYCJĘ() zaś w kroku kolejnym wykonamy zadanie w którym wykorzystamy obie te funkcje.</p>
<p> </p>
<p>Składnia funkcji INDEKS() wygląda następująco: <strong>INDEKS(tablica;nr_wiersza;[nr_kolumny])</strong> a jej zadaniem jest zwrócenie wartości komórki znajdującej się na przecięciu zdefiniowanego numeru wiersza i numeru kolumny.</p>
<p> </p>
<p>Składnia funkcji INDEKS() obejmuje następujące argumenty:</p>
<p style="padding-left: 2em;"><strong>tablica</strong> - zakres komórek,</p>
<p style="padding-left: 2em;"><strong>nr_wiersza</strong> - wskazuje wiersz tablicy,</p>
<p style="padding-left: 2em;"><strong>nr_kolumny</strong> - wskazuje kolumnę tablicy.</p>
<p> </p>
<p>Jeśli argument tablica zawiera tylko jeden wiersz lub jedną kolumnę, to odpowiednio argument nr_wiersza lub nr_kolumny jest argumentem opcjonalnym.</p>
<p> </p>
<p>Przyjrzyjmy się zatem przedstawionemu poniżej przykładowi. Do komórki V7 została wprowadzona formuła: <strong>=INDEKS(Q6:T9;2;3)</strong> efektem wprowadzonego polecenia jest uzyskanie wartości: <strong>b3</strong> Stało się tak gdyż wartość: b3 znajduje się w komórce, która leży na przecięciu drugiego wiersza (w zdefiniowanej tabeli został pominięty nagłówek tabeli) i trzeciej kolumny w tablicy obejmującej komórki od Q6 do T9</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image18.png" alt="image18" width="700" height="271" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Tak więc wiemy jak już działa funkcja INDEKS() wykorzystajmy ją w jakimś konkretnym przykładzie. Przypuśćmy, że mamy bazę części obejmującą ich sprzedaż w rozbiciu na lata i chcemy sprawdzić ile sztuk produktu udało się sprzedać. Przykład przeprowadzimy na produkcie: nakrętka m10 i roku 2013.</p>
<p> </p>
<p>Poniżej tabeli zostały dodane trzy pozycje:</p>
<p style="padding-left: 2em;"><strong>LP</strong> - numer kolejny produktu, który tożsamy jest z numerem wiersza</p>
<p style="padding-left: 2em;"><strong>Rok</strong> - numer kolumny interesującego nas roku</p>
<p style="padding-left: 2em;"><strong>Sztuki</strong> - wynik czyli ilość sprzedanych sztuk.</p>
<p> </p>
<p>Chcąc poznać ilość sztuk produktu, która została sprzedana w pole <strong>LP</strong> została wpisana wartość 6 gdyż nakrętka m10 znajduje się w szóstym wierszu tabeli (nagłówek tabeli nie został wykorzystany) zaś w polu <strong>Rok </strong>pojawiła się wartość 5 gdyż rok 2013 to piąta kolumna tabeli.</p>
<p> </p>
<p>Formuła wyszukująca ilość sztuk towaru przyjęła postać: <strong>=INDEKS(F6:L15;H20;H21)</strong></p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image19.png" alt="image19" width="700" height="398" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p> </p>
<p>Na tym etapie korzystanie z tak przygotowanego zestawienia jest to powiedzmy sobie szczerze - mało intuicyjne i mało wygodne gdyż by poznać wartość musimy ręcznie ustalić wartość wiersza i kolumny. Ale bez obaw do przykładu zaraz wrócimy.</p>
<p> </p>
<p>Drugą wspomnianą przeze mnie funkcją jest funkcja: PODAJ.POZYCJĘ()</p>
<p> </p>
<p>Jej składnia przedstawia się następująco: <strong>PODAJ.POZYCJĘ(szukana_wartość;przeszukiwana_tablica;[typ_porównania])</strong></p>
<p> </p>
<p>W składni funkcji PODAJ.POZYCJĘ występują następujące argumenty:</p>
<p style="padding-left: 2em;"><strong>szukana_wartość</strong> - szukana wartość, której przeszukiwanie następuje w zdefiniowanym zakresie określonym przez parametr przeszukiwana_tablica. Parametr ten może być definiowany jako: liczba, tekst lub wartość logiczna a także stanowić odwołanie do innej komórki,</p>
<p style="padding-left: 2em;"><strong>przeszukiwana_tablica</strong> - zakres komórek w których ma nastąpić przeszukanie,</p>
<p style="padding-left: 2em;"><strong>typ_porównania</strong> - wartość opcjonalna, określająca sposób w jaki następuje porównanie. Dozwolone wartości to: 1; 0 oraz -1. Wartość domyślna tego argumentu to<strong> 1</strong> co oznacza, że funkcja odszuka największą wartość, która jest mniejsza lub równa wartości szukana_wartość. Wartości argumentu przeszukiwana_tablica muszą być uporządkowane w kolejności rosnącej. Parametr: <strong>0</strong> oznacza wyszukiwanie do pierwszego dopasowania. W tym przypadku wartości w argumencie przeszukiwana_tablica mogą być umieszczone w kolejności dowolnej. Zaś parametr: <strong>-1</strong> nakazuje odszukanie wartości najmniejszej, która jest większa lub równa wartości szukana_wartość. Wartości w argumencie przeszukiwana_tablica muszą być uporządkowane w kolejności malejącej.</p>
<p> </p>
<p>W poniższym przykładzie w komórce V19 została wpisana formuła: <strong>=PODAJ.POZYCJĘ("b3";Q19:T19)</strong> Formuła szuka wartości: <strong>b3</strong> w tablicy zdefiniowanej jako zakres komórek od Q19 do T19 (szary obszar). Wynikiem formuły jest wartość 3 gdyż szukana wartość znajduje się w trzeciej komórce.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image20.png" alt="image20" width="700" height="236" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>W drugim przykładzie dzięki zastosowaniu formuły: <strong>=PODAJ.POZYCJĘ("b3";S18:S21) </strong>wynikiem jest liczba 2 gdyż w tablicy szukana wartość znajduje się w drugiej komórce.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image21.png" alt="image21" width="700" height="236" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>OK to już wiemy jak działają funkcje INDEKS() oraz PODAJ.POZYCJĘ() pora więc wrócić do naszego przykładu z częściami i zdobytą wiedzę wykorzystać w działaniu - przyszła pora aby obie funkcje ze sobą połączyć.</p>
<p> </p>
<p>W komórce H50 znajduje się formuła: <strong>=INDEKS(F34:L43;PODAJ.POZYCJĘ(H48;G34:G43;0);PODAJ.POZYCJĘ(H49;F33:L33;0))</strong> Wygląda skomplikowanie ale rozbijemy ją na części pierwsze i wszystko stanie się jasne.</p>
<p> </p>
<p>Na początek co tak naprawdę formuła wykonuje - zadaniem jej jest podanie (tak jak w przykładzie wyżej) odszukanie ilości sztuk sprzedanego produktu w danym roku (ponownie rok 2013 i nakrętka m10). Lecz tym razem nie wpisujemy numeru wiersza i kolumny tylko numer <strong>danej części</strong> (komórka H48) oraz <strong>rok</strong> (komórka H49).</p>
<p> </p>
<p>Tak więc do komórki H48 została wpisana wartość: <strong>3433</strong> gdyż jest to numer przydzielony produktowi nakrętka m10 oraz do komórki H49 wartość: <strong>2013</strong></p>
<p> </p>
<p>Aby odnaleźć sprzedaną liczbę sztuk detalu do funkcji INDEKS() musimy przekazać wartość parametru: <strong>nr_wiersza</strong> oraz <strong>nr_kolumny</strong> Oba argumenty są uzyskiwane dzięki formule w której została wykorzystana funkcja PODAJ.POZYCJĘ().</p>
<p> </p>
<p>Pierwsza formuła: <strong>PODAJ.POZYCJĘ(H48;G34:G43;0)</strong> powoduje odszukanie pozycji wartości: <strong>3433</strong> w tablicy, której zakres został zdefiniowany od komórki G34 do G43. Typ dopasowania został ustalony na 0 (choć tak naprawdę można by było parametr ten pominąć i przyjąć wartość domyślną gdyż numery części są posortowane w kolejności rosnącej). Numer części jest wartością unikalną (zakładamy, że numer części jest zawsze przypisany tylko jednemu produktowi). Efektem działania tej formuł jest uzyskanie wartości: <strong>6</strong> (wartość w szóstym wierszu tabeli).</p>
<p> </p>
<p>Druga część formuły: <strong>PODAJ.POZYCJĘ(H49;F33:L33;0)</strong> realizuje podobne zadanie lecz w kontekście ustalenia numeru kolumny w której występuje data roku czyli wartość: <strong>2013</strong> Formuła zwraca wartość: <strong>5</strong></p>
<p> </p>
<p>Wykorzystane formuły przekazują wartości do funkcji INDEKS(). Tak więc naprawdę, uproszczając całą formułę jest realizowana funkcja: <strong>=INDEKS(F34:L43;6;5) </strong>Efektem jej jest uzyskanie wartości: <strong>4351</strong> leżącej w szóstym wierszu i piątej kolumnie w tablicy określonej poprzez zakres F34:L43.</p>
<p> </p>
<p>Mam nadzieję, że teraz wszystko wydaje się prostsze.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image22.png" alt="image22" width="700" height="411" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Oprócz funkcji <strong>PODAJ.POZYCJĘ</strong> istnieje jeszcze funkcja <strong>POZYCJA()</strong> a zadaniem tej funkcji jest zwrócenie pozycji zdefiniowanej liczby w odniesieniu do listy wartości. Mówiąc bardziej obrazowo gdybyśmy wykonali operację sortowania listy, pozycja liczby oznaczałaby jej miejsce na liście po sortowaniu.</p>
<p> </p>
<p>Ogólna składnia funkcji wygląda następująco: <strong>POZYCJA(liczba;lista;[lp])</strong></p>
<p> </p>
<p>W składni funkcji POZYCJA() występują następujące argumenty:</p>
<p style="padding-left: 2em;"><strong>liczba</strong> - liczba (bądź adres komórki w której została ona wpisana), której pozycja ma zostać określona,</p>
<p style="padding-left: 2em;"><strong>lista</strong> - tablica albo odwołanie do listy liczb (wartości nie liczbowe zostaną zignorowane).</p>
<p style="padding-left: 2em;"><strong>lp</strong> - parametr opcjonalny - argument określający sposób określania pozycji liczby. Jeżeli argument lp jest równy 0 lub został pominięty, pozycja liczby jest ustalana w oparciu o listę sortowaną w kolejności malejącej. Jeżeli zaś parametr przyjmie wartość 1 stosowane jest sortowanie w kolejności rosnącej.</p>
<p> </p>
<p>Poniżej trzy przykłady użycia funkcji POZYCJA()</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image23.png" alt="image23" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Przykład 1</strong>: formuła: <strong>=POZYCJA(2143;E4:E9)</strong> - naszym zadaniem jest określenie pozycji wyniku Tadeusza Nowaka zakładając, że wygrywa osoba z większą ilością punktów. Wpisując formułę jej wynik zostaje ustalony na 3 - wartość 2143 przy sortowaniu malejącym w zdefiniowanej liście liczb (zakres komórek od E4 do E9) ma pozycję numer trzy.</p>
<p> </p>
<p><strong>Przykład 2</strong>: formuła: <strong>=POZYCJA(2143;E4:E9;1)</strong> - sytuacja podobna tylko z tą różnicą iż wygrywa osoba z mniejszą ilością punktów. Do formuły został dołączony parametr: lp nakazujący odnaleźć pozycję szukanej wartości ale z wykorzystaniem sortowania rosnącego. Wynikiem działania formuły jest wartość: 4.</p>
<p> </p>
<p><strong>Przykład 3</strong>: formuła: <strong>=POZYCJA(E15;E$15:E$20)</strong> - określenie zdobytego miejsca (wygrywa ten kto ma więcej punktów).</p>
<p> </p>
<p>Ostatnimi funkcjami jakie chciałbym przedstawić są dwie funkcje <strong>WYSZUKAJ.PIONOWO()</strong> oraz <strong>WYSZUKAJ.POZIOMO()</strong></p>
<p> </p>
<p>Zadaniem funkcji WYSZUKAJ.PIONOWO() jest odnalezienie szukanej wartości w pierwszej kolumnie tabeli lecz zwrócenie odpowiadającej jej wartości z kolumny innej. Funkcja przeszukuje tabelę z góry na dół (stąd słowo PIONOWO w nazwie funkcji). Składnia funkcji WYSZUKAJ.PIONOWO() jest następująca: <strong>WYSZUKAJ.PIONOWO(szukana_wartość;tablica;nr_indeksu_kolumny;[przeszukiwany_zakres])</strong></p>
<p> </p>
<p>Kolejne argumenty funkcji WYSZUKAJ.PIONOWO() to:</p>
<p style="padding-left: 2em;"><strong>szukana_wartość</strong> - odszukiwana wartość w pierwszej kolumnie tabeli. Szukana wartość powinna zawsze znajdować się w pierwszej kolumnie tablicy oznacza to, że gdy szukana wartość znajduje się w komórce B2, to tabela powinna rozpoczynać się od kolumny B,</p>
<p style="padding-left: 2em;"><strong>tabela</strong> - zakres komórek określający tabelę,</p>
<p style="padding-left: 2em;"><strong>nr_indeksu_kolumny</strong> - numer kolumny z której zostanie zwrócona wartość. Jeśli tabelą jest zakres C3: E20, kolumnę C liczymy jako pierwszą kolumnę, D jako drugą i tak dalej.</p>
<p style="padding-left: 2em;"><strong>przeszukiwany_zakres</strong> - argument opcjonalny. Obejmuje ustawienie flagi PRAWDA - dopasowanie przybliżone (pierwsza wartość większa niż Szukana_wartość), lub flagi FAŁSZ - dopasowanie dokładne (brak dopasowania, wyświetli w wyniku błąd #N/D!). Jeśli parametr w definicji funkcji zostanie pominięty domyślnie przyjmowaną opcją jest PRAWDA, czyli dopasowanie przybliżone. Użycie flagi PRAWDA wymusza na Nas wykonanie sortowania w porządku rosnącym dla pierwszej kolumny przeszukiwanej tabeli.</p>
<p> </p>
<p>To tradycyjnie już przykład (a nawet dwa).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image24.png" alt="image24" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Przykład 1</strong>: - formuła: <strong>=WYSZUKAJ.PIONOWO(K16;J3:N12;2) </strong>- użyta formuła zwraca wartość 39 - dzieje się tak ponieważ szukaną przez Nas wartością jest ta wpisana w komórkę K16 (czyli 5), tabela obejmuje zakres komórek od J3 do N12 (kolumna J jest liczona jako pierwsza) zaś parametr nr_indeksu_kolumny został określona jako 2. Mówiąc prościej realizowane jest zadanie zwrócenia wartości z drugiej kolumny w przypadku wystąpienia dopasowania. Ponieważ dla wartości szukanej w drugiej kolumnie znajduje się 39 toteż ta wartość jest wynikiem formuły.</p>
<p> </p>
<p><strong>Przykład 2</strong>: - formuła: <strong>=WYSZUKAJ.PIONOWO(K16;J3:N12;4) </strong>- przykład analogiczny z tym powyżej lecz tym razem zwracana jest wartość z kolumny 4 czyli 36</p>
<p> </p>
<p>Kolejny przykład pokazuje nieprawidłowe działanie funkcji WYSZUKAJ.PIONOWO()</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image25.png" alt="image25" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Przykład 1</strong>: - formuła: <strong>=WYSZUKAJ.PIONOWO(K37;J24:N33;3)</strong> - formuła ta nie działa tak jakbyśmy tego oczekiwali gdyż dla szukanej wartości (6) zwróconą wartością jest 53 a po analizie Naszej tablicy danych dochodzimy, że powinna to być wartość 61. Formuła ta nie działa ponieważ parametr nr_indeksu_kolumny nie został zdefiniowany czyli została przyjęta wartość domyślna (PRAWDA) a pierwsza kolumna naszej tablicy nie jest posortowana w kolejności rosnącej.</p>
<p> </p>
<p><strong>Przykład 2</strong>: - formuła: <strong>=WYSZUKAJ.PIONOWO(K37;J24:N33;3;FAŁSZ)</strong> - tym razem zwrócona wartość jest prawidłowa gdyż zastosowanie flagi FAŁSZ dla parametru nr_indeksu_kolumny włącza dopasowanie dokładne (pierwsza kolumna nie musi podlegać sortowaniu).</p>
<p> </p>
<p>No to ostatni przykład.</p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image26.png" alt="image26" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Przykład 1</strong>: - formuła: <strong>=WYSZUKAJ.PIONOWO(C34;B25:D30;2;FAŁSZ) </strong>- dysponujemy listą pracowników i zadaniem jest odszukanie numeru ID pracownika na podstawie wpisanego nazwiska i imienia (komórka C34). Wynikiem działania formuły jest wyświetlenie ID pracownika. Została użyta flaga FAŁSZ gdyż dane w kolumnie pierwszej nie są posortowane.</p>
<p> </p>
<p><strong>Przykład 2</strong>: - formuła: <strong>=WYSZUKAJ.PIONOWO(C34;B25:D30;3;FAŁSZ) </strong>- przykład analogiczny do powyższego lecz tym razem szukaną informacją jest numer PESEL pracownika.</p>
<p> </p>
<p>Poniżej powielenie obu przykładów i jak widać funkcja WYSZUKAJ.PIONOWO() nie rozróżnia wielkości liter.</p>
<p> </p>
<p>Jeszcze na chwilę zatrzymajmy się przy tej funkcji gdyż osobnego omówienia wymaga sytuacja w której w przeszukiwanej tablicy pojawi się pusta komórka. Tak jak to ma miejsce w poniższym przykładzie. Jak można zauważyć przy pracowniku Gazda Beata brak jest numeru PESEL. Formuła wpisana w komórkę C58 (<strong>=WYSZUKAJ.PIONOWO(C57;B48:D53;3;FAŁSZ)</strong>) zwraca wartość 0.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image27.png" alt="image27" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Dzieje się tak ponieważ Excel traktuje puste komórki w obszarze wyników jako zera. Uniknięcia tego typu przypadku pozwoli nam formuła, która wygląda następująco: <strong>=JEŻELI(WYSZUKAJ.PIONOWO(C57;B48:D53;3;FAŁSZ)="";"BRAK NUMERU PESEL";(WYSZUKAJ.PIONOWO(C57;B48:D53;3;FAŁSZ)))</strong> Jak można zauważyć problem rozwiązuje funkcja JEŻELI() - jeżeli brak jest numeru PESEL (czyli komórka jest pusta) zostaje wypisany stosowny komunikat (sytuacja w przypadku pracownika Gazda Beata) jeśli numer PESEL został wpisany zostaje on wyświetlony (pracownik Nowak Tadeusz).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image28.png" alt="image28" width="700" height="281" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Choć w tym zadaniu można pokusić się o dodatkowe poprawienie formuły. Bo co w przypadku w którym numer PESEL jest wpisany tylko na wskutek pomyłki została pominięta np. jedna cyfra? Na szczęście błąd ten (jak to ma miejsce w przypadku pracownika Polak Michał - numer PESEL liczy 10 cyfr a nie 11) łatwo jest zweryfikować. Wystarczy, że dodamy jeszcze jedną funkcję JEŻELI(), której zadaniem będzie sprawdzenie poprawności numeru (a raczej ilości cyfr z których się on składa). Formuła, która zrealizuje zadanie po modyfikacji z tą przedstawioną poprzednio przyjmie postać: <strong>=JEŻELI(WYSZUKAJ.PIONOWO(C82;B67:D72;3;FAŁSZ)="";"BRAK NUMERU PESEL";JEŻELI(DŁ(D71)=11;WYSZUKAJ.PIONOWO(C82;B67:D72;3;FAŁSZ);"BŁĄD PESEL"))</strong> W przypadku wystąpienia błędu w numerze PESEL zostanie wyświetlony komunikat: BŁĄD PESEL</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image29.png" alt="image29" width="700" height="407" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Bliźniaczą funkcją jest funkcja: <strong>WYSZUKAJ.POZIOMO()</strong> Działa ona na tych samych zasadach co WYSZUKAJ.PIONOWO() lecz przeszukiwanie tabeli nie odbywa się pionowo lecz poziomo - wyszukiwana wartość umiejscowiono jest w pierwszym wierszu tabeli a zwracana jest odpowiadająca jej wartość z ustalonego wiersza.</p>
<p> </p>
<p>Składnia funkcji jest następująca: <strong>WYSZUKAJ.POZIOMO(odniesienie;tablica;nr_wiersza;[wiersz])</strong></p>
<p> </p>
<p>Kolejne argumenty funkcji WYSZUKAJ.POZIOMO() to:</p>
<p style="padding-left: 2em;"><strong>odniesienie</strong> - odszukiwana wartość w pierwszej kolumnie tabeli. Szukana wartość powinna zawsze znajdować się w pierwszym wierszu tablicy - oznacza to, że gdy szukana wartość znajduje się w komórce B2, to tabela powinna rozpoczynać się od wiersza 2,</p>
<p style="padding-left: 2em;"><strong>tablica</strong> - zakres komórek określający tabelę,</p>
<p style="padding-left: 2em;"><strong>nr_wiersza</strong> - numer wiersza z którego zostanie zwrócona wartość. Jeśli tabelą jest zakres C3: E20, wiersz 3 liczymy jako wiersz pierwszy, 4 jako drugi i tak dalej.</p>
<p style="padding-left: 2em;"><strong>wiersz </strong>- argument opcjonalny. Obejmuje ustawienie flagi PRAWDA - dopasowanie przybliżone (pierwsza wartość większa niż odniesienie), lub flagi FAŁSZ - dopasowanie dokładne (brak dopasowania, wyświetli w wyniku błąd #N/D!). Jeśli parametr w definicji funkcji zostanie pominięty domyślnie przyjmowaną opcją jest PRAWDA, czyli dopasowanie przybliżone. Użycie flagi PRAWDA wymusza na Nas wykonanie sortowania w porządku rosnącym dla pierwszego wiersza przeszukiwanej tabeli.</p>
<p> </p>
<p>I podobnie jak w przypadku funkcji WYSZUKAJ.PIONOWO() teksty pisane dużymi i małymi literami są równoważne.</p>
<p> </p>
<p>No to zilustrujmy działanie tej funkcji.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image30.png" alt="image30" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Przykład 1</strong>: - formuła: <strong>=WYSZUKAJ.POZIOMO(S16;R2:V12;6)</strong> - formuła dla szukanej wartości wpisanej w komórkę S16 (Dane 2) zwraca wynik 21 gdyż w przeszukiwanej tablicy liczba ta znajduje się w szóstym wierszu.</p>
<p> </p>
<p><strong>Przykład 2</strong>: - formuła: <strong>=WYSZUKAJ.POZIOMO(S16;Q2:V12;3)</strong> - podobnie jak w przykładzie powyżej lecz w tym przypadku zwracana jest liczba znajdująca się w wierszu 3.</p>
<p> </p>
<p>To przeanalizujmy jeszcze jeden przykład dotyczący funkcji WYSZUKAJ.POZIOMO(). Mamy listę uczniów, którym należy wystawić ocenę w zależności od ilości zdobytych punktów. Kryterium przydzielania oceny wygląda następująco:</p>
<ul>
<li style="padding-left: 4em;">0-24 pkt - ocena: 1</li>
<li style="padding-left: 4em;">25-44 pkt - ocena: 2</li>
<li style="padding-left: 4em;">45-69 pkt - ocena: 3</li>
<li style="padding-left: 4em;">70-89 pkt - ocena: 4</li>
<li style="padding-left: 4em;">90-97 pkt - ocena: 5</li>
<li style="padding-left: 4em;">98-100 pkt - ocena: 6</li>
</ul>
<p> </p>
<p>Formuła, która zrealizuje nasze zadanie przyjmie postać: <strong>=WYSZUKAJ.POZIOMO(T28;$S34:$Y35;2)</strong> (komórka T29) Wartość ilości zdobytych punktów przez danego ucznia jest porównywana z tabelą punktacji (zakres komórek od S34 do Y35). Po dokonaniu porównania do danej liczby punktów przypisywana jest ocena.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image31.png" alt="image31" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Te samą operację wykonamy wpisując tabelę w formułę (zamiast funkcji WYSZUKAJ.POZIOMO() stosujemy WYSZUKAJ.PIONOWO()): <strong>=WYSZUKAJ.PIONOWO(T28;{0\"1";25\"2";45\"3";70\"4";90\"5";98\"6"};2)</strong> - więcej o definicji tabel znajdziesz w wpisie: <a href="http://slow7.pl/office/item/116-excel-w-zadaniach-funkcje-tablicowe">Excel w zadaniach. Funkcje tablicowe</a></p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image32.png" alt="image32" width="700" height="179" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Ewentualnie to samo zadanie możemy zrealizować z wykorzystaniem funkcji <strong>WYSZUKAJ() </strong>Formuła realizująca te zadanie przyjmie postać: <strong>=WYSZUKAJ(T40;{0;25;45;70;90;98};{1;2;3;4;5;6})</strong></p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image33.png" alt="image33" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Funkcji <strong>WYSZUKAJ() </strong>jeszcze nie omówiłem więc wypadałoby kilka słów o niej powiedzieć.</p>
<p> </p>
<p>Funkcja <strong>WYSZUKAJ()</strong> działa w ten sposób, że przeszukuje zakres w postaci jednego wiersza lub jednej kolumny wartości i zwraca wartość z tej samej pozycji w drugim obszarze.</p>
<p> </p>
<p>Składnia funkcji WYSZUKAJ() jest następująca:</p>
<p><strong>WYSZUKAJ(Szukana_wartość;Przeszukiwany_wektor;Wektor_wynikowy)</strong></p>
<p> </p>
<p>Argumenty funkcji:</p>
<p style="padding-left: 2em;"><strong>szukana_wartość</strong> - wartość szukana, która ma zostać odnaleziona w zakresie określonym w argumencie przeszukiwany_wektor.</p>
<p style="padding-left: 2em;"><strong>przeszukiwany_wektor</strong> - pojedynczy wiersz lub kolumna, w którym znajdują się wartości podlegające procesowi przeszukania. Wartości te należy ułożyć w porządku rosnącym.</p>
<p style="padding-left: 2em;"><strong>wektor_wynikowy</strong> - pojedynczy wiersz lub kolumna zawierająca wartości, które zostaną zwrócone. Rozmiar zdefiniowanego obszaru musi być tożsamy z tym ustalonym przy definicji parametru przeszukiwany_wektor.</p>
<p> </p>
<p>Poniżej przykład z wykorzystaniem funkcji WYSZUKAJ(). Założenia ćwiczenia są takie iż na podstawie wpisanej liczby nadgodzin należy przeszeregować odpowiednią wartość przyznanej premii. Liczby nadgodzin i odpowiadający im procent premii zostały zebrane w tabeli. Formuła realizująca te zadanie ma postać: <strong>=WYSZUKAJ(C2;E2:E6;G2:G6)</strong></p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image34.png" alt="image34" width="700" height="224" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Formuł ta wyświetla prawidłowe wartości przyznanej premii gdyż funkcja WYSZUKA() działa w ten sposób, że dopasowuje najbliższą najmniejszą znalezioną wartość.</p>
<p> </p>
<p>I na tym etapie już kolejny mój wpis na temat Excela chciałbym zakończyć. Mam nadzieję, że przedstawione przykłady użycia funkcji tekstowych i wyszukujących pozwolą Wam je efektywnie wykorzystać do budowy swoich własnych arkuszy.</p></div><div class="K2FeedImage"><img src="http://slow7.pl/media/k2/items/cache/15d43aef6c8a5134e1fc00a9c98b8ab0_S.jpg" alt="Excel w zadaniach. Funkcje tekstowe i wyszukujące." /></div><div class="K2FeedIntroText"><p>Pomimo, iż arkusz kalkulacyjny został stworzony aby uprościć operacje związane z analizą i przetwarzaniem danych liczbowych to zawiera on szereg funkcji związanych z tekstem oraz wyszukiwaniem. Funkcje te typowo nie są związane z operacjami matematycznymi lecz pośrednio je wspomagają. Poznanie ich przeznaczenia i sposobu działania wiele spraw ułatwia gdyż operując na liczbach trzeba je w jakiś sposób opisać.</p>
</div><div class="K2FeedFullText">
<p> </p>
<p>Wpis rozpoczniemy od omówienia funkcji <strong>DŁ()</strong> (zaczynamy od tych najprostszych, by w miarę zgłębianie tematu przejść do tych bardziej zaawansowanych).</p>
<p> </p>
<p>Funkcja zwraca liczbę znaków, z których składa się tekst wskazany w argumencie funkcji. Argumentem może być konkretny ciąg zbudowany z liczb bądź liter lub adres komórki w której dana fraza się znajduje. Do zliczanych znaków włączane są również znaki interpunkcyjne oraz odstępy.</p>
<p> </p>
<p>Składnia funkcji jest bardzo prosta i ma postać: <strong>DŁ(tekst/adres_komórki)</strong></p>
<p> </p>
<p>Argument:<strong> tekst/adres_komórki</strong> określa tekst bądź adres komórki w której tekst został wpisany, którego długość ma zostać określona. Spacje są liczone jako znaki.</p>
<p> </p>
<p>Przykład zastosowania funkcji: <strong>DŁ()</strong> zaprezentowano na rysunku poniżej. W lewej kolumnie znajdują się wpisane frazy zaś po prawej została wyliczona ilość znaków. Jak można zauważyć ilość znaków z których są zbudowane dane ciągi została wyliczona prawidłowo. Choć w przypadku ostatniego przykładu wydawać by się mogło, że jest błąd gdyż przecież wyraz „spacja” zbudowany jest z 6 liter a nie 7. Taki stan rzeczy spowodowany jest tym, że po wyrazie „spacja” został dodany jeden znak właśnie w formie spacji - 6 liter plus spacja = 7.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image1.png" alt="image1" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Funkcję DŁ() możemy wykorzystać np. w zbudowaniu funkcji, która będzie Nam sprawdzać czy wpisany numer, który mus się składać z określonej liczby znaków (PESEL, NIP, REGON) został wpisany prawidłowo. Poniżej przykład w którym za pomocą formuły: <strong>=JEŻELI(DŁ(adres_komórki)=11;"OK";"BŁĄD")</strong> sprawdzamy poprawność numeru PESEL. Numer ten składa się z 11 liczb, brak (lub też pojawienie się dodatkowej) liczby powoduje wypisanie komunikatu <strong>BŁĄD</strong> Jeśli numer PESEL jest prawidłowy pojawia się słowo <strong>OK</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image2.png" alt="image2" width="700" height="304" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Te samo zadanie można wykonać z wykorzystaniem reguł formatowania warunkowego. Poprawnie zbudowane numery PESEL są zaznaczane na żółto.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image3.png" alt="image3" width="700" height="282" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>W sytuacjach w których z podanego ciągu tekstowego musimy wyodrębnić jakąś jego część możemy wykorzystać funkcję: <strong>FRAGMENT.TEKSTU()</strong> Ogólna składnia funkcji wygląda następująco: <strong>FRAGMENT.TEKSTU(tekst;liczba_początkowa;liczba_znaków)</strong></p>
<p> </p>
<p>Zadaniem funkcji jest zwrócenie znaku bądź ciągu znaków zawartych w dowolnym innym tekście, pobrany ciąg liter bądź cyfr może rozpoczynać się od określonej pozycji tekstu bazowego i składać się z określonej liczby znaków. Do znaków tych zaliczamy litery, cyfry oraz znaki interpunkcyjne.</p>
<p> </p>
<p>Pierwszy argument definiuje <strong>tekst</strong> bądź <strong>adres komórki</strong> w której ten tekst się znajduje, z którego ma zostać wyodrębniony znak lub ciąg znaków. Drugi parametr (<strong>liczba_początkowa</strong>) określa numer pozycji liczonej od lewej strony od której ma rozpocząć się pobieranie znaków. Ostatni argument <strong>liczba_znaków</strong> określa liczbę wyodrębnianych znaków.</p>
<p> </p>
<p>Poniżej przykład użycia omawianej funkcji - z lewej strony zostały zapisane nazwy miejscowość z prawej zaś wyodrębniony ciąg - użyta formuła: =<strong>FRAGMENT.TEKSTU(D4;4;8)</strong> nakazuje wypisać 8 znaków począwszy od 4 znaku. Jak można zaobserwować znak spacji wliczany jest do wyodrębnianych znaków.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image4.png" alt="image4" width="700" height="304" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Praktyczny przykład wykorzystujący funkcję <strong>FRAGMENT.TEKSTU()</strong> został przedstawiony poniżej. Przypuśćmy, że posiadamy bazę faktur, których zasada numerowania opiera się na wzorcu: <strong><numer_kolejny>/<kontrahent>/<rok> </strong>przy czym każde z pól zawiera następującą liczbę znaków: <strong>5/3/4 </strong>Potrzebujemy z tak przygotowanej bazy wyodrębnić nazwę kontrahentów. Aby zadanie to wykonać została użyta następująca formuła: <strong>=FRAGMENT.TEKSTU(J18;7;3)</strong> która nakazuje od 7 znaku włącznie pobrać 3.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image5.png" alt="image5" width="700" height="505" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>W operacjach związanych z tekstem bardzo często wykorzystywana jest funkcja: <strong>LEWY()</strong> oraz funkcja bliźniak: <strong>PRAWY()</strong>.</p>
<p> </p>
<p>Funkcja: <strong>LEWY()</strong> zwraca określoną liczbę znaków liczoną od lewej strony ciągu liczbowego bądź tekstowego.</p>
<p> </p>
<p>Zaś funkcja: <strong>PRAWY()</strong> jak łatwo się domyśleć zwraca określoną liczbę znaków ciągu lecz tym razem znaki są liczone od strony prawej.</p>
<p> </p>
<p>Składnia funkcji wygląda następująco: <strong>LEWY(tekst/adres_komórki;liczba_znaków)</strong> oraz <strong>PRAWY(tekst/adres_komórki;liczba_znaków)</strong></p>
<p> </p>
<p>Zastosowanie obu funkcji zostało zaprezentowane na zrzucie poniżej. W prezentowanym przykładzie z puli nazwisk wyodrębniono trzy pierwsze litery (formuła: <strong>=LEWY(adres_komórki;3</strong>) oraz trzy ostatnie litery nazwiska (formuła: <strong>=PRAWY(adres_komórki;3</strong>).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image6.png" alt="image6" width="700" height="221" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Praktyczne zastosowanie funkcji możemy zobrazować na przykładzie w którym to potrzebujemy na bazie imienia i nazwiska stworzyć nazwę logowania opierającą się na schemacie: 3 litery imienia + 3 litery nazwiska.</p>
<p> </p>
<p>Aby zadanie te zrealizować została użyta dwukrotnie funkcja: LEWY() w połączeniu z symbolem łączenia zawartości dwóch komórek (&) - z zawartości dwóch komórek (imię i nazwisko) zostały pobrane 3 pierwsze znaki, które w następnym kroku zostały ze sobą połączone. Formuła, która realizuje powyższe zadanie ma postać: <strong>=LEWY(adres_komórki;3)&LEWY(adres_komórki;3)</strong></p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image7.png" alt="image7" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>No to jeszcze jeden mały przykład. Posiadamy bazę imion i nazwisk niestety są one poprzedzone tytułami naukowymi a my potrzebuje tylko imię i nazwisko. Aby z tak zbudowanego ciągu wyodrębnić samo imię i nazwisko z pominięciem tytułu naukowego należy użyć takiej o to formuły: <strong>=JEŻELI(LUB(LEWY(V16;4)="inż.";LEWY(V16;3)="mgr";LEWY(V16;2)="dr");PRAWY(V16;DŁ(V16)-ZNAJDŹ(" ";V16));V16)</strong></p>
<p> </p>
<p>Formuła ta działa w ten sposób, że przy pomocy funkcji JEŻELI() w połączeniu z funkcją LUB() oraz LEWY() sprawdzane jest czy występują tytuły naukowe: inż., mgr oraz dr jeśli ten warunek jest spełniony wyliczana jest długość znaków całego ciągu pomniejszona o liczbę pozycji w której występuje znak spacji. Tak wyliczona długość ciągu jest wyodrębniona za pomocą funkcji PRAWY(). Jeśli tytuł naukowy nie występuje zawartość komórki zostaje powielona. W formule tej została użyta funkcja ZNAJDŹ(), której opis działania znajdziesz w dalszej części wpisu.</p>
<p> </p>
<p>Opis funkcji JEŻELI() oraz LUB() znajdziesz w tych wpisach: <a href="http://slow7.pl/office/item/22-excel-w-zadaniach-funkcja-jezeli">Excel w zadaniach. Funkcja JEŻELI</a> oraz <a href="http://slow7.pl/office/item/21-excel-w-zadaniach-funkcja-oraz-i-lub">Excel w zadaniach. Funkcja ORAZ i LUB</a></p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image8.png" alt="image8" width="700" height="185" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Trzy następne funkcje są bardzo proste a ich zadaniem jest zamiana liter małych na wielkie i odwrotnie.</p>
<p> </p>
<p>Aby każde słowo w komórce zostało zamienione na wielkie litery należy użyć funkcji: <strong>LITERY.WIELKIE(adres_komórki)</strong> Poniżej przykład w którym imiona zapisane w komórkach od D5 do D10 zostały zamienione na wielkie litery (komórki od G5 do G10).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image9.png" alt="image9" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>W sytuacji odwrotnej używamy funkcji: <strong>LITERY.MAŁE(adres_komórki) </strong>Analogiczny przykład z tym powyżej lecz tym razem imiona zostają zapisane za pomocą małych liter.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image10.png" alt="image10" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Trzecią z funkcji odpowiedzialną za zmianę wielkości liter jest funkcja: <strong>Z.WIELKIEJ.LITERY(adres_komórki)</strong> która to pierwszą literę każdego słowa zamienia na wielką literę, zaś wszystkie pozostałe litery tworzące dany ciąg są literami małymi.</p>
<p> </p>
<p>O to przykład w którym przy pomocy funkcji Z.WIELKIEJ.LITERY() imiona i nazwiska zostały zmienione tak by rozpoczynały się od wielkiej litery (zgodnie z zasadami ortografii). Imiona i nazwiska zapisane mały literami zostały pobrane z kolumny D oraz E i połączone ze sobą przy pomocy symbolu <strong>&</strong> (pomiędzy imieniem i nazwiskiem dodatkowo został dodany znak spacji) - formuła realizująca to zadanie przyjmie postać: <strong>Z.WIELKIEJ.LITERY(D37)&" "&Z.WIELKIEJ.LITERY(E37)</strong></p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image11.png" alt="image11" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Komórka D37 zawierała tekst <strong>jan</strong> użycie formuły spowodowało zwrócenie tekstu <strong>Jan</strong>. Użycie formuły na komórce w której zawarty byłby tekst <strong>pan jan</strong> spowoduje zwrócenie ciągu <strong>Pan Jan</strong>. Użyta spacja w ciągu tekstowym powoduje, że słowo zawarte po spacji również rozpoczynane jest od wielkiej litery. Taką samą sytuację mamy w przypadku użycia znaku apostrofu (słowo d'artagnan).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image12.png" alt="image12" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Znając już funkcję LEWY(), PRAWY(), LITERY.WIELKIE, LITERY.MAŁE oraz DŁ() zadanie zapisania wyrazu zaczynającego się od wielkiej litery z pominięcie funkcji Z.WIELKIEJ.LITERY() można by było zrealizować za pomocą formuły użytej na poniższym zrzucie: <strong>=LITERY.WIELKIE(LEWY(D28))&PRAWY(LITERY.MAŁE(D28);DŁ(D28)-1) </strong>Formuła pobiera pierwszy lewy znak z imienia i zamienia go na wielki (LITERY.WIELKIE(LEWY(D28))) a następnie obliczana jest długość całego ciągu tekstowego minus znak pierwszy (DŁ(D28)-1), która w kroku kolejnym zamienia pozostałe litery na małe (PRAWY(LITERY.MAŁE(D28)) Tak oba powstałe ciągi są ze sobą łączone (symbol &).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image13.png" alt="image13" width="700" height="203" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Tak wiem, że przykład przedstawiony powyżej jest pewnego rodzaju „przekombinowaniem” ale pokazuje fajnie jak poznane do tej pory funkcję można ze sobą łączyć. Czytelniku potraktuj przedstawiony przykład jak łamigłówkę i postaraj zrozumieć jak przytoczona formuła działa.</p>
<p> </p>
<p>W pracy z tekstem bardzo często zdarzają się takie sytuacje, w których trzeba część jakiegoś większego tekstu zastąpić innym. Do sytuacji takiej dochodzi najczęściej w przypadku importu danych np. data z importowanego pliku ma inny format od tego oczekiwanego - np. importowana data ma postać 12/02/1980 a my potrzebujemy mieć ją zapisaną w postaci 12-02-1980. Do przekształcenia znaku <strong>/ </strong>na <strong>-</strong> możemy użyć narzędzia <strong>Zamień</strong> (polecenie Narzędzia główne/Edycja/Znajdź i zaznacz/Zamień) bądź wykorzystać rozwiązanie oparte na formule.</p>
<p> </p>
<p>Do zamiany jednego fragmentu tekstu w drugi możemy użyć następujących dwóch funkcji:</p>
<p> </p>
<p>funkcja: <strong>PODSTAW(tekst;stary_tekst;nowy_tekst;[wystąpienie_liczba])</strong> - tą funkcję należy wybrać wtedy gdy znany Nam jest znak (bądź ich ciąg) lecz niewiadomą jest jego pozycja.</p>
<p> </p>
<p>argumenty funkcji:</p>
<p style="padding-left: 2em;"><strong>tekst</strong> - tekst lub odwołanie do komórki zawierającej tekst, w którym zostaną zastąpione znaki,</p>
<p style="padding-left: 2em;"><strong>stary_tekst</strong> - łańcuch, który zostanie zastąpiony,</p>
<p style="padding-left: 2em;"><strong>nowy_tekst</strong> - nowy łańcuch, który pojawi się w miejscu ciągu zdefiniowanego przez argument stary_tekst,</p>
<p style="padding-left: 2em;"><strong>wystąpienie_liczba</strong> - jest to argument opcjonalny. Definiuje, które wystąpienie argumentu stary_tekst zostanie zastąpione przez argument nowy_tekst.</p>
<p> </p>
<p>Poniżej zostały przedstawione trzy przykłady użycia funkcji: <strong>PODSTAW()</strong></p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image14.png" alt="image14" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Przykład 1</strong>: formuła: <strong>=PODSTAW(D5;"2015";"2016") </strong>- zostaje wykonana zamiana roku 2015 na 2016,</p>
<p> </p>
<p><strong>Przykład 2</strong>: <strong>=PODSTAW(D10;" ";"")</strong> - zostają usunięte znaki spacji,</p>
<p> </p>
<p><strong>Przykład 3</strong>: <strong>=PODSTAW(D15;"r";"R";2)</strong> - zostaje zamienione drugie wystąpienie małej litery r na duże R.</p>
<p> </p>
<p>funkcja: <strong>ZASTĄP(stary_tekst;nr_poz_pocz;liczba_znaków;nowy_tekst)</strong> - zamienia część ciągu tekstowego na inny ciąg tekstowy z uwzględnieniem określonej liczby znaków.</p>
<p> </p>
<p>Argumenty funkcji:</p>
<p style="padding-left: 2em;"><strong>stary_tekst</strong> - tekst, który ma zostać zamieniony,</p>
<p style="padding-left: 2em;"><strong>nr_poz_pocz</strong> - pozycja znaku w tekście argumentu stary_tekst, w której ma nastąpić zamiana na tekst argumentu nowy_tekst,</p>
<p style="padding-left: 2em;"><strong>liczba_znaków</strong> - liczba znaków w tekście argumentu stary_tekst, które funkcja ZASTĄP() ma zamienić na tekst argumentu nowy_tekst,</p>
<p style="padding-left: 2em;"><strong>nowy_tekst</strong> - tekst, na który zostaną zamienione znaki w tekście argumentu stary_tekst.</p>
<p> </p>
<p>Poniżej przykład zastosowania opisywanej funkcji. W komórce F21 została wprowadzona formuła: <strong>=ZASTĄP(D21;6;1;"")</strong>, której zadaniem jest zastąpienie 6 znaku w komórce D21. Na wskutek działania formuły znak ukośnika zostaje skasowany.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image15.png" alt="image15" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Oprócz wykonywania operacji zastąpienia jednego tekstu drugim w przypadku pracy z danymi tekstowymi bardzo często dochodzi do sytuacji w której musimy dokonać wyszukania określonego ciągu znaków. W realizacji tego zadania pomogą Nam funkcję: <strong>ZNAJDŹ()</strong> oraz <strong>SZUKAJ.TEKST()</strong></p>
<p> </p>
<p>Funkcje ZNAJDŹ() oraz SZUKAJ.TEKST() umożliwiają określenie początkowej pozycji szukanego ciągu znaków, będącego częścią innego łańcucha.</p>
<p> </p>
<p>Funkcja ZNAJDŹ(), której ogólna składnia prezentuje się następująco: <strong>ZNAJDŹ(tekst_szukany;w_tekście;[nr_poz_pocz])</strong> zwraca pozycję początkową jednego ciągu tekstowego w drugim ciągu tekstowym. Funkcja opcjonalnie umożliwia definicję znaku, od którego ma rozpocząć się wyszukiwanie. Funkcja ta rozróżnia wielkie i małe litery. Nie można za jej pomocą przeprowadzić wyszukiwania wieloznacznego.</p>
<p> </p>
<p>Argumenty funkcji to:</p>
<p style="padding-left: 2em;"><strong>tekst_szukany</strong> - tekst, który ma zostać odnaleziony,</p>
<p style="padding-left: 2em;"><strong>w_tekście</strong> - tekst/adres komórki przeszukiwania,</p>
<p style="padding-left: 2em;"><strong>nr_poz_pocz</strong> - parametr opcjonalny, definiujący znak, od którego ma się rozpocząć wyszukiwanie (domyślnie w przypadku braku definicji tego argumentu przyjmuje się wyszukiwanie od pierwszego znaku).</p>
<p> </p>
<p>Dwa przykłady pokazujące działanie funkcji ZNAJDŹ() zostały zaprezentowane na zrzucie poniżej.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image16.png" alt="image16" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Przykład 1</strong>: formuła: <strong>=ZNAJDŹ("abc";C20) </strong>- zostaje przeprowadzone wyszukanie ciągu liter: <strong>abc</strong> Po wywołaniu formuły zwracana jest wartość jego pozycji. Jak można zauważyć wielkość liter ma znaczenie gdyż w sytuacji wystąpienia łańcucha liter <strong>ABC</strong> zwracany jest błąd <strong>#ARG!</strong> (zresztą tak jak i w innych przypadkach),</p>
<p> </p>
<p><strong>Przykład 2</strong>: <strong>=FRAGMENT.TEKSTU(C30;1;ZNAJDŹ("-";C30;1)-1) </strong>- w połączeniu z funkcją FRAGMENT.TEKSTU() zostaje wykonana operacja wyodrębnienia pierwszego członu numeru partii. Funkcja ZNAJDŹ() wyszukuje pozycję wystąpienia pierwszego znaku:<strong> -</strong> (w tym przypadku zwracana jest wartość 4) i od tej pozycji jest odejmowane 1 (czwarta pozycja znaku minus jeden = 3) w kolejnym kroku tak wyliczona wartość jest przekazywana do funkcji FRAGMENT.TEKSTU().</p>
<p> </p>
<p>Funkcja SZUKAJ.TEKST() podobnie jak wyżej przedstawiona ZNAJDŹ() zwraca numer znaku, który rozpoczyna ciąg znaków znaleziony w innym łańcuchu znaków. W przypadku tej funkcji również można określić pozycję znaku, od którego ma być rozpoczęte wyszukiwanie, lecz funkcja ta nie rozróżnia wielkich i małych liter, ale rekompensatą jest możliwość przeprowadzenia wyszukania wieloznacznego.</p>
<p> </p>
<p>Składnia funkcji jest następująca: <strong>SZUKAJ.TEKST(tekst_szukany;w_tekście;[nr_poz_pocz])</strong></p>
<p> </p>
<p>Parametry:</p>
<p style="padding-left: 2em;"><strong>tekst_szukany</strong> - szukany ciąg znaków,</p>
<p style="padding-left: 2em;"><strong>w_tekście</strong> - przeszukiwany tekst bądź adres komórki w której tekst się znajduje,</p>
<p style="padding-left: 2em;"><strong>nr_poz_pocz</strong> - parametr opcjonalny, określający numer znaku od którego ma nastąpić przeszukiwanie.</p>
<p> </p>
<p>Przykłady użycia funkcji SZUKAJ.TEKST() zostały pokazana na zrzucie poniżej.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image17.png" alt="image17" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Przykład 1</strong>: formuła: <strong>=SZUKAJ.TEKST("abc";I20) </strong>- zostaje przeprowadzone wyszukanie ciągu liter: <strong>abc</strong> Po wywołaniu formuły zwracana jest wartość jego pozycji. Jak można zauważyć wielkość liter nie ma znaczenie gdyż w każdej sytuacji niezależnie od użytej wielkości liter zwracana jest pozycja wystąpienia szukanego ciągu. W przypadku wystąpienia braku dopasowania zwracany jest błąd <strong>#ARG!</strong></p>
<p> </p>
<p><strong>Przykład 2</strong>: <strong>=SZUKAJ.TEKST("?-?";I30;1) </strong>- formuła wyszukuje wystąpienie znaku myślnika (-) Do jej zbudowania został wykorzystany symbol wyszukiwania wieloznacznego: znak zapytania (?). Przy budowaniu formuły z użyciem funkcji SZUKAJ.TEKST() można użyć dwóch symboli umożliwiających przeprowadzenie wyszukania wieloznacznego:</p>
<ul>
<li style="padding-left: 4em;"><strong>znak zapytania (?)</strong> - zastępuje jeden dowolny znak,</li>
<li style="padding-left: 4em;"><strong>gwiazdka (*)</strong> - zastępuje dowolną sekwencję znaków.</li>
</ul>
<p> </p>
<p>W sytuacji w której wyszukanym symbolem ma być znak zapytania bądź gwiazdki umieszczamy przed nim znak tyldy (~).</p>
<p> </p>
<p>Kolejną funkcją wspomagającą Nas w wyszukiwaniu zawartości jest funkcja: <strong>PODAJ.POZYCJĘ()</strong> Funkcja ta bardzo często łączona jest z funkcją: <strong>INDEKS()</strong>.</p>
<p> </p>
<p>Rozpoczniemy od omówienia funkcji INDEKS() a następnie przejdziemy do funkcji PODAJ.POZYCJĘ() zaś w kroku kolejnym wykonamy zadanie w którym wykorzystamy obie te funkcje.</p>
<p> </p>
<p>Składnia funkcji INDEKS() wygląda następująco: <strong>INDEKS(tablica;nr_wiersza;[nr_kolumny])</strong> a jej zadaniem jest zwrócenie wartości komórki znajdującej się na przecięciu zdefiniowanego numeru wiersza i numeru kolumny.</p>
<p> </p>
<p>Składnia funkcji INDEKS() obejmuje następujące argumenty:</p>
<p style="padding-left: 2em;"><strong>tablica</strong> - zakres komórek,</p>
<p style="padding-left: 2em;"><strong>nr_wiersza</strong> - wskazuje wiersz tablicy,</p>
<p style="padding-left: 2em;"><strong>nr_kolumny</strong> - wskazuje kolumnę tablicy.</p>
<p> </p>
<p>Jeśli argument tablica zawiera tylko jeden wiersz lub jedną kolumnę, to odpowiednio argument nr_wiersza lub nr_kolumny jest argumentem opcjonalnym.</p>
<p> </p>
<p>Przyjrzyjmy się zatem przedstawionemu poniżej przykładowi. Do komórki V7 została wprowadzona formuła: <strong>=INDEKS(Q6:T9;2;3)</strong> efektem wprowadzonego polecenia jest uzyskanie wartości: <strong>b3</strong> Stało się tak gdyż wartość: b3 znajduje się w komórce, która leży na przecięciu drugiego wiersza (w zdefiniowanej tabeli został pominięty nagłówek tabeli) i trzeciej kolumny w tablicy obejmującej komórki od Q6 do T9</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image18.png" alt="image18" width="700" height="271" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Tak więc wiemy jak już działa funkcja INDEKS() wykorzystajmy ją w jakimś konkretnym przykładzie. Przypuśćmy, że mamy bazę części obejmującą ich sprzedaż w rozbiciu na lata i chcemy sprawdzić ile sztuk produktu udało się sprzedać. Przykład przeprowadzimy na produkcie: nakrętka m10 i roku 2013.</p>
<p> </p>
<p>Poniżej tabeli zostały dodane trzy pozycje:</p>
<p style="padding-left: 2em;"><strong>LP</strong> - numer kolejny produktu, który tożsamy jest z numerem wiersza</p>
<p style="padding-left: 2em;"><strong>Rok</strong> - numer kolumny interesującego nas roku</p>
<p style="padding-left: 2em;"><strong>Sztuki</strong> - wynik czyli ilość sprzedanych sztuk.</p>
<p> </p>
<p>Chcąc poznać ilość sztuk produktu, która została sprzedana w pole <strong>LP</strong> została wpisana wartość 6 gdyż nakrętka m10 znajduje się w szóstym wierszu tabeli (nagłówek tabeli nie został wykorzystany) zaś w polu <strong>Rok </strong>pojawiła się wartość 5 gdyż rok 2013 to piąta kolumna tabeli.</p>
<p> </p>
<p>Formuła wyszukująca ilość sztuk towaru przyjęła postać: <strong>=INDEKS(F6:L15;H20;H21)</strong></p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image19.png" alt="image19" width="700" height="398" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p> </p>
<p>Na tym etapie korzystanie z tak przygotowanego zestawienia jest to powiedzmy sobie szczerze - mało intuicyjne i mało wygodne gdyż by poznać wartość musimy ręcznie ustalić wartość wiersza i kolumny. Ale bez obaw do przykładu zaraz wrócimy.</p>
<p> </p>
<p>Drugą wspomnianą przeze mnie funkcją jest funkcja: PODAJ.POZYCJĘ()</p>
<p> </p>
<p>Jej składnia przedstawia się następująco: <strong>PODAJ.POZYCJĘ(szukana_wartość;przeszukiwana_tablica;[typ_porównania])</strong></p>
<p> </p>
<p>W składni funkcji PODAJ.POZYCJĘ występują następujące argumenty:</p>
<p style="padding-left: 2em;"><strong>szukana_wartość</strong> - szukana wartość, której przeszukiwanie następuje w zdefiniowanym zakresie określonym przez parametr przeszukiwana_tablica. Parametr ten może być definiowany jako: liczba, tekst lub wartość logiczna a także stanowić odwołanie do innej komórki,</p>
<p style="padding-left: 2em;"><strong>przeszukiwana_tablica</strong> - zakres komórek w których ma nastąpić przeszukanie,</p>
<p style="padding-left: 2em;"><strong>typ_porównania</strong> - wartość opcjonalna, określająca sposób w jaki następuje porównanie. Dozwolone wartości to: 1; 0 oraz -1. Wartość domyślna tego argumentu to<strong> 1</strong> co oznacza, że funkcja odszuka największą wartość, która jest mniejsza lub równa wartości szukana_wartość. Wartości argumentu przeszukiwana_tablica muszą być uporządkowane w kolejności rosnącej. Parametr: <strong>0</strong> oznacza wyszukiwanie do pierwszego dopasowania. W tym przypadku wartości w argumencie przeszukiwana_tablica mogą być umieszczone w kolejności dowolnej. Zaś parametr: <strong>-1</strong> nakazuje odszukanie wartości najmniejszej, która jest większa lub równa wartości szukana_wartość. Wartości w argumencie przeszukiwana_tablica muszą być uporządkowane w kolejności malejącej.</p>
<p> </p>
<p>W poniższym przykładzie w komórce V19 została wpisana formuła: <strong>=PODAJ.POZYCJĘ("b3";Q19:T19)</strong> Formuła szuka wartości: <strong>b3</strong> w tablicy zdefiniowanej jako zakres komórek od Q19 do T19 (szary obszar). Wynikiem formuły jest wartość 3 gdyż szukana wartość znajduje się w trzeciej komórce.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image20.png" alt="image20" width="700" height="236" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>W drugim przykładzie dzięki zastosowaniu formuły: <strong>=PODAJ.POZYCJĘ("b3";S18:S21) </strong>wynikiem jest liczba 2 gdyż w tablicy szukana wartość znajduje się w drugiej komórce.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image21.png" alt="image21" width="700" height="236" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>OK to już wiemy jak działają funkcje INDEKS() oraz PODAJ.POZYCJĘ() pora więc wrócić do naszego przykładu z częściami i zdobytą wiedzę wykorzystać w działaniu - przyszła pora aby obie funkcje ze sobą połączyć.</p>
<p> </p>
<p>W komórce H50 znajduje się formuła: <strong>=INDEKS(F34:L43;PODAJ.POZYCJĘ(H48;G34:G43;0);PODAJ.POZYCJĘ(H49;F33:L33;0))</strong> Wygląda skomplikowanie ale rozbijemy ją na części pierwsze i wszystko stanie się jasne.</p>
<p> </p>
<p>Na początek co tak naprawdę formuła wykonuje - zadaniem jej jest podanie (tak jak w przykładzie wyżej) odszukanie ilości sztuk sprzedanego produktu w danym roku (ponownie rok 2013 i nakrętka m10). Lecz tym razem nie wpisujemy numeru wiersza i kolumny tylko numer <strong>danej części</strong> (komórka H48) oraz <strong>rok</strong> (komórka H49).</p>
<p> </p>
<p>Tak więc do komórki H48 została wpisana wartość: <strong>3433</strong> gdyż jest to numer przydzielony produktowi nakrętka m10 oraz do komórki H49 wartość: <strong>2013</strong></p>
<p> </p>
<p>Aby odnaleźć sprzedaną liczbę sztuk detalu do funkcji INDEKS() musimy przekazać wartość parametru: <strong>nr_wiersza</strong> oraz <strong>nr_kolumny</strong> Oba argumenty są uzyskiwane dzięki formule w której została wykorzystana funkcja PODAJ.POZYCJĘ().</p>
<p> </p>
<p>Pierwsza formuła: <strong>PODAJ.POZYCJĘ(H48;G34:G43;0)</strong> powoduje odszukanie pozycji wartości: <strong>3433</strong> w tablicy, której zakres został zdefiniowany od komórki G34 do G43. Typ dopasowania został ustalony na 0 (choć tak naprawdę można by było parametr ten pominąć i przyjąć wartość domyślną gdyż numery części są posortowane w kolejności rosnącej). Numer części jest wartością unikalną (zakładamy, że numer części jest zawsze przypisany tylko jednemu produktowi). Efektem działania tej formuł jest uzyskanie wartości: <strong>6</strong> (wartość w szóstym wierszu tabeli).</p>
<p> </p>
<p>Druga część formuły: <strong>PODAJ.POZYCJĘ(H49;F33:L33;0)</strong> realizuje podobne zadanie lecz w kontekście ustalenia numeru kolumny w której występuje data roku czyli wartość: <strong>2013</strong> Formuła zwraca wartość: <strong>5</strong></p>
<p> </p>
<p>Wykorzystane formuły przekazują wartości do funkcji INDEKS(). Tak więc naprawdę, uproszczając całą formułę jest realizowana funkcja: <strong>=INDEKS(F34:L43;6;5) </strong>Efektem jej jest uzyskanie wartości: <strong>4351</strong> leżącej w szóstym wierszu i piątej kolumnie w tablicy określonej poprzez zakres F34:L43.</p>
<p> </p>
<p>Mam nadzieję, że teraz wszystko wydaje się prostsze.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image22.png" alt="image22" width="700" height="411" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Oprócz funkcji <strong>PODAJ.POZYCJĘ</strong> istnieje jeszcze funkcja <strong>POZYCJA()</strong> a zadaniem tej funkcji jest zwrócenie pozycji zdefiniowanej liczby w odniesieniu do listy wartości. Mówiąc bardziej obrazowo gdybyśmy wykonali operację sortowania listy, pozycja liczby oznaczałaby jej miejsce na liście po sortowaniu.</p>
<p> </p>
<p>Ogólna składnia funkcji wygląda następująco: <strong>POZYCJA(liczba;lista;[lp])</strong></p>
<p> </p>
<p>W składni funkcji POZYCJA() występują następujące argumenty:</p>
<p style="padding-left: 2em;"><strong>liczba</strong> - liczba (bądź adres komórki w której została ona wpisana), której pozycja ma zostać określona,</p>
<p style="padding-left: 2em;"><strong>lista</strong> - tablica albo odwołanie do listy liczb (wartości nie liczbowe zostaną zignorowane).</p>
<p style="padding-left: 2em;"><strong>lp</strong> - parametr opcjonalny - argument określający sposób określania pozycji liczby. Jeżeli argument lp jest równy 0 lub został pominięty, pozycja liczby jest ustalana w oparciu o listę sortowaną w kolejności malejącej. Jeżeli zaś parametr przyjmie wartość 1 stosowane jest sortowanie w kolejności rosnącej.</p>
<p> </p>
<p>Poniżej trzy przykłady użycia funkcji POZYCJA()</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image23.png" alt="image23" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Przykład 1</strong>: formuła: <strong>=POZYCJA(2143;E4:E9)</strong> - naszym zadaniem jest określenie pozycji wyniku Tadeusza Nowaka zakładając, że wygrywa osoba z większą ilością punktów. Wpisując formułę jej wynik zostaje ustalony na 3 - wartość 2143 przy sortowaniu malejącym w zdefiniowanej liście liczb (zakres komórek od E4 do E9) ma pozycję numer trzy.</p>
<p> </p>
<p><strong>Przykład 2</strong>: formuła: <strong>=POZYCJA(2143;E4:E9;1)</strong> - sytuacja podobna tylko z tą różnicą iż wygrywa osoba z mniejszą ilością punktów. Do formuły został dołączony parametr: lp nakazujący odnaleźć pozycję szukanej wartości ale z wykorzystaniem sortowania rosnącego. Wynikiem działania formuły jest wartość: 4.</p>
<p> </p>
<p><strong>Przykład 3</strong>: formuła: <strong>=POZYCJA(E15;E$15:E$20)</strong> - określenie zdobytego miejsca (wygrywa ten kto ma więcej punktów).</p>
<p> </p>
<p>Ostatnimi funkcjami jakie chciałbym przedstawić są dwie funkcje <strong>WYSZUKAJ.PIONOWO()</strong> oraz <strong>WYSZUKAJ.POZIOMO()</strong></p>
<p> </p>
<p>Zadaniem funkcji WYSZUKAJ.PIONOWO() jest odnalezienie szukanej wartości w pierwszej kolumnie tabeli lecz zwrócenie odpowiadającej jej wartości z kolumny innej. Funkcja przeszukuje tabelę z góry na dół (stąd słowo PIONOWO w nazwie funkcji). Składnia funkcji WYSZUKAJ.PIONOWO() jest następująca: <strong>WYSZUKAJ.PIONOWO(szukana_wartość;tablica;nr_indeksu_kolumny;[przeszukiwany_zakres])</strong></p>
<p> </p>
<p>Kolejne argumenty funkcji WYSZUKAJ.PIONOWO() to:</p>
<p style="padding-left: 2em;"><strong>szukana_wartość</strong> - odszukiwana wartość w pierwszej kolumnie tabeli. Szukana wartość powinna zawsze znajdować się w pierwszej kolumnie tablicy oznacza to, że gdy szukana wartość znajduje się w komórce B2, to tabela powinna rozpoczynać się od kolumny B,</p>
<p style="padding-left: 2em;"><strong>tabela</strong> - zakres komórek określający tabelę,</p>
<p style="padding-left: 2em;"><strong>nr_indeksu_kolumny</strong> - numer kolumny z której zostanie zwrócona wartość. Jeśli tabelą jest zakres C3: E20, kolumnę C liczymy jako pierwszą kolumnę, D jako drugą i tak dalej.</p>
<p style="padding-left: 2em;"><strong>przeszukiwany_zakres</strong> - argument opcjonalny. Obejmuje ustawienie flagi PRAWDA - dopasowanie przybliżone (pierwsza wartość większa niż Szukana_wartość), lub flagi FAŁSZ - dopasowanie dokładne (brak dopasowania, wyświetli w wyniku błąd #N/D!). Jeśli parametr w definicji funkcji zostanie pominięty domyślnie przyjmowaną opcją jest PRAWDA, czyli dopasowanie przybliżone. Użycie flagi PRAWDA wymusza na Nas wykonanie sortowania w porządku rosnącym dla pierwszej kolumny przeszukiwanej tabeli.</p>
<p> </p>
<p>To tradycyjnie już przykład (a nawet dwa).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image24.png" alt="image24" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Przykład 1</strong>: - formuła: <strong>=WYSZUKAJ.PIONOWO(K16;J3:N12;2) </strong>- użyta formuła zwraca wartość 39 - dzieje się tak ponieważ szukaną przez Nas wartością jest ta wpisana w komórkę K16 (czyli 5), tabela obejmuje zakres komórek od J3 do N12 (kolumna J jest liczona jako pierwsza) zaś parametr nr_indeksu_kolumny został określona jako 2. Mówiąc prościej realizowane jest zadanie zwrócenia wartości z drugiej kolumny w przypadku wystąpienia dopasowania. Ponieważ dla wartości szukanej w drugiej kolumnie znajduje się 39 toteż ta wartość jest wynikiem formuły.</p>
<p> </p>
<p><strong>Przykład 2</strong>: - formuła: <strong>=WYSZUKAJ.PIONOWO(K16;J3:N12;4) </strong>- przykład analogiczny z tym powyżej lecz tym razem zwracana jest wartość z kolumny 4 czyli 36</p>
<p> </p>
<p>Kolejny przykład pokazuje nieprawidłowe działanie funkcji WYSZUKAJ.PIONOWO()</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image25.png" alt="image25" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Przykład 1</strong>: - formuła: <strong>=WYSZUKAJ.PIONOWO(K37;J24:N33;3)</strong> - formuła ta nie działa tak jakbyśmy tego oczekiwali gdyż dla szukanej wartości (6) zwróconą wartością jest 53 a po analizie Naszej tablicy danych dochodzimy, że powinna to być wartość 61. Formuła ta nie działa ponieważ parametr nr_indeksu_kolumny nie został zdefiniowany czyli została przyjęta wartość domyślna (PRAWDA) a pierwsza kolumna naszej tablicy nie jest posortowana w kolejności rosnącej.</p>
<p> </p>
<p><strong>Przykład 2</strong>: - formuła: <strong>=WYSZUKAJ.PIONOWO(K37;J24:N33;3;FAŁSZ)</strong> - tym razem zwrócona wartość jest prawidłowa gdyż zastosowanie flagi FAŁSZ dla parametru nr_indeksu_kolumny włącza dopasowanie dokładne (pierwsza kolumna nie musi podlegać sortowaniu).</p>
<p> </p>
<p>No to ostatni przykład.</p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image26.png" alt="image26" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Przykład 1</strong>: - formuła: <strong>=WYSZUKAJ.PIONOWO(C34;B25:D30;2;FAŁSZ) </strong>- dysponujemy listą pracowników i zadaniem jest odszukanie numeru ID pracownika na podstawie wpisanego nazwiska i imienia (komórka C34). Wynikiem działania formuły jest wyświetlenie ID pracownika. Została użyta flaga FAŁSZ gdyż dane w kolumnie pierwszej nie są posortowane.</p>
<p> </p>
<p><strong>Przykład 2</strong>: - formuła: <strong>=WYSZUKAJ.PIONOWO(C34;B25:D30;3;FAŁSZ) </strong>- przykład analogiczny do powyższego lecz tym razem szukaną informacją jest numer PESEL pracownika.</p>
<p> </p>
<p>Poniżej powielenie obu przykładów i jak widać funkcja WYSZUKAJ.PIONOWO() nie rozróżnia wielkości liter.</p>
<p> </p>
<p>Jeszcze na chwilę zatrzymajmy się przy tej funkcji gdyż osobnego omówienia wymaga sytuacja w której w przeszukiwanej tablicy pojawi się pusta komórka. Tak jak to ma miejsce w poniższym przykładzie. Jak można zauważyć przy pracowniku Gazda Beata brak jest numeru PESEL. Formuła wpisana w komórkę C58 (<strong>=WYSZUKAJ.PIONOWO(C57;B48:D53;3;FAŁSZ)</strong>) zwraca wartość 0.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image27.png" alt="image27" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Dzieje się tak ponieważ Excel traktuje puste komórki w obszarze wyników jako zera. Uniknięcia tego typu przypadku pozwoli nam formuła, która wygląda następująco: <strong>=JEŻELI(WYSZUKAJ.PIONOWO(C57;B48:D53;3;FAŁSZ)="";"BRAK NUMERU PESEL";(WYSZUKAJ.PIONOWO(C57;B48:D53;3;FAŁSZ)))</strong> Jak można zauważyć problem rozwiązuje funkcja JEŻELI() - jeżeli brak jest numeru PESEL (czyli komórka jest pusta) zostaje wypisany stosowny komunikat (sytuacja w przypadku pracownika Gazda Beata) jeśli numer PESEL został wpisany zostaje on wyświetlony (pracownik Nowak Tadeusz).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image28.png" alt="image28" width="700" height="281" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Choć w tym zadaniu można pokusić się o dodatkowe poprawienie formuły. Bo co w przypadku w którym numer PESEL jest wpisany tylko na wskutek pomyłki została pominięta np. jedna cyfra? Na szczęście błąd ten (jak to ma miejsce w przypadku pracownika Polak Michał - numer PESEL liczy 10 cyfr a nie 11) łatwo jest zweryfikować. Wystarczy, że dodamy jeszcze jedną funkcję JEŻELI(), której zadaniem będzie sprawdzenie poprawności numeru (a raczej ilości cyfr z których się on składa). Formuła, która zrealizuje zadanie po modyfikacji z tą przedstawioną poprzednio przyjmie postać: <strong>=JEŻELI(WYSZUKAJ.PIONOWO(C82;B67:D72;3;FAŁSZ)="";"BRAK NUMERU PESEL";JEŻELI(DŁ(D71)=11;WYSZUKAJ.PIONOWO(C82;B67:D72;3;FAŁSZ);"BŁĄD PESEL"))</strong> W przypadku wystąpienia błędu w numerze PESEL zostanie wyświetlony komunikat: BŁĄD PESEL</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image29.png" alt="image29" width="700" height="407" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Bliźniaczą funkcją jest funkcja: <strong>WYSZUKAJ.POZIOMO()</strong> Działa ona na tych samych zasadach co WYSZUKAJ.PIONOWO() lecz przeszukiwanie tabeli nie odbywa się pionowo lecz poziomo - wyszukiwana wartość umiejscowiono jest w pierwszym wierszu tabeli a zwracana jest odpowiadająca jej wartość z ustalonego wiersza.</p>
<p> </p>
<p>Składnia funkcji jest następująca: <strong>WYSZUKAJ.POZIOMO(odniesienie;tablica;nr_wiersza;[wiersz])</strong></p>
<p> </p>
<p>Kolejne argumenty funkcji WYSZUKAJ.POZIOMO() to:</p>
<p style="padding-left: 2em;"><strong>odniesienie</strong> - odszukiwana wartość w pierwszej kolumnie tabeli. Szukana wartość powinna zawsze znajdować się w pierwszym wierszu tablicy - oznacza to, że gdy szukana wartość znajduje się w komórce B2, to tabela powinna rozpoczynać się od wiersza 2,</p>
<p style="padding-left: 2em;"><strong>tablica</strong> - zakres komórek określający tabelę,</p>
<p style="padding-left: 2em;"><strong>nr_wiersza</strong> - numer wiersza z którego zostanie zwrócona wartość. Jeśli tabelą jest zakres C3: E20, wiersz 3 liczymy jako wiersz pierwszy, 4 jako drugi i tak dalej.</p>
<p style="padding-left: 2em;"><strong>wiersz </strong>- argument opcjonalny. Obejmuje ustawienie flagi PRAWDA - dopasowanie przybliżone (pierwsza wartość większa niż odniesienie), lub flagi FAŁSZ - dopasowanie dokładne (brak dopasowania, wyświetli w wyniku błąd #N/D!). Jeśli parametr w definicji funkcji zostanie pominięty domyślnie przyjmowaną opcją jest PRAWDA, czyli dopasowanie przybliżone. Użycie flagi PRAWDA wymusza na Nas wykonanie sortowania w porządku rosnącym dla pierwszego wiersza przeszukiwanej tabeli.</p>
<p> </p>
<p>I podobnie jak w przypadku funkcji WYSZUKAJ.PIONOWO() teksty pisane dużymi i małymi literami są równoważne.</p>
<p> </p>
<p>No to zilustrujmy działanie tej funkcji.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image30.png" alt="image30" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Przykład 1</strong>: - formuła: <strong>=WYSZUKAJ.POZIOMO(S16;R2:V12;6)</strong> - formuła dla szukanej wartości wpisanej w komórkę S16 (Dane 2) zwraca wynik 21 gdyż w przeszukiwanej tablicy liczba ta znajduje się w szóstym wierszu.</p>
<p> </p>
<p><strong>Przykład 2</strong>: - formuła: <strong>=WYSZUKAJ.POZIOMO(S16;Q2:V12;3)</strong> - podobnie jak w przykładzie powyżej lecz w tym przypadku zwracana jest liczba znajdująca się w wierszu 3.</p>
<p> </p>
<p>To przeanalizujmy jeszcze jeden przykład dotyczący funkcji WYSZUKAJ.POZIOMO(). Mamy listę uczniów, którym należy wystawić ocenę w zależności od ilości zdobytych punktów. Kryterium przydzielania oceny wygląda następująco:</p>
<ul>
<li style="padding-left: 4em;">0-24 pkt - ocena: 1</li>
<li style="padding-left: 4em;">25-44 pkt - ocena: 2</li>
<li style="padding-left: 4em;">45-69 pkt - ocena: 3</li>
<li style="padding-left: 4em;">70-89 pkt - ocena: 4</li>
<li style="padding-left: 4em;">90-97 pkt - ocena: 5</li>
<li style="padding-left: 4em;">98-100 pkt - ocena: 6</li>
</ul>
<p> </p>
<p>Formuła, która zrealizuje nasze zadanie przyjmie postać: <strong>=WYSZUKAJ.POZIOMO(T28;$S34:$Y35;2)</strong> (komórka T29) Wartość ilości zdobytych punktów przez danego ucznia jest porównywana z tabelą punktacji (zakres komórek od S34 do Y35). Po dokonaniu porównania do danej liczby punktów przypisywana jest ocena.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image31.png" alt="image31" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Te samą operację wykonamy wpisując tabelę w formułę (zamiast funkcji WYSZUKAJ.POZIOMO() stosujemy WYSZUKAJ.PIONOWO()): <strong>=WYSZUKAJ.PIONOWO(T28;{0\"1";25\"2";45\"3";70\"4";90\"5";98\"6"};2)</strong> - więcej o definicji tabel znajdziesz w wpisie: <a href="http://slow7.pl/office/item/116-excel-w-zadaniach-funkcje-tablicowe">Excel w zadaniach. Funkcje tablicowe</a></p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image32.png" alt="image32" width="700" height="179" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Ewentualnie to samo zadanie możemy zrealizować z wykorzystaniem funkcji <strong>WYSZUKAJ() </strong>Formuła realizująca te zadanie przyjmie postać: <strong>=WYSZUKAJ(T40;{0;25;45;70;90;98};{1;2;3;4;5;6})</strong></p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image33.png" alt="image33" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Funkcji <strong>WYSZUKAJ() </strong>jeszcze nie omówiłem więc wypadałoby kilka słów o niej powiedzieć.</p>
<p> </p>
<p>Funkcja <strong>WYSZUKAJ()</strong> działa w ten sposób, że przeszukuje zakres w postaci jednego wiersza lub jednej kolumny wartości i zwraca wartość z tej samej pozycji w drugim obszarze.</p>
<p> </p>
<p>Składnia funkcji WYSZUKAJ() jest następująca:</p>
<p><strong>WYSZUKAJ(Szukana_wartość;Przeszukiwany_wektor;Wektor_wynikowy)</strong></p>
<p> </p>
<p>Argumenty funkcji:</p>
<p style="padding-left: 2em;"><strong>szukana_wartość</strong> - wartość szukana, która ma zostać odnaleziona w zakresie określonym w argumencie przeszukiwany_wektor.</p>
<p style="padding-left: 2em;"><strong>przeszukiwany_wektor</strong> - pojedynczy wiersz lub kolumna, w którym znajdują się wartości podlegające procesowi przeszukania. Wartości te należy ułożyć w porządku rosnącym.</p>
<p style="padding-left: 2em;"><strong>wektor_wynikowy</strong> - pojedynczy wiersz lub kolumna zawierająca wartości, które zostaną zwrócone. Rozmiar zdefiniowanego obszaru musi być tożsamy z tym ustalonym przy definicji parametru przeszukiwany_wektor.</p>
<p> </p>
<p>Poniżej przykład z wykorzystaniem funkcji WYSZUKAJ(). Założenia ćwiczenia są takie iż na podstawie wpisanej liczby nadgodzin należy przeszeregować odpowiednią wartość przyznanej premii. Liczby nadgodzin i odpowiadający im procent premii zostały zebrane w tabeli. Formuła realizująca te zadanie ma postać: <strong>=WYSZUKAJ(C2;E2:E6;G2:G6)</strong></p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_13/image34.png" alt="image34" width="700" height="224" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Formuł ta wyświetla prawidłowe wartości przyznanej premii gdyż funkcja WYSZUKA() działa w ten sposób, że dopasowuje najbliższą najmniejszą znalezioną wartość.</p>
<p> </p>
<p>I na tym etapie już kolejny mój wpis na temat Excela chciałbym zakończyć. Mam nadzieję, że przedstawione przykłady użycia funkcji tekstowych i wyszukujących pozwolą Wam je efektywnie wykorzystać do budowy swoich własnych arkuszy.</p></div>Excel w zadaniach. Tworzenie i modyfikacja wykresów.2017-03-20T14:53:49+00:002017-03-20T14:53:49+00:00http://slow7.pl/office/item/140-excel-w-zadaniach-tworzenie-i-modyfikacja-wykresowpikolo[email protected]<div class="K2FeedImage"><img src="http://slow7.pl/media/k2/items/cache/1d36d23b156ead252433d4ce2c21c387_S.jpg" alt="Excel w zadaniach. Tworzenie i modyfikacja wykresów." /></div><div class="K2FeedIntroText"><p>Wykres jak podaje definicja jest graficzną prezentacją danych oraz jest nieodzownym narzędziem programu Excel. Umiejętność tworzenia wykresów jak i ich modyfikacja jest jednym z kluczowych elementów jakie musimy przyswoić by móc sprawnie i efektywnie z arkuszem pracować. Tak więc artykuł ten, za zadanie ma, tą niezbędną wiedzę Ci przekazać. Nie przedłużając zapraszam do lektury i do odkrycia świata wykresów w narzędziu MS Excel.</p>
</div><div class="K2FeedFullText">
<p>Zanim zaczniemy dobrze jest uzmysłowić sobie i odpowiedzieć na pytanie - Po co w ogóle wykresy stosować? Aby udzielić odpowiedzi na to pytanie przeprowadźmy prosty eksperyment.</p>
<p>Spójrz na dane przedstawione poniżej i odpowiedz na pytanie - <strong>W którym miesiącu temperatura była najwyższa?</strong></p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image1.png" alt="image1" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>A teraz zadanie podobne pytanie z wykorzystaniem tego samego zestawu danych - <strong>W którym miesiącu temperatura była najniższa?</strong></p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image2.png" alt="image2" width="700" height="475" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Jeśli Czytelniku odpowiedziałeś na te dwa proste pytania, zastanów się - W którym przypadku odpowiedź padła szybciej? Nie będzie tajemnicą, że pewnie w pytaniu w którym został użyty wykres. Dzieje się tak ponieważ o wiele łatwiej jest Nam pracować na danych, które zostały zobrazowane. Patrząc na wykres automatycznie udzielamy odpowiedzi pomijając etap zapoznawania się z danymi i ich analizowania jak to miało miejsce w przypadku „surowych” danych liczbowych.</p>
<p> </p>
<p>I fakt ten jest odpowiedzią na pytanie - Po co stosować wykresy? Aby Nam było wygodniej. Dodatkowo przedstawiając dane w postaci wykresu łatwiej dostrzeżemy zależności pomiędzy nimi a także prawidłowości, nimi rządzące.</p>
<p> </p>
<p>Wszystkie wykresy jakie zostały zaprezentowane w artykule można pobrać: <a href="http://slow7.pl/images/stories/office/excel_12/wykresy_strona.xlsx">tutaj</a></p>
<p> </p>
<p>Mając już świadomość celowości stosowania wykresów zanim przejdziemy do ich tworzenia omówmy elementy z których wykres jest zbudowany.</p>
<p> </p>
<p>Poniższy wykres przedstawia dwie serie danych: <strong>sprzedaż</strong> oraz <strong>marża</strong> i jest <strong>wykresem złożonym</strong> ponieważ do wizualizacji danych na nim zaprezentowanych użyto dwóch typów wykresów: <strong>marża</strong> jest przedstawiona w postaci <strong>wykresu liniowego</strong> zaś sprzedaż to <strong>wykres kolumnowy</strong>. Wartość sprzedaży została przedstawiona w postaci kolumn zaś wartości marży to linia z dodatkowo zdefiniowanymi znacznikami w kształcie trójkątów, które reprezentują wartości marży w danym miesiącu.</p>
<p> </p>
<p>Dane, które posłużyły do zbudowania wykresu znajdują się w komórkach od B1 do D14 (wartość TOTAL na wykresie została pominięta).</p>
<p> </p>
<p>Dodatkowo poniżej wykresu została umieszczona tabela danych oraz dla wartości sprzedaży została wyrysowana linia trendu.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image3.png" alt="image3" width="700" height="434" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Każdy wykres (no może prawie każdy) posiada oś poziomą nazywaną osią kategorii oraz oś pionową tzw. oś wartości. W przypadku powyższego wykresu na osi kategorii zostały umieszczone nazwy miesięcy. A co w przypadku osi wartości? Przedstawiony wykres posiada dwie osie pionowe. Powodem takiego stanu rzeczy jest użycie dwóch serii danych o różnych jednostkach (sprzedaż jest reprezentowana przez ilość sztuk zaś jednostką marży jest procent). Oś po lewej stronie przypisana jest wykresowi kolumnowemu (sprzedaż), natomiast oś prawa to wykres liniowy (marża).</p>
<p> </p>
<p>Każda z osi została podpisana, skalowanie osi prawej obejmuje wartości od 0 do 1400, zaś osi lewej od 0% do 50% Aby łatwiej było wykres odczytywać na wykresie umieszczono linie podziału (są to tzw. główne linie podziału, ale także wyrysowano linie podziału pomocnicze). Linie podziału zostały włączone zarówno dla osi pionowej jak i poziomej.</p>
<p> </p>
<p>Obszar wykresu został wyróżniony kolorem szarym.</p>
<p> </p>
<p>Na dole wykresu została umieszczona legenda.</p>
<p> </p>
<p>Tworząc bądź modyfikując wykres bardzo często Czytelniku będziesz musiał opisane elementy wykresu zaznaczać więc warto wiedzieć jak tą operację wykonać.</p>
<p> </p>
<p>Excel oferuje nam trzy sposoby zaznaczenia:</p>
<ul>
<li>za pomocą myszy,</li>
<li>z wykorzystaniem klawiatury,</li>
<li>przy użyciu kontrolki Elementy wykresu.</li>
</ul>
<p> </p>
<p>Najprostszym sposobem zaznaczenia elementu wykresu jest użycie myszki gdyż aby zaznaczyć dany element należy go po prostu kliknąć (najechanie na dany element spowoduje wyświetlenie jego nazwy).</p>
<p> </p>
<p>Drugi sposób polega na użyciu klawiatury. Rozpoczynamy od kliknięcie na dowolny element a zmiana elementu następuje poprzez użycie strzałek góra dół w połączeniu z klawiszem Ctrl (choć zależy to od wersji pakietu gdyż w niektórych odsłonach narzędzia wystarcza użycie samych strzałek).</p>
<p> </p>
<p>W przypadku wybrania serii danych, etykiet bądź legendy można dodatkowo wykorzystać strzałkę prawo lub lewo tak aby wybrać pojedynczy element.</p>
<p> </p>
<p>Ostatni sposób wykorzystuje tzw. kontrolkę elementów wykresu bądź będąc bardziej precyzyjnym listę wszystkich elementów z których dany wykres został zbudowany. Listę tą znajdziemy w grupie <strong>Narzędzia wykresów</strong> na zakładce <strong>Formatowanie</strong> w sekcji <strong>Bieżące zaznaczenie </strong>(oczywiście w pierwszej kolejności musimy zaznaczyć wykres). Za jej pomocą po uaktywnieniu wykresu możemy wybrać pożądany jego element.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image4.png" alt="image4" width="700" height="433" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p> </p>
<p>Jak już wiemy z jakich elementów wykres się składa i jak te elementy zaznaczyć omówmy dostępne typy wykresów.</p>
<p> </p>
<p><strong>Wykresy kolumnowe</strong></p>
<p> </p>
<p>Najczęściej stosowanym typem wykresu jest wykres kolumnowy. Dane w tym wykresie reprezentowane są poprzez kolumny a wysokość danej kolumny zależna jest od wartości danych. Na wykresie tym może być umiejcowionych wiele kolumn, różniących się pomiędzy sobą np. kolorem. Kolor kolumn odzwierciedla użycie wielu serii danych.</p>
<p> </p>
<p>Wykres tego typu stosuje się do ukazania różnic między wartościami w ramach jednej serii a także do porównywania różnych serii danych.</p>
<p> </p>
<p>Excel pozwala nam na zdefiniowanie siedmiu podtypów wykresów kolumnowych przy czym trzy podtypy zostały zarezerwowane dla widoku 2-W a pozostałe cztery dla widoku 3-W.</p>
<p> </p>
<p>Na rysunku poniżej zaprezentowano przykład wykresu kolumnowego. Wykres przedstawia miesięczną sprzedaż trzech produktów (komputery stacjonarne, laptopy, tablety) - każdy produkt to pojedyncza seria danych. Dodatkowo zostały włączone etykiety danych (wartości nad kolumnami).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image5.png" alt="image5" width="700" height="465" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Oczywiście do zagadnienia można podejść trochę z innej strony i sprzedaż poszczególnych produktów przedstawić w postaci trzech grup w ramach, których każda kolumna będzie reprezentować dany miesiąc, tak jak to zostało zobrazowane na wykresie poniżej.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image6.png" alt="image6" width="700" height="501" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Wykresy słupkowe</strong></p>
<p> </p>
<p>Ten typ wykresu jest bardzo podobny do wykresu kolumnowego gdyż pokazuje serie danych (serii może być oczywiście kilka), która zamiast być przedstawiona w postaci pionowych kolumn jest ukazana jako poziome słupki (to tak jakbyśmy wykres kolumnowy obrócili o 90 stopni w prawo).</p>
<p> </p>
<p>Przykład takiego wykresu przedstawiono na rysunku poniżej. Wykres przedstawia powierzchnię kontynentów, dodatkowo dla obszaru wykresu zostało zdefiniowane wypełnienie gradientowe a dla każdego z słupków został ustalony odrębny kolor.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image7.png" alt="image7" width="700" height="406" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>W Excelu dostępnych jest sześć podtypów wykresów słupkowych obejmujących widok 2-W, 3-W oraz dane skumulowane. Wykres tego typu najczęściej stosowany jest przy analizie ankiet do zobrazowania ilości udzielonych odpowiedzi na dane pytanie.</p>
<p> </p>
<p><strong>Wykresy liniowe</strong></p>
<p> </p>
<p>Wykresy tego typu używa się podczas prezentacji wartości, które mają charakter danych ciągłych np. ilość sprzedanego towaru czy uzyskanego przychodu.</p>
<p> </p>
<p>W wykresie liniowym poszczególne serie danych różnią się od siebie kolorem użytych linii oraz typem zdefiniowanych znaczników zaś wykres ten może obejmować dowolną liczbę serii.</p>
<p> </p>
<p>Wykres liniowy z dwiema seriami danych został zaprezentowany poniżej. Na wykresie zostały umieszczone dane przedstawiające dzienną liczbę odwiedzin fikcyjnej strony internetowej (okres odwiedzin obejmuje część roku 2015 oraz 2016). Zastosowane linie różnią się między sobą kolorem ale również typem użytych znaczników (kwadrat oraz romb).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image8.png" alt="image8" width="700" height="381" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Wykresy kołowe</strong></p>
<p> </p>
<p>Wykresy kołowe obejmują tylko jedną serię danych gdyż w głównej mierze są one wykorzystywane do tego by ukazać proporcje pomiędzy przedstawianymi danymi.</p>
<p> </p>
<p>Na rysunku poniżej został zaprezentowany przykładowy wykres kołowy (a nawet dwa), ten po lewej w widoku dwuwymiarowym zaś po prawej w widoku trójwymiarowym. Wykres przedstawia ilości komputerów w zależności od zainstalowanego na nich systemu operacyjnego.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image9.png" alt="image9" width="700" height="299" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Wykres kołowy w połączeniu z wykresem słupkowym (tzw. wykres słupkowy kołowego) pozwala Nam na przedstawienie wybranego wycinka koła w postaci wykresu słupkowego - tak jak to zostało pokazane poniżej. Do danych z poprzedniego przykładu zostały dodane maszyny pracujące pod kontrolą systemu Linux w rozbiciu na poszczególne dystrybucje (ich liczba została wyświetlona na wykresie słupkowym). Dodatkowo obszar wykresu został wypełniony deseniem.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image10.png" alt="image10" width="700" height="317" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Pewną odmianą wykresu kołowego jest wykres pierścieniowy, który podobnie jak wykres kołowy pokazuje zachodzące relacje między elementami stanowiącymi całość, lecz w odróżnieniu od niego wykres pierścieniowy może zawierać więcej niż jedną serię danych. Na wykresie poniżej zostały ukazane dwie serie danych - pierwsza z nich ukazuje liczbę ludności na poszczególnych kontynentach (pierścień zewnętrzny) zaś seria druga to powierzchnia kontynentów (pierścień wewnętrzny).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image11.png" alt="image11" width="700" height="427" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Wykresy XY (punktowe)</strong></p>
<p> </p>
<p>Ten typ wykresu różni się od pozostałych tym, że brakuje w nim osi kategorii oznacza to, że obie osie reprezentują wartości danych. Dlatego też świetnie nadaje się on do reprezentacji danych pomiędzy, którymi zachodzi zależność np. wykresy funkcji. Tak jak to zostało ukazane na poniższym wykresie na którym to została wyrysowana funkcja: y=2sin(x)</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image12.png" alt="image12" width="700" height="411" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Wykresy warstwowe</strong></p>
<p> </p>
<p>Wykres warstwowy można porównać do wykresu liniowego lecz w odróżnieniu od niego obszar, który znajduje się poniżej linii danych jest wypełniony kolorem.</p>
<p> </p>
<p>Poniżej przykład wykresu warstwowego przedstawiający sprzedaż elektroniki w poszczególnych kwartałach.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image13.png" alt="image13" width="700" height="438" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>W przypadku wykresów warstwowych do dyspozycji mamy wykresy dwu oraz trzy wymiarowe wraz z opcją skumulowania wartości. Przykład wykresu warstwowego trójwymiarowego (te same wartości co w wykresie powyżej) został ukazany niżej.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image14.png" alt="image14" width="700" height="495" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Wykresy radarowe</strong></p>
<p> </p>
<p>Wykres tego rodzaju charakteryzuje się tym, że dla każdej kategorii została zarezerwowana oddzielna oś. Osie te mają punkt wspólny w środku wykresu z którego rozchodzą się na zewnątrz.</p>
<p> </p>
<p>Przykładem wykresu radarowego może być ten zaprezentowany poniżej - wykres przedstawia średnią miesięczną temperatur w okresie jednego roku.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image15.png" alt="image15" width="700" height="572" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Wykresy powierzchniowe </strong></p>
<p> </p>
<p>Do zbudowania tego typu wykresu należy posłużyć się co najmniej dwiema seriami. W wykresach opisanych powyżej użyte kolory służyły do odróżnienia poszczególnych serii danych zaś w tym wykresie użyty kolor reprezentują wartości. Liczba kolorów, która jest prezentowana na wykresie zależy od definicji jednostki osi wartości (użyty kolor przypisany jest do jednostki).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image16.png" alt="image16" width="700" height="504" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Wykresy bąbelkowe</strong></p>
<p> </p>
<p>Wykresy bąbelkowe są ciekawą odmianą wykresu gdyż za pomocą ich na pojedynczym wykresie można przedstawić dane, które obejmują trzy serie - dwie serie dotyczą usytuowania bąbelka względem osi XY zaś trzecia seria przypisana jest do wielkości bąbelka. W przypadku tego typu wykresu brak jest osi kategorii - osie XY są osiami wartości.</p>
<p> </p>
<p>Poniżej na rysunku został pokazany przykładowy wykres bąbelkowy. Usytuowanie bąbla względem osi daje nam informację o powierzchni danego kraju (oś x) oraz zaludnieniu (oś y) zaś wielkość bąbla to gęstość zaludnienia.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image17.png" alt="image17" width="700" height="514" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Wykresy giełdowe</strong></p>
<p> </p>
<p>Wykresy tego typu najczęściej służą do zobrazowania danych dotyczących informacji giełdowych. Wykres giełdowy wymaga od 3 do 5 serii danych (liczba serii zależna od wybranego typu wykresu giełdowego).</p>
<p> </p>
<p>Na rysunku poniżej zaprezentowano przykład takiego wykresu do ukazania danych nie związanych z giełdą ale do bardziej przyziemnej rzeczy jaką jest dzienna temperatura w miesiącu lipcu. Z wykresu możemy odczytać najniższą, najwyższą temperaturę zanotowaną w ciągu dnia oraz wyliczoną średnią.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image18.png" alt="image18" width="700" height="516" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>W przypadku wykresów w programie MS Excel do czynienia będziemy mieli z <strong>wykresami osadzonymi</strong> oraz <strong>arkuszem wykresów</strong>. Podział ten uwzględnia lokalizację wykresu. Wykres osadzony znajduje się razem z danymi w arkuszu natomiast arkusz wykresu jest osobnym arkuszem w którym znajduje się tylko wykres.</p>
<p> </p>
<p>Znamy już podstawowe typy wykresów czas zatem przejść do utworzenia pierwszego wykresu (w końcu).</p>
<p> </p>
<p>Nie jest tajemnicą, że aby wykres utworzyć potrzebujemy danych liczbowych dlatego też skorzystamy z tych jakie posłużyły Nam do ukazania wykresu kolumnowego (dla przypomnienia dane te dotyczą sprzedaży sprzętu elektronicznego).</p>
<p> </p>
<p>Dobrą praktyką podczas budowania wykresu jest wyrobienie w sobie nawyku opisywania danych. Czynność ta sprowadza się do umieszczenia stosownych informacji w wierszu bądź kolumnie nad (bądź obok) serią gromadzonych danych. Wykonanie tej prostej czynności spowoduje umieszczenie tych informacji na tworzonym wykresie. Aby to zobrazować prześledźmy dwie sytuacje. W pierwszej użytkownik zapomniał o opisaniu danych (rysunek po lewej) w drugiej zaś dane zostały opisane (rysunek po prawej).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image19.png" alt="image19" width="700" height="221" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Na podstawie tych informacji zostały utworzone dwa wykresy kolumnowe.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image20.png" alt="image20" width="700" height="223" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Jak widać powyżej w przypadku opisania danych informacje te są zawarte na wykresie. Oczywiście wykres po lewej można poprawić ale zmusza to Nas do ręcznego wprowadzenia tych informacji. Czynność ta jednak wymaga wykonania większej liczby operacji (czytaj: trzeba się więcej naklikać) niż opisanie danych.</p>
<p> </p>
<p>Przechodzimy zatem do utworzenia wykresu. Dane do arkusza zostały wprowadzone, kolejną czynnością jest ich zaznaczenie (punkt 1). Po zaznaczeniu danych, które na wykresie mają być umieszczone należy na wstążce wybrać kartę <strong>Wstawianie </strong>(punkt 2). Na karcie tej odszukujemy sekcję <strong>Wykresy</strong> z której to wybieramy interesujący Nas typ wykresu (punkt 3). Wybór typu wykresu spowoduje osadzanie go w arkuszu (punkt 4).</p>
<p> </p>
<p>Gratulacje!!! Właśnie wstawiłeś swój pierwszy wykres.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image21.png" alt="image21" width="700" height="341" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Jeśli Czytelniku masz problem z określeniem typu wykresu zainteresuj się ikoną: <strong>Polecane wykresy</strong> Wybór ikony spowoduje wyświetlenie nowego okna w którym to program przedstawi Ci kilka wariantów wizualizacji zaznaczonych danych. Te najpopularniejsze znajdziesz na zakładce <strong>Polecane wykresy</strong>, gdy te zaproponowane Cię nie zadowalają lub gdy zależy Ci na wykresie nietypowym wybierz zakładkę <strong>Wszystkie wykresy</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image22.png" alt="image22" width="700" height="391" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Wykres do arkusza został wstawiony. Efekt naszych dotychczasowych prac może wydać się Nam nie do końca satysfakcjonujący dlatego też by uzyskać wykres, który spełnia nasze oczekiwania możemy posłużyć się szeregiem opcji, których wybranie pozwoli Nam na dostosowanie wyglądu oraz układu wykresu.</p>
<p> </p>
<p>Na szybką zmianę układu pozwoli nam opcja <strong>Szybki układ</strong>, która dostępna jest na karcie <strong>Projektowanie</strong>. Wybranie ikony spowoduje zaproponowanie przez program szeregu układów tworzonego wykresu. Zmianie podlegają takie opcje jak tytuły osi, legenda, etykieta danych czy tytuł wykresu.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image23.png" alt="image23" width="700" height="409" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Podobnie jak inne obiekty umiejscowione w arkuszu takie jak np. kształt czy zdjęcie tak i w przypadku wykresów możliwa jest zmiana jego położenia czy rozmiarów. Aby zmienić parametry wykresu należy go uaktywnić, po zaznaczeniu wykresu na wstążce pojawią się nowe karty na których zostały zgrupowane opcje dotyczące formatowania wykresów.</p>
<p> </p>
<p>W przypadku pakietu MSOffice 20016 będą to dwie karty: <strong>Projektowanie</strong> i <strong>Formatowanie</strong></p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image24.png" alt="image24" width="700" height="441" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>zaś w przypadku MSOffice 2010 trzy: <strong>Projektowanie</strong>, <strong>Układ</strong> oraz <strong>Formatowanie</strong></p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image25.png" alt="image25" width="700" height="490" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Powodem tej różnicy jest zmiana podejścia producenta oprogramowania w MSOffice 2016 do edycji elementów (obrazy, wykresy, kształty, SmartArt, WordArt itd.) w programach tworzących całych pakiet. W nowych odsłonach Office zostały dodane dodatkowe przyciski dostępne po uaktywnieniu danego obiektu. Ilość dostępnych opcji zależna jest od typu obiektu. Poniżej przedstawiono przykład edycji wykresu. Kliknięcie wykresu spowoduje wyświetlenie trzech dodatkowych ikon: <strong>znaczek plus</strong> odpowiedzialny za dodanie/usunięcie elementów wykresu (np. tytuły osi, legenda itd.); <strong>pędzel</strong> - definicja stylu wykresu oraz określenie kolorów; <strong>lejek</strong> - filtrowanie danych.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image26.png" alt="image26" width="700" height="364" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Dlatego też w Office 2016 brak jest karty <strong>Układ</strong> gdyż opcje definiujące wykres zmieniły swoją lokalizację - są dostępne po wybraniu ikony ze znakiem plus.</p>
<p> </p>
<p>Aby zmienić rozmiar wykresu należy go uaktywnić i po wybraniu jednej z kontrolek dostępnych na rogach obiektu ale również na jego bokach ustalić pożądany rozmiar. Dokładne ustalenie rozmiaru dostępne jest również na karcie <strong>Formatowanie</strong> w sekcji <strong>Rozmiar</strong></p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image27.png" alt="image27" width="700" height="413" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Aby przenieś wykres w obrębie arkusza należy kliknąć na niego w obszarze obszaru wykresu i przeciągnąć go w docelowe miejsce (chwytamy za ramkę). Można również użyć kombinacji klawiszy Ctrl+X (wytnij) a następnie Ctrl+V (wklej). Aby wykres osadzony przenieś do arkusza wykresów (ale również odwrotnie) należy dany wykres uaktywnić a następnie wybrać ikonę <strong>Przenieś wykres</strong>, która dostępna jest na karcie <strong>Projektowanie</strong> w sekcji <strong>Lokalizacja</strong> W nowo otwartym oknie określamy docelowe miejsce wykresu. Opcja ta jest dostępna również w menu kontekstowym wykresu.</p>
<p> </p>
<p>Wybranie opcji <strong>Nowy arkusz</strong> spowoduje umieszczenie wykresu w nowym arkuszu natomiast opcja <strong>Obiekt w</strong> pozwala na ręczne zdefiniowania arkusza w którym przenoszony wykres ma być umiejscowiony.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image28.png" alt="image28" width="700" height="432" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Aby wykres skopiować możemy posłużyć się kombinacją klawiszy Ctrl+C (kopiuj) a następnie Ctrl+V (wklej). Opcjonalnie kopiowanie wykresu dokonamy poprzez zaznaczenie wykresu a następnie wybraniu i przytrzymaniu klawisza Ctrl i ponownym kliknięciu na ramkę wykresu (kursor zmieni swój kształt) i przeciągnięciu wykresu przy użyciu PPM. W otwartym menu kontekstowym możemy wybrać rodzaj przeprowadzanej operacji (kopiowanie bądź przenoszenie).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image29.png" alt="image29" width="700" height="432" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Aby przenieś bądź skopiować arkusz wykresu należy kliknąć na dany arkusz PPM i z menu kontekstowego wybrać opcję <strong>Przenieś lub kopiuj</strong>.</p>
<p> </p>
<p>Aby usunąć wykres należy kliknąć na niego z przytrzymanym klawiszem Ctrl (użycie Ctrl spowoduje zaznaczenie całego wykresu niezależnie w którym miejscu wykresu klikniemy) i naciśnięciu klawisza <strong>Delete</strong>. Aby zaś usunąć arkusz wykresu z menu kontekstowego wybieramy opcję <strong>Usuń</strong>.</p>
<p> </p>
<p>Jak już wiemy cały wykres składa się z wielu elementów takich jak np. etykiety, legenda czy opisy osi. Aby dany element przenieś bądź usunąć należy go zaznaczyć. Aby dokonać zmiany położenia klikamy na ramkę elementu i przesuwamy go w docelowe miejsce. Zaś by element usunąć korzystamy z klawisza <strong>Delete</strong>.</p>
<p> </p>
<p>I tu należy się mała uwaga gdyż zdarza się że dany element składa się z wielu obiektów. Przykładem takiego elementu są np. etykiety. Jeśli zdecydujemy się na umieszczenie w tworzonym wykresie etykiet wartości danych to okaże się że do każdej reprezentowanej wartości zostanie przypisana jedna etykieta. Aby zamienić położenie pojedynczej etykiety (bądź ją usunąć) należy na nią kliknąć dwukrotnie - pojedyncze kliknięcie zaznacza cały element czyli wszystkie etykiety a ponowne użycie LPM uaktywnia tylko żądaną etykietę.</p>
<p> </p>
<p>Jak już zaznaczyłem od wersji MSOffice 2013 zmieniło się podejście dotyczące formatowania obiektów w programach wchodzących w skład pakietu. Do tej pory (Office 2007 oraz Office 2010) wszystkie opcje były zgrupowane na wstążce programu. W nowszych odsłonach oprogramowania opcje te zostały przeniesione na dodatkowy boczny pasek, który wyświetla się po zaznaczeniu danego elementu obiektu. Poniżej na rysunku zostało pokazane okno formatowania odnoszące się do elementu: osi wykresu. Dostępne opcje w oknie zadań zależne są od formatowanego elementu. Położenie okna możemy ustalić sami.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image30.png" alt="image30" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>W górnej części okna zostały umieszczone dwie zakładki: <strong>Opcje osi</strong> oraz <strong>Opcje tekstu</strong>. W tym przykładowym oknie zadań po wybraniu zakładki <strong>Opcje osi</strong> zostaną wyświetlone cztery ikony (w kolejności): <strong>Wypełnienie i linia</strong>, <strong>Efekty Rozmiar i właściwości </strong>oraz<strong> Opcje osi</strong>. Kliknięcie na daną ikonę da Nam dostęp do kolejnych ustawień.</p>
<p> </p>
<p>Ustawień tych wszystkich nie sposób opisać gdyż jest ich naprawdę wiele (by nie powiedzieć, że ogrom) dlatego zachęcam cię Czytelniku abyś opcje te przetestował Sam. W większości przypadków zaproponowane ustawienia przez program są wystarczające jeśli zaś potrzebujemy coś więcej to do tych ustawień należy sięgnąć.</p>
<p> </p>
<p>Najważniejszymi opcjami i tymi z których chyba najczęściej się korzysta są te związane z formatowaniem osi. Podczas tworzenia wykresu Excel tak dobiera skalę wykresu by wszystkie wartości na podstawie, których wykres jest budowany na nim się znalazły. Lecz często dochodzi do sytuacji w której musimy wprowadzić pewne poprawki. Przyjrzyjmy się wykresowi przedstawionemu na poniższym rysunku (wykres liniowy przedstawia sprzedaż komputerów stacjonarnych i laptopów).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image31.png" alt="image31" width="700" height="444" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Jak widać powyżej część obszaru wykresu jest zmarnowana gdyż wartości osi Y zostały ustalone na przedział od 0 do 900. Tak naprawdę oś ta by mogła zaczynać się od 500 ponieważ żadna zmienna nie przyjmuje wartości poniżej tej liczby. Spróbujmy zatem dokonać korekty.</p>
<p> </p>
<p>W pierwszym kroku klikamy na oś Y wykresu (punkt 1) a następnie z menu <strong>Formatowania osi</strong> wybieramy ikonę <strong>Opcje osi </strong>(punkt 2) i z dostępnych gałęzi rozwijamy tę nazwaną jako <strong>Opcje osi</strong> (punkt 3). Rozwinięcie gałęzi spowoduje wyświetlenie opcji związanych z granicami osi.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image32.png" alt="image32" width="700" height="388" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Aby skorygować wykres w polu <strong>Minimum</strong> wpisujemy 500. Zmiana wartości spowodowała, że oś Y rozpoczyna się nie od 0 ale od 500</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image33.png" alt="image33" width="700" height="369" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Niezbyt satysfakcjonujące może być dla Nas ustawienie związane z jednostkami. Teraz gdy nasz obszar wykresu uległ powiększeniu możemy pokusić się o zmianę dokładności wykresu. Oś Y skalowana jest co 50 aby uzyskać trochę większą dokładność zmieńmy tę wartość na 20. Zmiany dokonujemy poprzez wpisanie wartości w pole <strong>jednostki głównej</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image34.png" alt="image34" width="700" height="372" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Definicja jednostki pomocniczej oraz wyświetlenie linii osi pomocniczej dodatkowo zwiększy dokładność całego wykresu. Aby włączyć wyświetlanie linii pomocniczych należy kliknąć na wykres i po wyświetleniu ikon związanych z opcjami wykresu wybrać tę ze znaczkiem plus. Ikona ta odpowiedzialna jest za dodawanie/usuwanie elementów wykresu (w przypadku starszych odsłon pakietu Office stosowne opcje znajdziesz na wstążce - karta <strong>Układ</strong>). Po wyborze ikony z menu wybieramy <strong>Linie siatki</strong> a następnie <strong>Podstawowe pomocnicze poziome</strong>. Efekt finalny został przedstawiony poniżej (dodatkowo zostały włączone linie siatki: podstawowe główne pionowe a wartość jednostki pomocniczej dla osi Y została ustalona na 5).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image35.png" alt="image35" width="700" height="463" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Gdy w szczególności zależy Nam na przedstawieniu wartości prezentowanych danych oraz by odciążyć czytających wykres od samodzielnego ich określania możemy zdecydować się na włączenie <strong>etykiet danych</strong>. Etykiety te umieścimy na wykresie po wyborze ikony plus i wybraniu opcji <strong>Etykiety danych </strong>(opcjonalnie możemy określić ich umiejscowienie oraz format).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image36.png" alt="image36" width="700" height="463" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Inną opcją (którą ja najczęściej stosuję, zamiast etykiet danych) jest włączenie <strong>Tabeli danych</strong> (opcja dostępna również pod ikoną plus). Włączenie tabeli spowoduje umieszczenie stosownych informacji w dolnej części wykresu.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image37.png" alt="image37" width="700" height="463" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>A co w przypadku gdy do tworzonego wykresu chcemy dodać nową serię danych? Wyjścia z tej sytuacji mamy dwa albo <strong>tworzymy nowy wykres</strong> lub do już istniejącego <strong>dodajemy nowe informacje</strong>.</p>
<p> </p>
<p>Aby dodać serię danych należy w obszarze wykresu kliknąć PPM i z menu wybrać opcję <strong>Zaznacz dane</strong> (opcja również dostępna jest pod ikoną lejka tzw. <strong>filtry wykresu</strong> po jej wybraniu należy kliknąć na <strong>Wybierz dane</strong>).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image38.png" alt="image38" width="700" height="410" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Do naszego testowego wykresu dodamy serię danych obrazującą roczną sprzedaż tabletów. Aby tego dokonać w oknie <strong>Wybieranie źródła danych</strong> klikamy na przycisk <strong>Dodaj</strong>.</p>
<p> </p>
<p>W nowo otwartym oknie <strong>Edytowanie serii</strong> określamy <strong>Nazwę serii</strong> - możemy wpisać ją sami bądź wybrać adres komórki w której to nazwa ta jest umieszczona (punkt 1) oraz w polu <strong>Wartości serii</strong> wprowadzamy wartości, które zostaną naniesione na wykres (wartości wybieramy poprzez wybranie stosownych komórek bądź określamy je ręcznie wpisując stosowne liczby, które od siebie oddzielamy średnikiem) - punkt 2. Całość dwukrotnie zatwierdzamy przyciskiem <strong>OK</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image39.png" alt="image39" width="700" height="354" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Innym sposobem dodania nowych danych do wykresu jest przeciągnięcie ramki zakresu. Metoda ta świetnie sprawdza się wtedy gdy dodawane dane przylegają do tych już znajdujących się na wykresie. Aby skorzystać z tej metody zaczynamy od kliknięcia na wykres do którego chcemy dodać nową serię danych. Po wybraniu wykresu, Excel zaznaczy wszystkie dane, które już na wykresie się znajdują, nasza praca sprowadza się do rozszerzenia ramki, którą te dane są otoczone. Ramkę rozciągamy tak aby swym zasięgiem objęła dane, które do wykresu mają być dołączone. Myk ten nie uda się w przypadku wykresów umieszczonych w osobnym arkuszu.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image40.png" alt="image40" width="700" height="290" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Dodanie nowej serii możemy również zrealizować poprzez wykorzystanie kopiowania i wklejania. Wystarczy tylko skopiować dane, które na wykresie mają być umieszczone a następnie wybrać wykres i je wkleić.</p>
<p> </p>
<p>Podczas tworzenia wykresów możemy natknąć się na problem związany z zbyt długimi opisami serii. Excel będzie sam starał się ten problem rozwiązać poprzez odpowiedni dobór wielkości czcionki czy obrót tekstu ale może okazać się to niewystarczające (wszystko zależy od wielkości wykresu).</p>
<p> </p>
<p>W naszym wykresie można by było pokusić się o skrócenie nazw miesięcy umieszczonych na osi X do np. trzech znaków. Aby takową zmianę dokonać ponownie wywołujemy okno <strong>Wybieranie źródła danych</strong> i w sekcji <strong>Etykiety osi</strong> <strong>poziomej (kategorii)</strong> klikamy na przycisk <strong>Edytuj </strong>(punkt 1). W nowo otwartym oknie <strong>Etykiety osi</strong> zaznaczamy komórki w której zawarte są etykiety (opcjonalnie możemy zdefiniować je ręcznie tak jak w przypadku dodawania nowej serii danych) - punkt 2 i całość zatwierdzamy dwukrotnie przyciskiem <strong>OK</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image41.png" alt="image41" width="700" height="327" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Nowe etykiety powinny zostać umieszczone na wykresie.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image42.png" alt="image42" width="700" height="397" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>W niektórych sytuacjach dobrym wyjściem jest zaprezentowanie danych za pomocą odrębnych typów wykresów (tzw. wykres słożony). Oznacza to, że do danej serii danych możemy przypisać określony typ wykresu.</p>
<p> </p>
<p>Zmodyfikujmy nasz wykres i dodaną przed chwilą serię danych dotyczącą sprzedaży tabletów przedstawmy w postaci kolumn. Aby zmienić typ wykresu dla określonej serii danych w pierwszym kroku należy wybrać ją i z menu kontekstowego bądź wstążki wskazać opcję <strong>Zmień typ wykresu</strong> (w poprzednich wersjach Excela postępujemy analogicznie z wyjątkiem wersji 2003 gdzie ten typ wykresu - kolumnowo-liniowy znajdziemy w typach wykresu; nie zaznaczenie serii spowoduje zmianę wyglądu dla wszystkich serii danych).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image43.png" alt="image43" width="700" height="432" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Po wybraniu opcji w oknie <strong>Zmienianie typu wykresu</strong> w sekcji <strong>Wybierz typ wykresu i oś dla serii danych</strong> przypisujemy typ wykresu do serii danych (w naszym przypadku do serii tablety został przypisany wykres kolumnowy).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image44.png" alt="image44" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Nasze serie danych opisuje ta sama jednostka dlatego też opcjonalna opcja <strong>Oś pomocnicza</strong> nie została uaktywniona. Całość oczywiście zatwierdzamy przyciskiem <strong>OK</strong>.</p>
<p> </p>
<p>Gdy Czytelniku będziesz na wspólnym wykresie przedstawiał dane, które opisują odrębne jednostki wykorzystaj możliwość dodania dodatkowej osi wartości tak jak to zostało pokazane na rysunku poniżej.</p>
<p> </p>
<p>Kolumny ukazują średnią miesięczną temperaturę (w stopniach Celsjusza) natomiast linia - średnią miesięczną opadów (w mm). Ponieważ obie serie danych są opisywane poprzez różne jednostki oś pomocnicza do wykresu została dodana - lewa zarezerwowana jest dla temperatury, prawa zaś dla opadów.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image45.png" alt="image45" width="700" height="498" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Bezpośrednie tworzenie tego typów wykresów z serii danych możliwe jest po wybraniu typu wykresu <strong>Kombi</strong>.</p>
<p> </p>
<p>Niewiele osób wie, że wykres możemy również edytować bezpośrednio z paska formuły. Dzieje się tak ponieważ do każdej serii danych jest przypisywana funkcja: SERIE.</p>
<p> </p>
<p>Ogólna składnia tej funkcji przedstawia się następująco:</p>
<p style="text-align: center;"><strong>=SERIE(nazwa_serii; etykiety_kategorii; wartości; kolejność; rozmiary)</strong></p>
<p> </p>
<p>Użyte argumenty oznaczają:</p>
<p style="margin-left: 30px;"><strong>nazwa_serii</strong> - argument ten przechowuje informację o nazwie serii, nazwa ta znajduje się w legendzie wykresu. W przypadku wykresu zbudowanego tylko z jednej serii, nazwa ta jest jednocześnie tytułem wykresu. W przypadku braku jego zdefiniowania Excel zastosuje nazwę domyślną Seria 1 (w przypadku większej liczby serii - Seria 2, Seria 3 itd.).</p>
<p style="margin-left: 30px;"><strong>etykiety_kategorii</strong> - zakres zawierający informację o etykietach (w przypadku wykresów typu XY argument ten definiuje miejsce przechowywania wartości X). Brak argumentu spowoduje przypisanie kolejnych liczb całkowitych, zaczynających się od 1 do każdej z wartości składających się na serię danych. </p>
<p style="margin-left: 30px;"><strong>wartości </strong>- argument określający położenie wartości serii (w przypadku wykresów typu XY argument ten definiuje miejsce przechowywania wartości Y).</p>
<p style="margin-left: 30px;"><strong>kolejność</strong> - kolejność wyświetlenia serii danych (zastosowanie tylko w przypadku wykresów zawierających więcej niż jedną serię danych).</p>
<p style="margin-left: 30px;"><strong>rozmiary</strong> - argument definiujący wielkość bąbelków (zastosowanie tylko w przypadku wykresów bąbelkowych).</p>
<p style="margin-left: 30px;">Użyte argumenty zawierają odwołanie do arkusza oraz zawsze są typu bezwzględnego (użycie znaku $).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image46.png" alt="image46" width="700" height="283" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Modyfikując te argumenty możemy wpływać na wygląd naszego wykresu.</p>
<p> </p>
<p>Przedstawiając dane na wykresie czasem spotykamy się z sytuacją w której musimy zaznaczyć pewne odchylenie od wartości reprezentowanej na wykresie. Odchylenie te np. może wynikać z tzw. niepewności pomiarowej. Odczytując daną wielkość przy użyciu narzędzia pomiarowego nigdy odczytywana wartość nie jest w 100% wartością rzeczywistą. Niedokładność ta najczęściej związana jest z klasą dokładności przyrządów pomiarowych (lecz nie tylko bo np. sam sposób wykonywania pomiarów może już być obarczony błędem).</p>
<p> </p>
<p>Przyjrzyj się wykresowi przedstawionemu poniżej na którym to zaprezentowano wyniki pomiarów temperatury. Wyniki te obrazują średnią miesięczną temperatury. W każdym miesiącu dokonano pomiarów lecz przy użyciu termometru o innej dokładności. Jeśli samo użyte narzędzie nie jest Nam w stanie zapewnić dokładności pomiaru tak więc my nie możemy być pewni, że wartość odczytana jest tą wartością faktyczną. Dlatego też by zaznaczyć wartość niepewności możemy w tym celu użyć <strong>słupków błędu</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image47.png" alt="image47" width="700" height="426" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Na wykresie słupki błędów dodajemy po wybraniu ikony <strong>Elementy wykresu</strong> (to ta z plusem) a następnie opcji <strong>Słupki błędów</strong>.</p>
<p> </p>
<p>Excel zapewnia nam użycie następujących typów słupków błędu:</p>
<p style="margin-left: 30px;"><strong>Stała wartość</strong> - użytkownik sam określa stałą wartość błędu,</p>
<p style="margin-left: 30px;"><strong>Wartość procentowa</strong> - słupek błędów jest zdefiniowanym przez użytkownika procentem danej wartości,</p>
<p style="margin-left: 30px;"><strong>Odchylenie standardowe</strong> - błąd jest wyliczoną przez program wartością odchylenia standardowego obejmującego całą serię danych,</p>
<p style="margin-left: 30px;"><strong>Błąd standardowy</strong> - wartości słupków błędu są wyliczane na podstawie serii danych,</p>
<p style="margin-left: 30px;"><strong>Niestandardowa </strong>- sami określamy wartości definiujące dolny i górny zakres błędu.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image48.png" alt="image48" width="700" height="296" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Słupki błędów dostępne są w wykresach typu: punktowy (XY), kolumnowy, słupkowy, liniowy oraz warstwowy. Przy czym w wykresach typu XY słupki błędów mogą zostać zdefiniowane zarówno dla wartości X jak i Y.</p>
<p> </p>
<p>Do prognozowania przyszłych wartości może Nam posłużyć <strong>linia trendu</strong>, której zadaniem jest pokazanie jak kształtuje się kierunek zmian w ramach badanej serii.</p>
<p> </p>
<p>Aby na wykresie umieścić linię trendu należy wybrać ikonę <strong>Elementy wykresu</strong> z dostępnych opcji zaznaczyć <strong>Linia trendu</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image49.png" alt="image49" width="700" height="338" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>W ramach serii danych możemy umieścić wiele różnych linii trendu a wybierać możemy pomiędzy następującymi jej typami: wykładnicza, liniowa, logarytmiczna, wielomianowa, potęgowa oraz średnia ruchoma.</p>
<p> </p>
<p>Na rysunku powyżej zaprezentowano wykres przedstawiający liczbę złożonych ofert od liczby przeprowadzonych sprzedaży jak widać ogólny trend wyznaczony za pomocą linii trendu wskazuje, że mamy do czynienia z tendencją wzrostową.</p>
<p> </p>
<p>Jeśli często tworzymy dany typ wykresu stratą czasu jest każdorazowe formatowanie wykresu dlatego też wykres można zapisać jako szablon, który zostanie wykorzystany do utworzenia kolejnych wykresów.</p>
<p> </p>
<p>Aby utworzyć szablon należy zaznaczyć wykres i po kliknięciu na niego PPM z dostępnych opcji wybrać <strong>Zapisz jako szablon</strong>. W oknie <strong>Zapisywanie szablonu wykresu</strong> określamy nazwę szablonu oraz jego lokalizację. Szablony są zapisywane do pliku z rozszerzeniem *.CRTX</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image50.png" alt="image50" width="700" height="421" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Aby użyć zapisany w poprzednim kroku szablon należy zaznaczyć dane, które powinny znaleźć się na wykresie i z wstążki wybrać polecenie <strong>Polecane wykresy</strong>. Po otwarciu okna <strong>Wstawianie wykresu</strong> przechodzimy do zakładki <strong>Wszystkie wykresy</strong> i z dostępnych opcji wybieramy <strong>Szablony</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image51.png" alt="image51" width="700" height="497" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Zastosowanie szablonu jest jedną z metod zachowania formatowania wykresu ale nie jedyną. Do dyspozycji mamy jeszcze:</p>
<p style="margin-left: 30px;"><strong>Skopiowanie wykresu źródłowego i zmiana jego danych</strong> <strong>źródłowych</strong> - metoda polega na skopiowaniu wykresu, którego formatowanie chcemy wykorzystać i dokonanie zmiany danych, które na wykresie zostały zamieszczone.</p>
<p style="margin-left: 30px;"><strong>Skopiowanie formatowania</strong> - po kliknięciu na wykres, którego formatowanie chcemy skopiować wybieramy <strong>Kopiuj</strong> (bądź używamy skrótu Ctrl+C) wybieramy wykres, który ma odziedziczyć dany styl a następnie przechodzimy na kartę <strong>Narzędzia główne</strong> gdzie po kliknięciu na strzałkę pod ikoną <strong>Wklej</strong> (w wcześniejszych wersjach Schowek) wybieramy <strong>Wklej specjalnie</strong>. W nowo otwartym oknie <strong>Wklejanie specjalne</strong> wybieramy opcję <strong>Formanty</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image52.png" alt="image52" width="700" height="420" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Aby wydrukować wykres osadzony należy objąć go zaznaczeniem tak jak to robi się w przypadku danych. Przed wykonaniem operacji drukowania jeśli Czytelniku nie jesteś pewny efektów wykorzystaj <strong>Podgląd wydruku</strong>. W przypadku wykresów umieszczonych w osobnym arkuszu są one zawsze drukowane na osobnej stronie. Wykres osadzony również można wydrukować oddzielnie, wystarczy go uaktywnić a następnie wybrać polecenie <strong>Plik/Drukuj</strong>. Aby zaś wyłączyć drukowanie wykresu należy kliknąć na niego a następnie w oknie zadań <strong>Formatowanie obszaru wykresu</strong> wybrać ikonę <strong>Rozmiar i właściwości</strong> a następnie rozwinąć gałąź <strong>Właściwości</strong> i odhaczyć opcję <strong>Drukuj obiekt</strong>. Po wykonaniu tych operacji wykresu nie będzie można wydrukować.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image53.png" alt="image53" width="700" height="344" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Jak już wyżej wspominałem aby tworzone wykresy spełniały nasze oczekiwania trzeba usiąść i opcjami tymi się pobawić. Eksperymentując na zasadzie prób i błędów sami dojdziemy do czego dana opcjami służy i jak jej użycie wpływa na tworzony wykres. Mnogość opcji na początku pracy z wykresami może przytłoczyć ale nie ma co się zrażać gdyż jak mówi pewne przysłowie „Nie od razu Rzym zbudowano” Poświęcając chwilę czasu na zabawę (tzn. naukę) prędzej czy później osiągniemy mistrzostwo w tworzeniu wykresów. Oczywiście życzę aby to nastąpiło prędzej.</p>
<p> </p>
<p>W tematyce wykresów nie wszystko zostało omówione gdyż istnieją jeszcze tzw. wykresy przebiegu w czasie oraz wykresy przestawne ale tymi zagadnieniami zajmiemy się w oddzielnych wpisach.</p>
<p> </p>
<p>W ramach nowego działu <a href="http://slow7.pl/wujek-dobra-rada" target="_blank">Wujek dobra rada</a> co jakiś czas na pewno pokażę jak krok po kroku wykonać nietypowy wykres.</p></div><div class="K2FeedImage"><img src="http://slow7.pl/media/k2/items/cache/1d36d23b156ead252433d4ce2c21c387_S.jpg" alt="Excel w zadaniach. Tworzenie i modyfikacja wykresów." /></div><div class="K2FeedIntroText"><p>Wykres jak podaje definicja jest graficzną prezentacją danych oraz jest nieodzownym narzędziem programu Excel. Umiejętność tworzenia wykresów jak i ich modyfikacja jest jednym z kluczowych elementów jakie musimy przyswoić by móc sprawnie i efektywnie z arkuszem pracować. Tak więc artykuł ten, za zadanie ma, tą niezbędną wiedzę Ci przekazać. Nie przedłużając zapraszam do lektury i do odkrycia świata wykresów w narzędziu MS Excel.</p>
</div><div class="K2FeedFullText">
<p>Zanim zaczniemy dobrze jest uzmysłowić sobie i odpowiedzieć na pytanie - Po co w ogóle wykresy stosować? Aby udzielić odpowiedzi na to pytanie przeprowadźmy prosty eksperyment.</p>
<p>Spójrz na dane przedstawione poniżej i odpowiedz na pytanie - <strong>W którym miesiącu temperatura była najwyższa?</strong></p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image1.png" alt="image1" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>A teraz zadanie podobne pytanie z wykorzystaniem tego samego zestawu danych - <strong>W którym miesiącu temperatura była najniższa?</strong></p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image2.png" alt="image2" width="700" height="475" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Jeśli Czytelniku odpowiedziałeś na te dwa proste pytania, zastanów się - W którym przypadku odpowiedź padła szybciej? Nie będzie tajemnicą, że pewnie w pytaniu w którym został użyty wykres. Dzieje się tak ponieważ o wiele łatwiej jest Nam pracować na danych, które zostały zobrazowane. Patrząc na wykres automatycznie udzielamy odpowiedzi pomijając etap zapoznawania się z danymi i ich analizowania jak to miało miejsce w przypadku „surowych” danych liczbowych.</p>
<p> </p>
<p>I fakt ten jest odpowiedzią na pytanie - Po co stosować wykresy? Aby Nam było wygodniej. Dodatkowo przedstawiając dane w postaci wykresu łatwiej dostrzeżemy zależności pomiędzy nimi a także prawidłowości, nimi rządzące.</p>
<p> </p>
<p>Wszystkie wykresy jakie zostały zaprezentowane w artykule można pobrać: <a href="http://slow7.pl/images/stories/office/excel_12/wykresy_strona.xlsx">tutaj</a></p>
<p> </p>
<p>Mając już świadomość celowości stosowania wykresów zanim przejdziemy do ich tworzenia omówmy elementy z których wykres jest zbudowany.</p>
<p> </p>
<p>Poniższy wykres przedstawia dwie serie danych: <strong>sprzedaż</strong> oraz <strong>marża</strong> i jest <strong>wykresem złożonym</strong> ponieważ do wizualizacji danych na nim zaprezentowanych użyto dwóch typów wykresów: <strong>marża</strong> jest przedstawiona w postaci <strong>wykresu liniowego</strong> zaś sprzedaż to <strong>wykres kolumnowy</strong>. Wartość sprzedaży została przedstawiona w postaci kolumn zaś wartości marży to linia z dodatkowo zdefiniowanymi znacznikami w kształcie trójkątów, które reprezentują wartości marży w danym miesiącu.</p>
<p> </p>
<p>Dane, które posłużyły do zbudowania wykresu znajdują się w komórkach od B1 do D14 (wartość TOTAL na wykresie została pominięta).</p>
<p> </p>
<p>Dodatkowo poniżej wykresu została umieszczona tabela danych oraz dla wartości sprzedaży została wyrysowana linia trendu.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image3.png" alt="image3" width="700" height="434" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Każdy wykres (no może prawie każdy) posiada oś poziomą nazywaną osią kategorii oraz oś pionową tzw. oś wartości. W przypadku powyższego wykresu na osi kategorii zostały umieszczone nazwy miesięcy. A co w przypadku osi wartości? Przedstawiony wykres posiada dwie osie pionowe. Powodem takiego stanu rzeczy jest użycie dwóch serii danych o różnych jednostkach (sprzedaż jest reprezentowana przez ilość sztuk zaś jednostką marży jest procent). Oś po lewej stronie przypisana jest wykresowi kolumnowemu (sprzedaż), natomiast oś prawa to wykres liniowy (marża).</p>
<p> </p>
<p>Każda z osi została podpisana, skalowanie osi prawej obejmuje wartości od 0 do 1400, zaś osi lewej od 0% do 50% Aby łatwiej było wykres odczytywać na wykresie umieszczono linie podziału (są to tzw. główne linie podziału, ale także wyrysowano linie podziału pomocnicze). Linie podziału zostały włączone zarówno dla osi pionowej jak i poziomej.</p>
<p> </p>
<p>Obszar wykresu został wyróżniony kolorem szarym.</p>
<p> </p>
<p>Na dole wykresu została umieszczona legenda.</p>
<p> </p>
<p>Tworząc bądź modyfikując wykres bardzo często Czytelniku będziesz musiał opisane elementy wykresu zaznaczać więc warto wiedzieć jak tą operację wykonać.</p>
<p> </p>
<p>Excel oferuje nam trzy sposoby zaznaczenia:</p>
<ul>
<li>za pomocą myszy,</li>
<li>z wykorzystaniem klawiatury,</li>
<li>przy użyciu kontrolki Elementy wykresu.</li>
</ul>
<p> </p>
<p>Najprostszym sposobem zaznaczenia elementu wykresu jest użycie myszki gdyż aby zaznaczyć dany element należy go po prostu kliknąć (najechanie na dany element spowoduje wyświetlenie jego nazwy).</p>
<p> </p>
<p>Drugi sposób polega na użyciu klawiatury. Rozpoczynamy od kliknięcie na dowolny element a zmiana elementu następuje poprzez użycie strzałek góra dół w połączeniu z klawiszem Ctrl (choć zależy to od wersji pakietu gdyż w niektórych odsłonach narzędzia wystarcza użycie samych strzałek).</p>
<p> </p>
<p>W przypadku wybrania serii danych, etykiet bądź legendy można dodatkowo wykorzystać strzałkę prawo lub lewo tak aby wybrać pojedynczy element.</p>
<p> </p>
<p>Ostatni sposób wykorzystuje tzw. kontrolkę elementów wykresu bądź będąc bardziej precyzyjnym listę wszystkich elementów z których dany wykres został zbudowany. Listę tą znajdziemy w grupie <strong>Narzędzia wykresów</strong> na zakładce <strong>Formatowanie</strong> w sekcji <strong>Bieżące zaznaczenie </strong>(oczywiście w pierwszej kolejności musimy zaznaczyć wykres). Za jej pomocą po uaktywnieniu wykresu możemy wybrać pożądany jego element.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image4.png" alt="image4" width="700" height="433" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p> </p>
<p>Jak już wiemy z jakich elementów wykres się składa i jak te elementy zaznaczyć omówmy dostępne typy wykresów.</p>
<p> </p>
<p><strong>Wykresy kolumnowe</strong></p>
<p> </p>
<p>Najczęściej stosowanym typem wykresu jest wykres kolumnowy. Dane w tym wykresie reprezentowane są poprzez kolumny a wysokość danej kolumny zależna jest od wartości danych. Na wykresie tym może być umiejcowionych wiele kolumn, różniących się pomiędzy sobą np. kolorem. Kolor kolumn odzwierciedla użycie wielu serii danych.</p>
<p> </p>
<p>Wykres tego typu stosuje się do ukazania różnic między wartościami w ramach jednej serii a także do porównywania różnych serii danych.</p>
<p> </p>
<p>Excel pozwala nam na zdefiniowanie siedmiu podtypów wykresów kolumnowych przy czym trzy podtypy zostały zarezerwowane dla widoku 2-W a pozostałe cztery dla widoku 3-W.</p>
<p> </p>
<p>Na rysunku poniżej zaprezentowano przykład wykresu kolumnowego. Wykres przedstawia miesięczną sprzedaż trzech produktów (komputery stacjonarne, laptopy, tablety) - każdy produkt to pojedyncza seria danych. Dodatkowo zostały włączone etykiety danych (wartości nad kolumnami).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image5.png" alt="image5" width="700" height="465" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Oczywiście do zagadnienia można podejść trochę z innej strony i sprzedaż poszczególnych produktów przedstawić w postaci trzech grup w ramach, których każda kolumna będzie reprezentować dany miesiąc, tak jak to zostało zobrazowane na wykresie poniżej.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image6.png" alt="image6" width="700" height="501" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Wykresy słupkowe</strong></p>
<p> </p>
<p>Ten typ wykresu jest bardzo podobny do wykresu kolumnowego gdyż pokazuje serie danych (serii może być oczywiście kilka), która zamiast być przedstawiona w postaci pionowych kolumn jest ukazana jako poziome słupki (to tak jakbyśmy wykres kolumnowy obrócili o 90 stopni w prawo).</p>
<p> </p>
<p>Przykład takiego wykresu przedstawiono na rysunku poniżej. Wykres przedstawia powierzchnię kontynentów, dodatkowo dla obszaru wykresu zostało zdefiniowane wypełnienie gradientowe a dla każdego z słupków został ustalony odrębny kolor.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image7.png" alt="image7" width="700" height="406" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>W Excelu dostępnych jest sześć podtypów wykresów słupkowych obejmujących widok 2-W, 3-W oraz dane skumulowane. Wykres tego typu najczęściej stosowany jest przy analizie ankiet do zobrazowania ilości udzielonych odpowiedzi na dane pytanie.</p>
<p> </p>
<p><strong>Wykresy liniowe</strong></p>
<p> </p>
<p>Wykresy tego typu używa się podczas prezentacji wartości, które mają charakter danych ciągłych np. ilość sprzedanego towaru czy uzyskanego przychodu.</p>
<p> </p>
<p>W wykresie liniowym poszczególne serie danych różnią się od siebie kolorem użytych linii oraz typem zdefiniowanych znaczników zaś wykres ten może obejmować dowolną liczbę serii.</p>
<p> </p>
<p>Wykres liniowy z dwiema seriami danych został zaprezentowany poniżej. Na wykresie zostały umieszczone dane przedstawiające dzienną liczbę odwiedzin fikcyjnej strony internetowej (okres odwiedzin obejmuje część roku 2015 oraz 2016). Zastosowane linie różnią się między sobą kolorem ale również typem użytych znaczników (kwadrat oraz romb).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image8.png" alt="image8" width="700" height="381" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Wykresy kołowe</strong></p>
<p> </p>
<p>Wykresy kołowe obejmują tylko jedną serię danych gdyż w głównej mierze są one wykorzystywane do tego by ukazać proporcje pomiędzy przedstawianymi danymi.</p>
<p> </p>
<p>Na rysunku poniżej został zaprezentowany przykładowy wykres kołowy (a nawet dwa), ten po lewej w widoku dwuwymiarowym zaś po prawej w widoku trójwymiarowym. Wykres przedstawia ilości komputerów w zależności od zainstalowanego na nich systemu operacyjnego.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image9.png" alt="image9" width="700" height="299" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Wykres kołowy w połączeniu z wykresem słupkowym (tzw. wykres słupkowy kołowego) pozwala Nam na przedstawienie wybranego wycinka koła w postaci wykresu słupkowego - tak jak to zostało pokazane poniżej. Do danych z poprzedniego przykładu zostały dodane maszyny pracujące pod kontrolą systemu Linux w rozbiciu na poszczególne dystrybucje (ich liczba została wyświetlona na wykresie słupkowym). Dodatkowo obszar wykresu został wypełniony deseniem.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image10.png" alt="image10" width="700" height="317" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Pewną odmianą wykresu kołowego jest wykres pierścieniowy, który podobnie jak wykres kołowy pokazuje zachodzące relacje między elementami stanowiącymi całość, lecz w odróżnieniu od niego wykres pierścieniowy może zawierać więcej niż jedną serię danych. Na wykresie poniżej zostały ukazane dwie serie danych - pierwsza z nich ukazuje liczbę ludności na poszczególnych kontynentach (pierścień zewnętrzny) zaś seria druga to powierzchnia kontynentów (pierścień wewnętrzny).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image11.png" alt="image11" width="700" height="427" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Wykresy XY (punktowe)</strong></p>
<p> </p>
<p>Ten typ wykresu różni się od pozostałych tym, że brakuje w nim osi kategorii oznacza to, że obie osie reprezentują wartości danych. Dlatego też świetnie nadaje się on do reprezentacji danych pomiędzy, którymi zachodzi zależność np. wykresy funkcji. Tak jak to zostało ukazane na poniższym wykresie na którym to została wyrysowana funkcja: y=2sin(x)</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image12.png" alt="image12" width="700" height="411" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Wykresy warstwowe</strong></p>
<p> </p>
<p>Wykres warstwowy można porównać do wykresu liniowego lecz w odróżnieniu od niego obszar, który znajduje się poniżej linii danych jest wypełniony kolorem.</p>
<p> </p>
<p>Poniżej przykład wykresu warstwowego przedstawiający sprzedaż elektroniki w poszczególnych kwartałach.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image13.png" alt="image13" width="700" height="438" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>W przypadku wykresów warstwowych do dyspozycji mamy wykresy dwu oraz trzy wymiarowe wraz z opcją skumulowania wartości. Przykład wykresu warstwowego trójwymiarowego (te same wartości co w wykresie powyżej) został ukazany niżej.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image14.png" alt="image14" width="700" height="495" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Wykresy radarowe</strong></p>
<p> </p>
<p>Wykres tego rodzaju charakteryzuje się tym, że dla każdej kategorii została zarezerwowana oddzielna oś. Osie te mają punkt wspólny w środku wykresu z którego rozchodzą się na zewnątrz.</p>
<p> </p>
<p>Przykładem wykresu radarowego może być ten zaprezentowany poniżej - wykres przedstawia średnią miesięczną temperatur w okresie jednego roku.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image15.png" alt="image15" width="700" height="572" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Wykresy powierzchniowe </strong></p>
<p> </p>
<p>Do zbudowania tego typu wykresu należy posłużyć się co najmniej dwiema seriami. W wykresach opisanych powyżej użyte kolory służyły do odróżnienia poszczególnych serii danych zaś w tym wykresie użyty kolor reprezentują wartości. Liczba kolorów, która jest prezentowana na wykresie zależy od definicji jednostki osi wartości (użyty kolor przypisany jest do jednostki).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image16.png" alt="image16" width="700" height="504" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Wykresy bąbelkowe</strong></p>
<p> </p>
<p>Wykresy bąbelkowe są ciekawą odmianą wykresu gdyż za pomocą ich na pojedynczym wykresie można przedstawić dane, które obejmują trzy serie - dwie serie dotyczą usytuowania bąbelka względem osi XY zaś trzecia seria przypisana jest do wielkości bąbelka. W przypadku tego typu wykresu brak jest osi kategorii - osie XY są osiami wartości.</p>
<p> </p>
<p>Poniżej na rysunku został pokazany przykładowy wykres bąbelkowy. Usytuowanie bąbla względem osi daje nam informację o powierzchni danego kraju (oś x) oraz zaludnieniu (oś y) zaś wielkość bąbla to gęstość zaludnienia.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image17.png" alt="image17" width="700" height="514" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Wykresy giełdowe</strong></p>
<p> </p>
<p>Wykresy tego typu najczęściej służą do zobrazowania danych dotyczących informacji giełdowych. Wykres giełdowy wymaga od 3 do 5 serii danych (liczba serii zależna od wybranego typu wykresu giełdowego).</p>
<p> </p>
<p>Na rysunku poniżej zaprezentowano przykład takiego wykresu do ukazania danych nie związanych z giełdą ale do bardziej przyziemnej rzeczy jaką jest dzienna temperatura w miesiącu lipcu. Z wykresu możemy odczytać najniższą, najwyższą temperaturę zanotowaną w ciągu dnia oraz wyliczoną średnią.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image18.png" alt="image18" width="700" height="516" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>W przypadku wykresów w programie MS Excel do czynienia będziemy mieli z <strong>wykresami osadzonymi</strong> oraz <strong>arkuszem wykresów</strong>. Podział ten uwzględnia lokalizację wykresu. Wykres osadzony znajduje się razem z danymi w arkuszu natomiast arkusz wykresu jest osobnym arkuszem w którym znajduje się tylko wykres.</p>
<p> </p>
<p>Znamy już podstawowe typy wykresów czas zatem przejść do utworzenia pierwszego wykresu (w końcu).</p>
<p> </p>
<p>Nie jest tajemnicą, że aby wykres utworzyć potrzebujemy danych liczbowych dlatego też skorzystamy z tych jakie posłużyły Nam do ukazania wykresu kolumnowego (dla przypomnienia dane te dotyczą sprzedaży sprzętu elektronicznego).</p>
<p> </p>
<p>Dobrą praktyką podczas budowania wykresu jest wyrobienie w sobie nawyku opisywania danych. Czynność ta sprowadza się do umieszczenia stosownych informacji w wierszu bądź kolumnie nad (bądź obok) serią gromadzonych danych. Wykonanie tej prostej czynności spowoduje umieszczenie tych informacji na tworzonym wykresie. Aby to zobrazować prześledźmy dwie sytuacje. W pierwszej użytkownik zapomniał o opisaniu danych (rysunek po lewej) w drugiej zaś dane zostały opisane (rysunek po prawej).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image19.png" alt="image19" width="700" height="221" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Na podstawie tych informacji zostały utworzone dwa wykresy kolumnowe.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image20.png" alt="image20" width="700" height="223" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Jak widać powyżej w przypadku opisania danych informacje te są zawarte na wykresie. Oczywiście wykres po lewej można poprawić ale zmusza to Nas do ręcznego wprowadzenia tych informacji. Czynność ta jednak wymaga wykonania większej liczby operacji (czytaj: trzeba się więcej naklikać) niż opisanie danych.</p>
<p> </p>
<p>Przechodzimy zatem do utworzenia wykresu. Dane do arkusza zostały wprowadzone, kolejną czynnością jest ich zaznaczenie (punkt 1). Po zaznaczeniu danych, które na wykresie mają być umieszczone należy na wstążce wybrać kartę <strong>Wstawianie </strong>(punkt 2). Na karcie tej odszukujemy sekcję <strong>Wykresy</strong> z której to wybieramy interesujący Nas typ wykresu (punkt 3). Wybór typu wykresu spowoduje osadzanie go w arkuszu (punkt 4).</p>
<p> </p>
<p>Gratulacje!!! Właśnie wstawiłeś swój pierwszy wykres.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image21.png" alt="image21" width="700" height="341" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Jeśli Czytelniku masz problem z określeniem typu wykresu zainteresuj się ikoną: <strong>Polecane wykresy</strong> Wybór ikony spowoduje wyświetlenie nowego okna w którym to program przedstawi Ci kilka wariantów wizualizacji zaznaczonych danych. Te najpopularniejsze znajdziesz na zakładce <strong>Polecane wykresy</strong>, gdy te zaproponowane Cię nie zadowalają lub gdy zależy Ci na wykresie nietypowym wybierz zakładkę <strong>Wszystkie wykresy</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image22.png" alt="image22" width="700" height="391" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Wykres do arkusza został wstawiony. Efekt naszych dotychczasowych prac może wydać się Nam nie do końca satysfakcjonujący dlatego też by uzyskać wykres, który spełnia nasze oczekiwania możemy posłużyć się szeregiem opcji, których wybranie pozwoli Nam na dostosowanie wyglądu oraz układu wykresu.</p>
<p> </p>
<p>Na szybką zmianę układu pozwoli nam opcja <strong>Szybki układ</strong>, która dostępna jest na karcie <strong>Projektowanie</strong>. Wybranie ikony spowoduje zaproponowanie przez program szeregu układów tworzonego wykresu. Zmianie podlegają takie opcje jak tytuły osi, legenda, etykieta danych czy tytuł wykresu.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image23.png" alt="image23" width="700" height="409" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Podobnie jak inne obiekty umiejscowione w arkuszu takie jak np. kształt czy zdjęcie tak i w przypadku wykresów możliwa jest zmiana jego położenia czy rozmiarów. Aby zmienić parametry wykresu należy go uaktywnić, po zaznaczeniu wykresu na wstążce pojawią się nowe karty na których zostały zgrupowane opcje dotyczące formatowania wykresów.</p>
<p> </p>
<p>W przypadku pakietu MSOffice 20016 będą to dwie karty: <strong>Projektowanie</strong> i <strong>Formatowanie</strong></p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image24.png" alt="image24" width="700" height="441" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>zaś w przypadku MSOffice 2010 trzy: <strong>Projektowanie</strong>, <strong>Układ</strong> oraz <strong>Formatowanie</strong></p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image25.png" alt="image25" width="700" height="490" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Powodem tej różnicy jest zmiana podejścia producenta oprogramowania w MSOffice 2016 do edycji elementów (obrazy, wykresy, kształty, SmartArt, WordArt itd.) w programach tworzących całych pakiet. W nowych odsłonach Office zostały dodane dodatkowe przyciski dostępne po uaktywnieniu danego obiektu. Ilość dostępnych opcji zależna jest od typu obiektu. Poniżej przedstawiono przykład edycji wykresu. Kliknięcie wykresu spowoduje wyświetlenie trzech dodatkowych ikon: <strong>znaczek plus</strong> odpowiedzialny za dodanie/usunięcie elementów wykresu (np. tytuły osi, legenda itd.); <strong>pędzel</strong> - definicja stylu wykresu oraz określenie kolorów; <strong>lejek</strong> - filtrowanie danych.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image26.png" alt="image26" width="700" height="364" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Dlatego też w Office 2016 brak jest karty <strong>Układ</strong> gdyż opcje definiujące wykres zmieniły swoją lokalizację - są dostępne po wybraniu ikony ze znakiem plus.</p>
<p> </p>
<p>Aby zmienić rozmiar wykresu należy go uaktywnić i po wybraniu jednej z kontrolek dostępnych na rogach obiektu ale również na jego bokach ustalić pożądany rozmiar. Dokładne ustalenie rozmiaru dostępne jest również na karcie <strong>Formatowanie</strong> w sekcji <strong>Rozmiar</strong></p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image27.png" alt="image27" width="700" height="413" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Aby przenieś wykres w obrębie arkusza należy kliknąć na niego w obszarze obszaru wykresu i przeciągnąć go w docelowe miejsce (chwytamy za ramkę). Można również użyć kombinacji klawiszy Ctrl+X (wytnij) a następnie Ctrl+V (wklej). Aby wykres osadzony przenieś do arkusza wykresów (ale również odwrotnie) należy dany wykres uaktywnić a następnie wybrać ikonę <strong>Przenieś wykres</strong>, która dostępna jest na karcie <strong>Projektowanie</strong> w sekcji <strong>Lokalizacja</strong> W nowo otwartym oknie określamy docelowe miejsce wykresu. Opcja ta jest dostępna również w menu kontekstowym wykresu.</p>
<p> </p>
<p>Wybranie opcji <strong>Nowy arkusz</strong> spowoduje umieszczenie wykresu w nowym arkuszu natomiast opcja <strong>Obiekt w</strong> pozwala na ręczne zdefiniowania arkusza w którym przenoszony wykres ma być umiejscowiony.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image28.png" alt="image28" width="700" height="432" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Aby wykres skopiować możemy posłużyć się kombinacją klawiszy Ctrl+C (kopiuj) a następnie Ctrl+V (wklej). Opcjonalnie kopiowanie wykresu dokonamy poprzez zaznaczenie wykresu a następnie wybraniu i przytrzymaniu klawisza Ctrl i ponownym kliknięciu na ramkę wykresu (kursor zmieni swój kształt) i przeciągnięciu wykresu przy użyciu PPM. W otwartym menu kontekstowym możemy wybrać rodzaj przeprowadzanej operacji (kopiowanie bądź przenoszenie).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image29.png" alt="image29" width="700" height="432" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Aby przenieś bądź skopiować arkusz wykresu należy kliknąć na dany arkusz PPM i z menu kontekstowego wybrać opcję <strong>Przenieś lub kopiuj</strong>.</p>
<p> </p>
<p>Aby usunąć wykres należy kliknąć na niego z przytrzymanym klawiszem Ctrl (użycie Ctrl spowoduje zaznaczenie całego wykresu niezależnie w którym miejscu wykresu klikniemy) i naciśnięciu klawisza <strong>Delete</strong>. Aby zaś usunąć arkusz wykresu z menu kontekstowego wybieramy opcję <strong>Usuń</strong>.</p>
<p> </p>
<p>Jak już wiemy cały wykres składa się z wielu elementów takich jak np. etykiety, legenda czy opisy osi. Aby dany element przenieś bądź usunąć należy go zaznaczyć. Aby dokonać zmiany położenia klikamy na ramkę elementu i przesuwamy go w docelowe miejsce. Zaś by element usunąć korzystamy z klawisza <strong>Delete</strong>.</p>
<p> </p>
<p>I tu należy się mała uwaga gdyż zdarza się że dany element składa się z wielu obiektów. Przykładem takiego elementu są np. etykiety. Jeśli zdecydujemy się na umieszczenie w tworzonym wykresie etykiet wartości danych to okaże się że do każdej reprezentowanej wartości zostanie przypisana jedna etykieta. Aby zamienić położenie pojedynczej etykiety (bądź ją usunąć) należy na nią kliknąć dwukrotnie - pojedyncze kliknięcie zaznacza cały element czyli wszystkie etykiety a ponowne użycie LPM uaktywnia tylko żądaną etykietę.</p>
<p> </p>
<p>Jak już zaznaczyłem od wersji MSOffice 2013 zmieniło się podejście dotyczące formatowania obiektów w programach wchodzących w skład pakietu. Do tej pory (Office 2007 oraz Office 2010) wszystkie opcje były zgrupowane na wstążce programu. W nowszych odsłonach oprogramowania opcje te zostały przeniesione na dodatkowy boczny pasek, który wyświetla się po zaznaczeniu danego elementu obiektu. Poniżej na rysunku zostało pokazane okno formatowania odnoszące się do elementu: osi wykresu. Dostępne opcje w oknie zadań zależne są od formatowanego elementu. Położenie okna możemy ustalić sami.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image30.png" alt="image30" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>W górnej części okna zostały umieszczone dwie zakładki: <strong>Opcje osi</strong> oraz <strong>Opcje tekstu</strong>. W tym przykładowym oknie zadań po wybraniu zakładki <strong>Opcje osi</strong> zostaną wyświetlone cztery ikony (w kolejności): <strong>Wypełnienie i linia</strong>, <strong>Efekty Rozmiar i właściwości </strong>oraz<strong> Opcje osi</strong>. Kliknięcie na daną ikonę da Nam dostęp do kolejnych ustawień.</p>
<p> </p>
<p>Ustawień tych wszystkich nie sposób opisać gdyż jest ich naprawdę wiele (by nie powiedzieć, że ogrom) dlatego zachęcam cię Czytelniku abyś opcje te przetestował Sam. W większości przypadków zaproponowane ustawienia przez program są wystarczające jeśli zaś potrzebujemy coś więcej to do tych ustawień należy sięgnąć.</p>
<p> </p>
<p>Najważniejszymi opcjami i tymi z których chyba najczęściej się korzysta są te związane z formatowaniem osi. Podczas tworzenia wykresu Excel tak dobiera skalę wykresu by wszystkie wartości na podstawie, których wykres jest budowany na nim się znalazły. Lecz często dochodzi do sytuacji w której musimy wprowadzić pewne poprawki. Przyjrzyjmy się wykresowi przedstawionemu na poniższym rysunku (wykres liniowy przedstawia sprzedaż komputerów stacjonarnych i laptopów).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image31.png" alt="image31" width="700" height="444" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Jak widać powyżej część obszaru wykresu jest zmarnowana gdyż wartości osi Y zostały ustalone na przedział od 0 do 900. Tak naprawdę oś ta by mogła zaczynać się od 500 ponieważ żadna zmienna nie przyjmuje wartości poniżej tej liczby. Spróbujmy zatem dokonać korekty.</p>
<p> </p>
<p>W pierwszym kroku klikamy na oś Y wykresu (punkt 1) a następnie z menu <strong>Formatowania osi</strong> wybieramy ikonę <strong>Opcje osi </strong>(punkt 2) i z dostępnych gałęzi rozwijamy tę nazwaną jako <strong>Opcje osi</strong> (punkt 3). Rozwinięcie gałęzi spowoduje wyświetlenie opcji związanych z granicami osi.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image32.png" alt="image32" width="700" height="388" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Aby skorygować wykres w polu <strong>Minimum</strong> wpisujemy 500. Zmiana wartości spowodowała, że oś Y rozpoczyna się nie od 0 ale od 500</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image33.png" alt="image33" width="700" height="369" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Niezbyt satysfakcjonujące może być dla Nas ustawienie związane z jednostkami. Teraz gdy nasz obszar wykresu uległ powiększeniu możemy pokusić się o zmianę dokładności wykresu. Oś Y skalowana jest co 50 aby uzyskać trochę większą dokładność zmieńmy tę wartość na 20. Zmiany dokonujemy poprzez wpisanie wartości w pole <strong>jednostki głównej</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image34.png" alt="image34" width="700" height="372" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Definicja jednostki pomocniczej oraz wyświetlenie linii osi pomocniczej dodatkowo zwiększy dokładność całego wykresu. Aby włączyć wyświetlanie linii pomocniczych należy kliknąć na wykres i po wyświetleniu ikon związanych z opcjami wykresu wybrać tę ze znaczkiem plus. Ikona ta odpowiedzialna jest za dodawanie/usuwanie elementów wykresu (w przypadku starszych odsłon pakietu Office stosowne opcje znajdziesz na wstążce - karta <strong>Układ</strong>). Po wyborze ikony z menu wybieramy <strong>Linie siatki</strong> a następnie <strong>Podstawowe pomocnicze poziome</strong>. Efekt finalny został przedstawiony poniżej (dodatkowo zostały włączone linie siatki: podstawowe główne pionowe a wartość jednostki pomocniczej dla osi Y została ustalona na 5).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image35.png" alt="image35" width="700" height="463" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Gdy w szczególności zależy Nam na przedstawieniu wartości prezentowanych danych oraz by odciążyć czytających wykres od samodzielnego ich określania możemy zdecydować się na włączenie <strong>etykiet danych</strong>. Etykiety te umieścimy na wykresie po wyborze ikony plus i wybraniu opcji <strong>Etykiety danych </strong>(opcjonalnie możemy określić ich umiejscowienie oraz format).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image36.png" alt="image36" width="700" height="463" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Inną opcją (którą ja najczęściej stosuję, zamiast etykiet danych) jest włączenie <strong>Tabeli danych</strong> (opcja dostępna również pod ikoną plus). Włączenie tabeli spowoduje umieszczenie stosownych informacji w dolnej części wykresu.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image37.png" alt="image37" width="700" height="463" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>A co w przypadku gdy do tworzonego wykresu chcemy dodać nową serię danych? Wyjścia z tej sytuacji mamy dwa albo <strong>tworzymy nowy wykres</strong> lub do już istniejącego <strong>dodajemy nowe informacje</strong>.</p>
<p> </p>
<p>Aby dodać serię danych należy w obszarze wykresu kliknąć PPM i z menu wybrać opcję <strong>Zaznacz dane</strong> (opcja również dostępna jest pod ikoną lejka tzw. <strong>filtry wykresu</strong> po jej wybraniu należy kliknąć na <strong>Wybierz dane</strong>).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image38.png" alt="image38" width="700" height="410" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Do naszego testowego wykresu dodamy serię danych obrazującą roczną sprzedaż tabletów. Aby tego dokonać w oknie <strong>Wybieranie źródła danych</strong> klikamy na przycisk <strong>Dodaj</strong>.</p>
<p> </p>
<p>W nowo otwartym oknie <strong>Edytowanie serii</strong> określamy <strong>Nazwę serii</strong> - możemy wpisać ją sami bądź wybrać adres komórki w której to nazwa ta jest umieszczona (punkt 1) oraz w polu <strong>Wartości serii</strong> wprowadzamy wartości, które zostaną naniesione na wykres (wartości wybieramy poprzez wybranie stosownych komórek bądź określamy je ręcznie wpisując stosowne liczby, które od siebie oddzielamy średnikiem) - punkt 2. Całość dwukrotnie zatwierdzamy przyciskiem <strong>OK</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image39.png" alt="image39" width="700" height="354" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Innym sposobem dodania nowych danych do wykresu jest przeciągnięcie ramki zakresu. Metoda ta świetnie sprawdza się wtedy gdy dodawane dane przylegają do tych już znajdujących się na wykresie. Aby skorzystać z tej metody zaczynamy od kliknięcia na wykres do którego chcemy dodać nową serię danych. Po wybraniu wykresu, Excel zaznaczy wszystkie dane, które już na wykresie się znajdują, nasza praca sprowadza się do rozszerzenia ramki, którą te dane są otoczone. Ramkę rozciągamy tak aby swym zasięgiem objęła dane, które do wykresu mają być dołączone. Myk ten nie uda się w przypadku wykresów umieszczonych w osobnym arkuszu.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image40.png" alt="image40" width="700" height="290" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Dodanie nowej serii możemy również zrealizować poprzez wykorzystanie kopiowania i wklejania. Wystarczy tylko skopiować dane, które na wykresie mają być umieszczone a następnie wybrać wykres i je wkleić.</p>
<p> </p>
<p>Podczas tworzenia wykresów możemy natknąć się na problem związany z zbyt długimi opisami serii. Excel będzie sam starał się ten problem rozwiązać poprzez odpowiedni dobór wielkości czcionki czy obrót tekstu ale może okazać się to niewystarczające (wszystko zależy od wielkości wykresu).</p>
<p> </p>
<p>W naszym wykresie można by było pokusić się o skrócenie nazw miesięcy umieszczonych na osi X do np. trzech znaków. Aby takową zmianę dokonać ponownie wywołujemy okno <strong>Wybieranie źródła danych</strong> i w sekcji <strong>Etykiety osi</strong> <strong>poziomej (kategorii)</strong> klikamy na przycisk <strong>Edytuj </strong>(punkt 1). W nowo otwartym oknie <strong>Etykiety osi</strong> zaznaczamy komórki w której zawarte są etykiety (opcjonalnie możemy zdefiniować je ręcznie tak jak w przypadku dodawania nowej serii danych) - punkt 2 i całość zatwierdzamy dwukrotnie przyciskiem <strong>OK</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image41.png" alt="image41" width="700" height="327" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Nowe etykiety powinny zostać umieszczone na wykresie.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image42.png" alt="image42" width="700" height="397" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>W niektórych sytuacjach dobrym wyjściem jest zaprezentowanie danych za pomocą odrębnych typów wykresów (tzw. wykres słożony). Oznacza to, że do danej serii danych możemy przypisać określony typ wykresu.</p>
<p> </p>
<p>Zmodyfikujmy nasz wykres i dodaną przed chwilą serię danych dotyczącą sprzedaży tabletów przedstawmy w postaci kolumn. Aby zmienić typ wykresu dla określonej serii danych w pierwszym kroku należy wybrać ją i z menu kontekstowego bądź wstążki wskazać opcję <strong>Zmień typ wykresu</strong> (w poprzednich wersjach Excela postępujemy analogicznie z wyjątkiem wersji 2003 gdzie ten typ wykresu - kolumnowo-liniowy znajdziemy w typach wykresu; nie zaznaczenie serii spowoduje zmianę wyglądu dla wszystkich serii danych).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image43.png" alt="image43" width="700" height="432" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Po wybraniu opcji w oknie <strong>Zmienianie typu wykresu</strong> w sekcji <strong>Wybierz typ wykresu i oś dla serii danych</strong> przypisujemy typ wykresu do serii danych (w naszym przypadku do serii tablety został przypisany wykres kolumnowy).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image44.png" alt="image44" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Nasze serie danych opisuje ta sama jednostka dlatego też opcjonalna opcja <strong>Oś pomocnicza</strong> nie została uaktywniona. Całość oczywiście zatwierdzamy przyciskiem <strong>OK</strong>.</p>
<p> </p>
<p>Gdy Czytelniku będziesz na wspólnym wykresie przedstawiał dane, które opisują odrębne jednostki wykorzystaj możliwość dodania dodatkowej osi wartości tak jak to zostało pokazane na rysunku poniżej.</p>
<p> </p>
<p>Kolumny ukazują średnią miesięczną temperaturę (w stopniach Celsjusza) natomiast linia - średnią miesięczną opadów (w mm). Ponieważ obie serie danych są opisywane poprzez różne jednostki oś pomocnicza do wykresu została dodana - lewa zarezerwowana jest dla temperatury, prawa zaś dla opadów.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image45.png" alt="image45" width="700" height="498" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Bezpośrednie tworzenie tego typów wykresów z serii danych możliwe jest po wybraniu typu wykresu <strong>Kombi</strong>.</p>
<p> </p>
<p>Niewiele osób wie, że wykres możemy również edytować bezpośrednio z paska formuły. Dzieje się tak ponieważ do każdej serii danych jest przypisywana funkcja: SERIE.</p>
<p> </p>
<p>Ogólna składnia tej funkcji przedstawia się następująco:</p>
<p style="text-align: center;"><strong>=SERIE(nazwa_serii; etykiety_kategorii; wartości; kolejność; rozmiary)</strong></p>
<p> </p>
<p>Użyte argumenty oznaczają:</p>
<p style="margin-left: 30px;"><strong>nazwa_serii</strong> - argument ten przechowuje informację o nazwie serii, nazwa ta znajduje się w legendzie wykresu. W przypadku wykresu zbudowanego tylko z jednej serii, nazwa ta jest jednocześnie tytułem wykresu. W przypadku braku jego zdefiniowania Excel zastosuje nazwę domyślną Seria 1 (w przypadku większej liczby serii - Seria 2, Seria 3 itd.).</p>
<p style="margin-left: 30px;"><strong>etykiety_kategorii</strong> - zakres zawierający informację o etykietach (w przypadku wykresów typu XY argument ten definiuje miejsce przechowywania wartości X). Brak argumentu spowoduje przypisanie kolejnych liczb całkowitych, zaczynających się od 1 do każdej z wartości składających się na serię danych. </p>
<p style="margin-left: 30px;"><strong>wartości </strong>- argument określający położenie wartości serii (w przypadku wykresów typu XY argument ten definiuje miejsce przechowywania wartości Y).</p>
<p style="margin-left: 30px;"><strong>kolejność</strong> - kolejność wyświetlenia serii danych (zastosowanie tylko w przypadku wykresów zawierających więcej niż jedną serię danych).</p>
<p style="margin-left: 30px;"><strong>rozmiary</strong> - argument definiujący wielkość bąbelków (zastosowanie tylko w przypadku wykresów bąbelkowych).</p>
<p style="margin-left: 30px;">Użyte argumenty zawierają odwołanie do arkusza oraz zawsze są typu bezwzględnego (użycie znaku $).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image46.png" alt="image46" width="700" height="283" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Modyfikując te argumenty możemy wpływać na wygląd naszego wykresu.</p>
<p> </p>
<p>Przedstawiając dane na wykresie czasem spotykamy się z sytuacją w której musimy zaznaczyć pewne odchylenie od wartości reprezentowanej na wykresie. Odchylenie te np. może wynikać z tzw. niepewności pomiarowej. Odczytując daną wielkość przy użyciu narzędzia pomiarowego nigdy odczytywana wartość nie jest w 100% wartością rzeczywistą. Niedokładność ta najczęściej związana jest z klasą dokładności przyrządów pomiarowych (lecz nie tylko bo np. sam sposób wykonywania pomiarów może już być obarczony błędem).</p>
<p> </p>
<p>Przyjrzyj się wykresowi przedstawionemu poniżej na którym to zaprezentowano wyniki pomiarów temperatury. Wyniki te obrazują średnią miesięczną temperatury. W każdym miesiącu dokonano pomiarów lecz przy użyciu termometru o innej dokładności. Jeśli samo użyte narzędzie nie jest Nam w stanie zapewnić dokładności pomiaru tak więc my nie możemy być pewni, że wartość odczytana jest tą wartością faktyczną. Dlatego też by zaznaczyć wartość niepewności możemy w tym celu użyć <strong>słupków błędu</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image47.png" alt="image47" width="700" height="426" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Na wykresie słupki błędów dodajemy po wybraniu ikony <strong>Elementy wykresu</strong> (to ta z plusem) a następnie opcji <strong>Słupki błędów</strong>.</p>
<p> </p>
<p>Excel zapewnia nam użycie następujących typów słupków błędu:</p>
<p style="margin-left: 30px;"><strong>Stała wartość</strong> - użytkownik sam określa stałą wartość błędu,</p>
<p style="margin-left: 30px;"><strong>Wartość procentowa</strong> - słupek błędów jest zdefiniowanym przez użytkownika procentem danej wartości,</p>
<p style="margin-left: 30px;"><strong>Odchylenie standardowe</strong> - błąd jest wyliczoną przez program wartością odchylenia standardowego obejmującego całą serię danych,</p>
<p style="margin-left: 30px;"><strong>Błąd standardowy</strong> - wartości słupków błędu są wyliczane na podstawie serii danych,</p>
<p style="margin-left: 30px;"><strong>Niestandardowa </strong>- sami określamy wartości definiujące dolny i górny zakres błędu.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image48.png" alt="image48" width="700" height="296" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Słupki błędów dostępne są w wykresach typu: punktowy (XY), kolumnowy, słupkowy, liniowy oraz warstwowy. Przy czym w wykresach typu XY słupki błędów mogą zostać zdefiniowane zarówno dla wartości X jak i Y.</p>
<p> </p>
<p>Do prognozowania przyszłych wartości może Nam posłużyć <strong>linia trendu</strong>, której zadaniem jest pokazanie jak kształtuje się kierunek zmian w ramach badanej serii.</p>
<p> </p>
<p>Aby na wykresie umieścić linię trendu należy wybrać ikonę <strong>Elementy wykresu</strong> z dostępnych opcji zaznaczyć <strong>Linia trendu</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image49.png" alt="image49" width="700" height="338" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>W ramach serii danych możemy umieścić wiele różnych linii trendu a wybierać możemy pomiędzy następującymi jej typami: wykładnicza, liniowa, logarytmiczna, wielomianowa, potęgowa oraz średnia ruchoma.</p>
<p> </p>
<p>Na rysunku powyżej zaprezentowano wykres przedstawiający liczbę złożonych ofert od liczby przeprowadzonych sprzedaży jak widać ogólny trend wyznaczony za pomocą linii trendu wskazuje, że mamy do czynienia z tendencją wzrostową.</p>
<p> </p>
<p>Jeśli często tworzymy dany typ wykresu stratą czasu jest każdorazowe formatowanie wykresu dlatego też wykres można zapisać jako szablon, który zostanie wykorzystany do utworzenia kolejnych wykresów.</p>
<p> </p>
<p>Aby utworzyć szablon należy zaznaczyć wykres i po kliknięciu na niego PPM z dostępnych opcji wybrać <strong>Zapisz jako szablon</strong>. W oknie <strong>Zapisywanie szablonu wykresu</strong> określamy nazwę szablonu oraz jego lokalizację. Szablony są zapisywane do pliku z rozszerzeniem *.CRTX</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image50.png" alt="image50" width="700" height="421" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Aby użyć zapisany w poprzednim kroku szablon należy zaznaczyć dane, które powinny znaleźć się na wykresie i z wstążki wybrać polecenie <strong>Polecane wykresy</strong>. Po otwarciu okna <strong>Wstawianie wykresu</strong> przechodzimy do zakładki <strong>Wszystkie wykresy</strong> i z dostępnych opcji wybieramy <strong>Szablony</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image51.png" alt="image51" width="700" height="497" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Zastosowanie szablonu jest jedną z metod zachowania formatowania wykresu ale nie jedyną. Do dyspozycji mamy jeszcze:</p>
<p style="margin-left: 30px;"><strong>Skopiowanie wykresu źródłowego i zmiana jego danych</strong> <strong>źródłowych</strong> - metoda polega na skopiowaniu wykresu, którego formatowanie chcemy wykorzystać i dokonanie zmiany danych, które na wykresie zostały zamieszczone.</p>
<p style="margin-left: 30px;"><strong>Skopiowanie formatowania</strong> - po kliknięciu na wykres, którego formatowanie chcemy skopiować wybieramy <strong>Kopiuj</strong> (bądź używamy skrótu Ctrl+C) wybieramy wykres, który ma odziedziczyć dany styl a następnie przechodzimy na kartę <strong>Narzędzia główne</strong> gdzie po kliknięciu na strzałkę pod ikoną <strong>Wklej</strong> (w wcześniejszych wersjach Schowek) wybieramy <strong>Wklej specjalnie</strong>. W nowo otwartym oknie <strong>Wklejanie specjalne</strong> wybieramy opcję <strong>Formanty</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image52.png" alt="image52" width="700" height="420" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Aby wydrukować wykres osadzony należy objąć go zaznaczeniem tak jak to robi się w przypadku danych. Przed wykonaniem operacji drukowania jeśli Czytelniku nie jesteś pewny efektów wykorzystaj <strong>Podgląd wydruku</strong>. W przypadku wykresów umieszczonych w osobnym arkuszu są one zawsze drukowane na osobnej stronie. Wykres osadzony również można wydrukować oddzielnie, wystarczy go uaktywnić a następnie wybrać polecenie <strong>Plik/Drukuj</strong>. Aby zaś wyłączyć drukowanie wykresu należy kliknąć na niego a następnie w oknie zadań <strong>Formatowanie obszaru wykresu</strong> wybrać ikonę <strong>Rozmiar i właściwości</strong> a następnie rozwinąć gałąź <strong>Właściwości</strong> i odhaczyć opcję <strong>Drukuj obiekt</strong>. Po wykonaniu tych operacji wykresu nie będzie można wydrukować.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_12/image53.png" alt="image53" width="700" height="344" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Jak już wyżej wspominałem aby tworzone wykresy spełniały nasze oczekiwania trzeba usiąść i opcjami tymi się pobawić. Eksperymentując na zasadzie prób i błędów sami dojdziemy do czego dana opcjami służy i jak jej użycie wpływa na tworzony wykres. Mnogość opcji na początku pracy z wykresami może przytłoczyć ale nie ma co się zrażać gdyż jak mówi pewne przysłowie „Nie od razu Rzym zbudowano” Poświęcając chwilę czasu na zabawę (tzn. naukę) prędzej czy później osiągniemy mistrzostwo w tworzeniu wykresów. Oczywiście życzę aby to nastąpiło prędzej.</p>
<p> </p>
<p>W tematyce wykresów nie wszystko zostało omówione gdyż istnieją jeszcze tzw. wykresy przebiegu w czasie oraz wykresy przestawne ale tymi zagadnieniami zajmiemy się w oddzielnych wpisach.</p>
<p> </p>
<p>W ramach nowego działu <a href="http://slow7.pl/wujek-dobra-rada" target="_blank">Wujek dobra rada</a> co jakiś czas na pewno pokażę jak krok po kroku wykonać nietypowy wykres.</p></div>Excel w zadaniach. Drukowanie2016-10-17T11:21:41+00:002016-10-17T11:21:41+00:00http://slow7.pl/office/item/128-excel-w-zadaniach-drukowaniepikolo[email protected]<div class="K2FeedImage"><img src="http://slow7.pl/media/k2/items/cache/f60a47f7792630a3a86bc14c0657e89c_S.jpg" alt="Excel w zadaniach. Drukowanie" /></div><div class="K2FeedIntroText"><p>W tym wpisie zajmiemy się drukowaniem a mówiąc trochę bardziej szczegółowo omówimy sobie dostępne opcje drukowania w programie Excel. Wpis ten powstał na prośbę jednego z czytelników portalu, który zaproponował aby tym tematem się zająć. A że akurat na ukończeniu miałem wpis dotyczący list kontroli ACL i temat ten wydał mi się na tyle interesujący by opisać go szerzej postanowiłem to zrobić. Jeśli macie propozycje wpisów bądź tematów, które warto by było rozwinąć to zapraszam do kontaktu, wszelkie sugestie bardzo mile widziane.</p>
</div><div class="K2FeedFullText">
<p>Zanim przejdziemy do omówienia opcji związanych z drukowaniem zatrzymajmy się chwilę by omówić dostępne widoki, arkusza kalkulacyjnego gdyż widoki te (ja się Czytelniku przekonasz) ściśle są powiązane z operacją wydruku.</p>
<p> </p>
<p>Excel umożliwia nam standardowo wybranie spośród trzech rodzajów widoku:</p>
<p style="margin-left: 30px;">widok <strong>Normalny</strong> – jest domyślny rodzaj widoku arkusza. To w tym widoku standardowo odbywa się nasza praca z programem. Widok ten oferuje włączenie znaczników podziału stron,</p>
<p style="margin-left: 30px;">widok <strong>Układ strony</strong> – odpowiedzialny za ukazanie poszczególnych stron,</p>
<p style="margin-left: 30px;">widok <strong>Podgląd podziału stron</strong> – umożliwia ręczne ustawienie podziału stron.</p>
<p> </p>
<p>Przełączenie pomiędzy widokami możemy realizować w dwóch miejscach:</p>
<ul>
<li style="padding-left: 60px;">poprzez wybranie jednej z trzech ikon dostępnych w prawym dolnym rogu programu,</li>
<li style="padding-left: 60px;">poprzez wstążkę – karta Widok</li>
</ul>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image1.png" alt="image1" width="700" height="456" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Widok normalny</strong> - Jak już wspomniałem w widoku tym zazwyczaj pracujemy ale oprócz standardowych formuł, obliczeń czy wykresów możemy wyświetlić miejsca podziału stron. Podział strony jest reprezentowany poprzez poziome i pionowe kropkowane linie.</p>
<p> </p>
<p>Linie podziału stron ulegają korekcie podczas:</p>
<ul>
<li style="padding-left: 60px;">zmianie wysokości i szerokości kolumn oraz wierszy,</li>
<li style="padding-left: 60px;">zmianie orientacji strony,</li>
<li style="padding-left: 60px;">po dodaniu/usunięciu nowych kolumn bądź wierszy.</li>
</ul>
<p> </p>
<p>Linie podziału stron standardowo są ukryte ale ukarzą się nam po wydrukowaniu arkusza, wyświetleniu podglądu wydruku bądź po ręcznym zdefiniowaniu obszaru wydruku.</p>
<p> </p>
<p>Wyłączenie linii podziału odbywa się poprzez wybranie polecenia <strong>Plik</strong> a następnie <strong>Opcje</strong>. W nowo otwartym oknie klikamy zakładkę <strong>Zaawansowane</strong>, odszukujemy sekcję <strong>Opcje wyświetlania tego arkusza</strong> (jeśli mamy otwartych więcej arkuszy wybieramy ten co do którego ma być zastosowana zmiana) a następnie odhaczamy opcję <strong>Pokaż podziały stron</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image2.png" alt="image2" width="700" height="522" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Widok Układ strony</strong> - zawiera najszersze i najpełniejsze informacje dotyczące drukowanych arkuszy. W widoku tym mamy bezpośredni dostęp do wszystkich poleceń Excela a dodatkowo podgląd jak arkusz będzie wyglądał po wydrukowaniu. Poniżej na zrzucie przedstawiono arkusz w widoku <strong>Układ strony</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image3.png" alt="image3" width="700" height="459" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>W widoku tym (jeśli zdefiniowano) pokazana jest zawartość nagłówka oraz stopki.</p>
<p> </p>
<p>Kliknięcie na pusty szary obszar pomiędzy stronami spowoduje ukrycie obszarów marginesu, dzięki temu zabiegowi uzyskamy większą przestrzeń roboczą poprzez ukrycie niewykorzystywanych obszarów.</p>
<p> </p>
<p><strong>Widok Podgląd podziału stron</strong> - w widoku tym również mamy możliwość dokonywania korekty wprowadzonych formuł oraz możliwość wprowadzania nowych a także i co najważniejsze widok ten zawiera linie podziału stron. Linie te można przeciągać wpływając tym samym na ustalenie obszaru wydruku. Widok ten nie obejmuje informacji na temat nagłówka oraz stopki arkusza.</p>
<p> </p>
<p>Poniżej na rysunku ukazano arkusz w widoku podglądu podziału stron.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image4.png" alt="image4" width="700" height="459" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Tak naprawdę niektórzy wyróżniają jeszcze jeden widok, tzw. <strong>widok Backstage</strong>, który dostępny jest po wybraniu polecenia <strong>Plik</strong> a następnie <strong>Drukuj</strong> bądź po skorzystaniu z kombinacji klawiszy <strong>Ctrl+P</strong>. Widok ten wyświetla arkusz tak jak będzie wyglądał po wydrukowaniu.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image5.png" alt="image5" width="700" height="459" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>W widoku tym niestety nie mamy możliwości dokonania jakiejkolwiek korekty w danych zawartych w arkuszu ale za to mamy wpływ na wiele opcji związanych z drukowanym arkusze (ale więcej o tych opcja za chwilę).</p>
<p> </p>
<p>Opcje związane z drukowaniem możemy definiować w trzech miejscach:</p>
<p> </p>
<p>Pierwszym z nich jest widok <strong>Ustawienia drukowania </strong>dostępny po wybraniu <strong>Drukuj</strong> z menu <strong>Plik</strong> (bądź Ctrl+P) - rysunek powyżej.</p>
<p> </p>
<p>Drugim miejsce jest karta <strong>Układ strony</strong> dostępna na wstążce.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image6.png" alt="image6" width="700" height="426" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Trzecim zaś okno dialogowe <strong>Ustawienia strony</strong>, dostępne w widoku <strong>Drukuj</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image7.png" alt="image7" width="700" height="426" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Wybór dostępnych opcji jest szeroki i opcje drukowania dostępne w przedstawionych miejscach nie zawsze się ze sobą pokrywają. Dlatego też poniżej w tabeli zebrano te najczęściej używane wraz z zaznaczeniem ich lokalizacji.</p>
<p style="text-align: center;"> </p>
<table border="1" class="Tabela-Siatka1" style="border-collapse: collapse; margin-left: auto; margin-right: auto;" cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 30.15pt;">
<td style="width: 194.75pt; border: 1pt solid windowtext; padding: 0cm 5.4pt; height: 30.15pt;" valign="top" width="260"><strong><span style="color: black;">Ustawienie</span></strong></td>
<td style="width: 72.9pt; border-width: 1pt 1pt 1pt medium; border-style: solid solid solid none; border-color: windowtext windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 30.15pt;" valign="top" width="97"><strong><span style="color: black;">Ustawienia<br /> drukowania</span></strong></td>
<td style="width: 99.25pt; border-width: 1pt 1pt 1pt medium; border-style: solid solid solid none; border-color: windowtext windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 30.15pt;" valign="top" width="132"><strong><span style="color: black;">Karta Układ strony</span></strong></td>
<td style="width: 99.2pt; border-width: 1pt 1pt 1pt medium; border-style: solid solid solid none; border-color: windowtext windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 30.15pt;" valign="top" width="132"><strong><span style="color: black;">Okno dialogowe Ustawienia strony</span></strong></td>
</tr>
<tr style="height: 16.1pt;">
<td style="width: 194.75pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; height: 16.1pt;" valign="top" width="260"><span style="color: black;">Wybór drukarki</span></td>
<td style="width: 72.9pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 16.1pt;" valign="top" width="97"><span style="color: black;">X</span></td>
<td style="width: 99.25pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 16.1pt;" valign="top" width="132"><span style="color: black;"></span></td>
<td style="width: 99.2pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 16.1pt;" valign="top" width="132"><span style="color: black;"></span></td>
</tr>
<tr style="height: 15.75pt;">
<td style="width: 194.75pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="260"><span style="color: black;">Uwzględnienie linii siatki</span></td>
<td style="width: 72.9pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="97"><span style="color: black;"></span></td>
<td style="width: 99.25pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;">X</span></td>
<td style="width: 99.2pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;">X</span></td>
</tr>
<tr style="height: 15.75pt;">
<td style="width: 194.75pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="260"><span style="color: black;">Zmiana orientacji</span></td>
<td style="width: 72.9pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="97"><span style="color: black;">X</span></td>
<td style="width: 99.25pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;">X</span></td>
<td style="width: 99.2pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;">X</span></td>
</tr>
<tr style="height: 15.75pt;">
<td style="width: 194.75pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="260"><span style="color: black;">Definicja obszaru wydruku na arkuszu</span></td>
<td style="width: 72.9pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="97"><span style="color: black;"></span></td>
<td style="width: 99.25pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;">X</span></td>
<td style="width: 99.2pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;">X</span></td>
</tr>
<tr style="height: 15.75pt;">
<td style="width: 194.75pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="260"><span style="color: black;">Wybór metody drukowania: jednostronne lub dwustronne</span></td>
<td style="width: 72.9pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="97"><span style="color: black;">X</span></td>
<td style="width: 99.25pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;"></span></td>
<td style="width: 99.2pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;"></span></td>
</tr>
<tr style="height: 15.75pt;">
<td style="width: 194.75pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="260"><span style="color: black;">Układanie stron</span></td>
<td style="width: 72.9pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="97"><span style="color: black;">X</span></td>
<td style="width: 99.25pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;"></span></td>
<td style="width: 99.2pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;"></span></td>
</tr>
<tr style="height: 15.75pt;">
<td style="width: 194.75pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="260"><span style="color: black;">Dostosowanie marginesów</span></td>
<td style="width: 72.9pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="97"><span style="color: black;">X</span></td>
<td style="width: 99.25pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;">X</span></td>
<td style="width: 99.2pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;">X</span></td>
</tr>
<tr style="height: 15.75pt;">
<td style="width: 194.75pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="260"><span style="color: black;">Ustalenie rozmiaru papieru</span></td>
<td style="width: 72.9pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="97"><span style="color: black;">X</span></td>
<td style="width: 99.25pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;">X</span></td>
<td style="width: 99.2pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;">X</span></td>
</tr>
<tr style="height: 15.75pt;">
<td style="width: 194.75pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="260"><span style="color: black;">Skalowanie wydruku</span></td>
<td style="width: 72.9pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="97"><span style="color: black;"></span></td>
<td style="width: 99.25pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;">X</span></td>
<td style="width: 99.2pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;">X</span></td>
</tr>
<tr style="height: 15.75pt;">
<td style="width: 194.75pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="260"><span style="color: black;">Ręczne zdefiniowanie podziałów stron</span></td>
<td style="width: 72.9pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="97"><span style="color: black;"></span></td>
<td style="width: 99.25pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;">X</span></td>
<td style="width: 99.2pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;"></span></td>
</tr>
<tr style="height: 26.05pt;">
<td style="width: 194.75pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; height: 26.05pt;" valign="top" width="260"><span style="color: black;">Definicja nagłówków wierszy<br /> i kolumn</span></td>
<td style="width: 72.9pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 26.05pt;" valign="top" width="97"><span style="color: black;"></span></td>
<td style="width: 99.25pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 26.05pt;" valign="top" width="132"><span style="color: black;">X</span></td>
<td style="width: 99.2pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 26.05pt;" valign="top" width="132"><span style="color: black;">X</span></td>
</tr>
<tr style="height: 15.75pt;">
<td style="width: 194.75pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="260"><span style="color: black;">Ustalenie liczby wydruku kopii</span></td>
<td style="width: 72.9pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="97"><span style="color: black;">X</span></td>
<td style="width: 99.25pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;"></span></td>
<td style="width: 99.2pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;"></span></td>
</tr>
<tr style="height: 15.75pt;">
<td style="width: 194.75pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="260"><span style="color: black;">Komentarze</span></td>
<td style="width: 72.9pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="97"><span style="color: black;"></span></td>
<td style="width: 99.25pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;"></span></td>
<td style="width: 99.2pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;">X</span></td>
</tr>
<tr style="height: 26.75pt;">
<td style="width: 194.75pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; height: 26.75pt;" valign="top" width="260"><span style="color: black;">Opcje związane ze zmianą trybu kolorów </span></td>
<td style="width: 72.9pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 26.75pt;" valign="top" width="97"><span style="color: black;"></span></td>
<td style="width: 99.25pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 26.75pt;" valign="top" width="132"><span style="color: black;"></span></td>
<td style="width: 99.2pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 26.75pt;" valign="top" width="132"><span style="color: black;">X</span></td>
</tr>
<tr style="height: 15.75pt;">
<td style="width: 194.75pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="260"><span style="color: black;">Numer pierwszej strony</span></td>
<td style="width: 72.9pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="97"><span style="color: black;"></span></td>
<td style="width: 99.25pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;"></span></td>
<td style="width: 99.2pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;">X</span></td>
</tr>
<tr style="height: 15.75pt;">
<td style="width: 194.75pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="260"><span style="color: black;">Wyśrodkowanie</span></td>
<td style="width: 72.9pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="97"><span style="color: black;"></span></td>
<td style="width: 99.25pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;"></span></td>
<td style="width: 99.2pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;">X</span></td>
</tr>
<tr style="height: 15.75pt;">
<td style="width: 194.75pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="260"><span style="color: black;">Błędy w komórkach</span></td>
<td style="width: 72.9pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="97"><span style="color: black;"></span></td>
<td style="width: 99.25pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;"></span></td>
<td style="width: 99.2pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;">X</span></td>
</tr>
<tr style="height: 26.05pt;">
<td style="width: 194.75pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; height: 26.05pt;" valign="top" width="260"><span style="color: black;">Kolejność stron</span></td>
<td style="width: 72.9pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 26.05pt;" valign="top" width="97"><span style="color: black;"></span></td>
<td style="width: 99.25pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 26.05pt;" valign="top" width="132"><span style="color: black;"></span></td>
<td style="width: 99.2pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 26.05pt;" valign="top" width="132"><span style="color: black;">X</span></td>
</tr>
</tbody>
</table>
<p style="text-align: center;"> </p>
<p>Tak więc omówmy sobie opcje dostępne w widoku <strong>Ustawienia drukowania</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image8.png" alt="image8" width="700" height="556" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>1. Przycisk <strong>Drukuj</strong> – wybranie go spowoduje wysłanie pliku do drukarki, drukowanie zostanie przeprowadzone zgodnie z opcjami ustawionymi poniżej.</p>
<p> </p>
<p>2. <strong>Kopie</strong> – ustalenie liczby kopii wydruku, potrzebną ilość ustalamy sami poprzez wpisanie ich liczby bądź używamy do tego strzałek.</p>
<p> </p>
<p>3. <strong>Drukarka</strong> – w systemie może być zainstalowanych wiele drukarek, drukarki mogą być do komputera podłączone lokalnie bądź mogą to być drukarki sieciowe (w systemie Windows drukarką może być również faks a także kreator plików PDF). Okno umożliwia wybranie urządzenia do którego ma zostać wysłane polecenie wydruku. Standardowo wybierana jest drukarka, która w systemie została ustawiona jako domyślna.</p>
<p> </p>
<p>4. <strong>Właściwości drukarki</strong> - kliknięcie opcji spowoduje otwarcie okna dialogowego w którym będą zawarte opcje wybranej drukarki. Ustawienia oraz zakres dostępnych opcji zależą od drukarki. Drukarki o większych możliwościach będą posiadały bogatszy zestaw opcji wpływających na końcowy efekt wydruku zaś w tych mniej zaawansowanych urządzeniach ilość dostępnych opcji będzie ograniczona do tych niezbędnych.</p>
<p> </p>
<p>5. <strong>Drukuj aktywna arkusze</strong> - domyślnie drukowane są aktywne arkusze (możliwe jest wydrukowanie kilku arkuszy, definicję arkuszy przeprowadzamy z wykorzystaniem klawisza Ctrl) lecz po rozwinięciu listy można zdecydować się np. na drukowanie całego skoroszytu (wydruk całego skoroszytu wraz z arkuszami wykresów) lub jedynie zaznaczonego zakresu. Zaznaczenie zakresu następuje przed przejściem do widoku opcji <strong>Ustawienia drukowania</strong>. Dostępne są jeszcze dwie dodatkowe opcje a mianowicie <strong>Drukuj zaznaczony wykres</strong> (opcja aktywna po zaznaczeniu wykresu) oraz <strong>Drukuj zaznaczoną tabelę</strong> (opcja aktywna po tym jak wskaźnik komórki zostanie umieszczony w obrębie tabeli).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image9.png" alt="image9" width="700" height="278" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>6. <strong>Strony</strong> - określenie zakresu stron, które zostaną wydrukowane.</p>
<p> </p>
<p>7. <strong>Posortowane</strong> - określenie sposobu sortowania wydruku kopii. Dostępne dwie opcje: 1,2,3; 1,2,3; 1,2,3 (strona 1, strona 2, strona 3 itd.) lub 1,1,1; 2,2,2; 3,3,3 (wszystkie strony 1, wszystkie strony 2, wszystkie strony 3 itd.) Domyślnie ustawioną opcją jest: 1,2,3; 1,2,3; 1,2,3 Jeśli drukujemy tylko jedną stronę Excel ignoruje ustawienia sortowania.</p>
<p> </p>
<p>8. <strong>Orientacja pionowa/pozioma</strong> - wybór orientacji pionowej (domyślna) i poziomej.</p>
<p> </p>
<p>9. <strong>Rozmiar</strong> - wybór rozmiaru papieru na którym będzie realizowany druk (domyślnie A4). Spośród dostępnych opcji możemy wybrać wiele różnych rozmiarów papieru ale należy mieć świadomość iż to czy da się zrealizować wydruk na wybranym formacie zależy również od samej drukarki (drukarka części formatów może nie obsługiwać).</p>
<p> </p>
<p>10. <strong>Marginesy</strong> - wybór spośród trzech (a tak naprawdę czterech) rodzajów marginesów: <strong>niestandardowe</strong> (ustawienie domyślne), <strong>normalne</strong>, <strong>szerokie</strong> i <strong>wąskie</strong>. Marginesy niestandardowe są definiowane przez użytkownika ich rozmiar można ustalać poprzez skorzystanie z opcji dostępnych w prawym dolnym rogu (punkt 13). Zmiana rozmiarów marginesów dostępna jest również na karcie <strong>Układ strony</strong> (patrz wstążka) a także na karcie <strong>Ustawienia strony</strong> w zakładce <strong>Marginesy</strong> (punkt 12).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image10.png" alt="image10" width="700" height="425" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>11. <strong>Rozmiar</strong> - wybór opcji skalowania. Dostępne opcje to: <strong>Rozmiar rzeczywisty</strong> (drukuj arkusze w rozmiarze rzeczywistym), <strong>Dopasuj arkusz do jednej strony</strong> (zmniejsz wydruk aby zmieścić go na jednej stronie), <strong>Dopasuj wszystkie kolumny do jednej strony</strong> (zmniejsz wydruk, aby miał szerokość jednej strony), <strong>Dopasuj wszystkie wiersze do jednej strony</strong> (zmniejsz wydruk, aby miał wysokość jednej strony) oraz <strong>Opcje skalowania niestandardowego </strong>(wybór opcji spowoduje otwarcie okna <strong>Ustawienia strony</strong>). Link do okna <strong>Ustawienia strony</strong> (punkt 12) dostępny jest również poniżej opcji wydruku.</p>
<p> </p>
<p>Po wybraniu tej opcji będziemy mieli wpływ na:</p>
<p style="margin-left: 30px;">1 - ustalenie orientacji wydruku,</p>
<p style="margin-left: 30px;">2 - dostosowania skalowania - możemy określić wartość procentową bądź zdecydować się na wpasowanie opierające się na wysokości i szerokości arkusza. W pewnych sytuacjach (a szczególnie w tych w których pracujemy z rozbudowanymi arkuszami) dochodzi do sytuacji w której musimy na pojedynczej kartce papieru umieścić wszystkie dane, które są zawarte w arkuszu aby wykonać to zadanie musimy posłużyć się mechanizmem, który pozwoli nam na zmniejszenie bądź zwiększenie skali wydruku. Zmiana współczynnika skalowania może nastąpić przy użyciu skali procentowej (przedział od 10% do 400%) bądź skali opartej na szerokości lub wysokości strony.</p>
<p style="margin-left: 30px;">3 - ustalenie rozmiaru papieru a także ustaleniu jakości wydruku,</p>
<p style="margin-left: 30px;">4 - wybranie przycisku <strong>Opcje</strong> przeniesie nas do ustawień oferowanych przez drukarkę.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image11.png" alt="image11" width="700" height="427" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Opcje związane z ustawieniem strony zostały omówione przyjrzyjmy się zatem tym, które są oferowane na karcie <strong>Układ strony</strong></p>
<p> </p>
<p><strong>Orientacja</strong> strony określa sposób usytuowania wydruku na kartce. Domyślnym ustawieniem strony jest orientacja pionowa.</p>
<p> </p>
<p>Zmianę orientacji strony dokonamy po wybraniu ikony <strong>Orientacja</strong> dostępnej na karcie <strong>Układ strony</strong> w sekcji <strong>Ustawienia strony</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image12.png" alt="image12" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Orientacja pionowa spełnia swe zadanie przy wąskim zakresie komórek i dużej liczbie wierszy, natomiast orientacja pozioma w sytuacji odwrotnej czyli gdy mamy do czynienia np. z szeroką tabelą.</p>
<p> </p>
<p>Po dokonanej zmianie układu strony linie podziału stron zostaną automatycznie dostosowane do nowego układu.</p>
<p> </p>
<p>Opcja zmiany ustawień strony dostępna jest również w <strong>widoku Backstage</strong> po wybraniu <strong>Drukuj</strong>.</p>
<p> </p>
<p>Polecenie <strong>Rozmiar</strong> umożliwia zdefiniowanie rozmiaru papieru. Opcja zmiany rozmiaru dostępna jest również w <strong>widoku Backstage</strong> po wybraniu <strong>Drukuj</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image13.png" alt="image13" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Podczas drukowania (w szczególności długich raportów, bądź tabel) nie raz spotkamy się z sytuacją w której zaproponowany przez Excela automatyczny sposób podziału stron nie do końca będzie spełniał nasze oczekiwania. Na szczęście są mechanizmy, które pozwolą nam na zastosowanie ręcznego podziału dokumentu na strony.</p>
<p> </p>
<p>Jedną z takich opcji są <strong>Znaki podziału</strong>.</p>
<p> </p>
<p>Przypuśćmy, że mamy zestawienie takie jak przedstawione na rysunku poniżej. W zestawieniu tym istnieje dwóch Konsultantów (Paweł oraz Teresa) a zadanie polega na takim wydrukowaniu danych aby informacje odnośnie konsultantów znalazły się na dwóch osobnych kartkach.</p>
<p> </p>
<p>Aby wykonać to zadanie należy wymusić ręczny podział strony. Aby wstawić poziomą linię podziału stron, należy kliknąć na komórkę, która ma rozpoczynać nową stronę. Przy czym komórka ta musi znajdować się w kolumnie A (w przykładzie komórka A41). Kliknięcie na komórkę należącą do innej kolumny spowoduje również dodanie pionowej linii podziału.</p>
<p> </p>
<p>Po zaznaczeniu komórki wybieramy ikonę <strong>Znaki podziału</strong> a następnie opcję <strong>Wstaw podział strony</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image14.png" alt="image14" width="700" height="491" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Po wykonaniu tej operacji dane zostaną od siebie oddzielone czego efektem będzie ich wydruk na dwóch osobnych stronach.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image15.png" alt="image15" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Aby zaś dokonać podziału przy użyciu pionowej linii podziału wybieramy komórkę, która rozpocznie nam nową stronę (komórka musi być umieszczona w wierszu o numerze 1) i tak jak poprzednio wybrać ikonę <strong>Znaki podziału</strong> a następnie opcję <strong>Wstaw podział strony</strong>.</p>
<p> </p>
<p>Poniżej przykład podziału informacji o konsultantach (te same dane co w ćwiczeniu powyżej) lecz tym razem dane zostały zgrupowane w poziomie. Aby wydrukować informacje z podziałem na poszczególnych pracowników należy wybrać komórkę D1 i tak jak poprzednio wybieramy ikonę <strong>Znaki podziału</strong> a następnie opcję <strong>Wstaw podział strony</strong></p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image16.png" alt="image16" width="700" height="403" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Po dokonaniu podziału dane te zostaną od siebie odseparowane a ich wydruk nastąpi na dwóch oddzielnych stronach.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image17.png" alt="image17" width="700" height="528" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Oczywiście można również zastosować poziomą oraz pionową linię podziału. Przyjmijmy, że mamy dane zebrane jak na poniższym zrzucie i tak jak w poprzednich dwóch ćwiczeniach chcemy zrealizować wydruk z zastrzeżeniem, że jeden konsultant - jedna kartka.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image18.png" alt="image18" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Potrzebujemy podzielić dane na cztery części. Zadanie te możemy zrealizować na dwa sposoby:</p>
<p style="margin-left: 30px;">Sposób 1 - umieszczamy kursor w komórce A14 i wstawiamy znak podziału a następnie kursor ustawiamy na komórkę D1 i ponownie wstawiamy znak podziału.</p>
<p style="margin-left: 30px;">Sposób 2 - zaznaczamy komórkę D14 i wstawiamy znak podziału strony. Linie podziału zostaną umieszczone w następujący sposób: pozioma powyżej komórki D14, pionowa z lewej strony komórki D14.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image19.png" alt="image19" width="700" height="571" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Po zastosowaniu dowolnego z opisanych sposobów dane zostaną podzielone na cztery części.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image20.png" alt="image20" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Aby usunąć linię podziału zaznaczamy komórkę za pomocą, której podział wstawiliśmy a następnie klikając na ikonę <strong>Znaki podziału</strong> wybieramy opcję <strong>Usuń podział strony</strong>. Wybranie opcji <strong>Resetuj wszystkie podziały stron</strong> usunie wszystkie zdefiniowane linie podziału.</p>
<p> </p>
<p>A co w sytuacji w której dane, które chcemy wydrukować znajdują się w różnych obszarach arkusza? Aby poradzić sobie z tym zadaniem należy wykorzystać opcję: <strong>Obszar wydruku</strong>.</p>
<p> </p>
<p>Pozostańmy przy przykładzie z konsultantami, lecz tym razem zadanie polega na takim wydrukowaniu danych aby informacje przypisane Andrzejowi i Teresie również znalazły się na osobnej kartce.</p>
<p> </p>
<p>Realizację zadania rozpoczniemy od zaznaczenia wszystkich komórek w których znajdują się dane konsultanta Andrzeja a następnie na karcie <strong>Układ strony</strong> odszukujemy ikonę <strong>Obszar wydruku</strong> i z menu wybieramy opcję <strong>Ustaw obszar wydruku</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image21.png" alt="image21" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Po wykonaniu tej czynności oczywiście należy do już zdefiniowanego obszaru wydruku dodać kolejny zawierający informacje o konsultantce Teresie.</p>
<p> </p>
<p>Tak jak poprzednio rozpoczynamy od zaznaczenia komórek w których przechowywane są dane lecz tym razem muszą być zaznaczone komórki przynależne Teresie. Po zaznaczeniu komórek na karcie <strong>Układ strony</strong> wybieramy ikonę <strong>Obszar wydruku</strong> i z menu wybieramy opcję <strong>Dodaj do obszaru wydruku</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image22.png" alt="image22" width="700" height="722" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Po tak zdefiniowanym zakresie nie pozostaje nic innego jak zrealizować wydruk. Dane konsultantów zostaną wydrukowane na dwóch osobnych stronach.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image23.png" alt="image23" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Oczywiście ten sam efekt możemy uzyskać dzięki:</p>
<ul>
<li style="padding-left: 60px;">zastosowaniu linii podziału,</li>
<li style="padding-left: 60px;">ręcznym zaznaczeniu komórek konsultanta pierwszego i po wyświetleniu widoku drukowania wybraniu opcji <strong>Drukuj zaznaczenie</strong>, operację oczywiście powtarzamy dla konsultanta drugiego.</li>
</ul>
<p> </p>
<p>A co w przypadku w którym chcemy zrealizować wydruk z wielu obszarów arkusza tak by znalazły się one na jednej stronie? Tu już sprawa mocno się komplikuje gdyż jak na razie Excel opcji takiej nie przewiduje (tak naprawdę da się to wykonać tylko trzeba by było skorzystać z języka VBA). Ja proponuję Ci Czytelniku znacznie łatwiejszy sposób.</p>
<p> </p>
<p>Przyjmijmy że mamy arkusz przedstawiony na zrzucie poniżej.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image24.png" alt="image24" width="700" height="405" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Zadanie polega na wydrukowaniu danych w ten sposób aby informacje konsultanta Paweł i Jan znalazły się na jednej stronie.</p>
<p> </p>
<p>Aby zadanie wykonać skorzystamy z mechanizmu, który nazywa się <strong>Aparat fotograficzny </strong>(mało znana funkcja Excela ale w pewnych przypadkach niezastąpiona. Jak na przykład w tym). Funkcji tej standardowo nie odnajdziemy wśród opcji pogrupowanych na pasku zadań Excela ale nic nie stoi na przeszkodzie by ją dodać ręcznie.</p>
<p> </p>
<p>Rozpoczynamy od kliknięcia strzałki (lewy górny róg okna programu) odpowiedzialnej za dostosowanie narzędzi dostępnych w pasku szybkiego uruchamiania. Po wybraniu strzałki z dostępnych opcji wybieramy <strong>Więcej poleceń</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image25.png" alt="image25" width="700" height="583" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>W nowo otwartym oknie <strong>Opcje programu Excel</strong> z menu <strong>Wybierz polecenia z:</strong> uaktywniamy opcję <strong>Polecenia, których nie ma na Wstążce</strong> (punkt 1). W oknie poniżej zostaną wyświetlone wszystkie dostępne opcje programu Excel, które nie zostały domyślnie zamieszczone na wstążce programu. Wśród opcji odnajdujemy <strong>Aparat fotograficzny</strong> (punkt 2) i poprzez przycisk <strong>Dodaj</strong> (punkt 3), ikonę funkcji przenosimy do okna narzędzi paska Szybki dostęp. Po zatwierdzeniu zmian ikona aparatu fotograficznego pojawi się na pasku szybkiego dostępu.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image26.png" alt="image26" width="700" height="507" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Kolejną czynnością jest zaznaczenie komórek zawierających dane konsultanta Paweł a następnie wybraniu ikony aparatu fotograficznego. Po wykonaniu „zdjęcia” klikamy w dowolny obszar arkusza. Analogicznie postępujemy z danymi konsultanta Jan. Tak przygotowane „zdjęcia” umieszczamy obok siebie.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image27.png" alt="image27" width="700" height="534" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Ostatnią czynnością jest wykonanie wydruku. Zaznaczamy komórki tak by zaznaczenie obejmowało wykonane „zdjęcia”.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image28.png" alt="image28" width="700" height="504" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Po przejściu do widoku drukowania wybieramy opcję <strong>Drukuj zaznaczenie</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image29.png" alt="image29" width="700" height="321" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>W ten oto ciekawy sposób poradziliśmy sobie z wydrukiem danych na jednej stronie, leżących w różnych obszarach arkusza.</p>
<p> </p>
<p>Funkcja aparatu fotograficznego Czytelniku przyda Ci się również podczas pracy z skoroszytem, który zawiera wiele arkuszów. Przypuśćmy, że modyfikujesz formułę bądź dane w jednym z arkuszów lecz odzwierciedlenie zmian znajduje się w innym. Poprzez wstawienie „zdjęcia” będziesz miał bezpośredni podgląd jak dokonywana zmiana wpływa na dane zawarte w komórkach znajdujących się w odrębnym arkuszu. Dzieje się tak gdyż dokonywane zmiany są na bieżące uaktualniane. Wykonane „zdjęcie” nie jest statycznym obrazem.</p>
<p> </p>
<p>Czasem podczas drukowania niektórych arkuszy chcemy aby widoczne były linie siatki. W domyślnych ustawieniach linie siatki podczas operacji wydruku są pomijane. Aby zmienić te ustawienie należy przejść na kartę <strong>Układ strony</strong> i w sekcji <strong>Opcje arkusza</strong> zaznaczyć opcję <strong>Drukuj linie siatki</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image30.png" alt="image30" width="700" height="481" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Wydruk linii siatki poszczególnych komórek uzyskamy również włączając obramowanie komórki.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image31.png" alt="image31" width="700" height="535" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>W pierwszym wierszu bądź pierwszej kolumnie często umieszczamy informacje identyfikujące dany wiersz czy kolumnę. Podczas wykonania wydruku, dane zawarte w tych obszarach a opisujące zawartość zostaną wydrukowane tylko na pierwszej stronie. Przeglądając wielostronicowy wydruk brak opisu wierszy bądź kolumn jest dla nas utrudnieniem. Na szczęście możemy to w prosty sposób zmienić tak by uwzględnić wybrane wiersze lub kolumny na każdej stronie wydruku.</p>
<p> </p>
<p>Sytuacje tą obrazuje poniższy zrzut na którym widać iż dane opisujące tabelę są wydrukowane tylko na pierwszej stronie.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image32.png" alt="image32" width="700" height="430" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Aby pierwszy wiersz tabeli znalazł się na każdej z drukowanych stron bądź kolumna (wydrukowana jako pierwsza po lewej stronie) należy wykonać następujące czynności:</p>
<ul>
<li style="padding-left: 60px;">wybieramy polecenie <strong>Tytuły wydruku</strong> dostępne na karcie <strong>Ustawienia strony</strong>,</li>
<li style="padding-left: 60px;">po wywołaniu polecenia w nowo otwartym oknie <strong>Ustawienia strony</strong> (karta <strong>Arkusz</strong>) należy uaktywnić odpowiednie pole: <strong>U góry powtarzaj wiersze</strong> lub <strong>Z lewej powtarzaj kolumny</strong> w zależności od tego co chcemy by zostało wydrukowane na każdej z stron (oczywiście możemy zdecydować się zarówno na kolumnę jaki i wiersz). Definicję wierszy bądź kolumn dokonujemy ręcznie poprzez wpisanie zakresu komórek bądź za pomocą przycisku.</li>
</ul>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image33.png" alt="image33" width="700" height="425" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Po wykonaniu tych dwóch prostych czynności zaznaczony wiersz/kolumna będą uwzględnione podczas wydruku.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image34.png" alt="image34" width="700" height="436" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Wstawianie znaku wodnego (czyli obrazu, bądź tekstu, który pojawi się na każdej drukowanej stronie) w Excelu nie przebiega w tak prosty sposób jak to ma się w Wordzie gdzie mamy odpowiedni przycisk, który całą robotę wykona za nas. Ale i w Excelu można takową grafikę wstawić trzeba po prostu użyć pewnej sztuczki.</p>
<p> </p>
<p>Aby umieścić znak wodny należy wykonać następujące kroki:</p>
<p> </p>
<p>Krok 1. Po odnalezieniu grafiki, która będzie naszym znakiem wodnym przechodzimy na kartę <strong>Widok</strong> i w sekcji <strong>Widoki skoroszytu</strong> wybieramy przycisk <strong>Układ strony</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image35.png" alt="image35" width="700" height="481" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Krok 2. Po zmianie widoku arkusza danych wybieramy pole <strong>Dodaj nagłówek</strong> (pole to składa się z trzech sekcji, zazwyczaj wybieraną jest ta środkowa). Po wybraniu sekcji odszukujemy przycisk <strong>Obraz</strong>. Opcję tą znajdziemy po wybraniu polecenia <strong>Narzędzia nagłówków i stopek/Projektowanie</strong> w sekcji <strong>Elementy nagłówka</strong> <strong>i stopki</strong> Po wybraniu przycisku <strong>Obraz</strong> na ekranie w nowo otwartym oknie dialogowym będziemy mogli wskazać plik graficzny, który będzie stanowił nasz znak wodny.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image36.png" alt="image36" width="700" height="373" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Krok 3. Po wybraniu obrazu (obraz wybieramy spośród tych dostępnych na dysku, w usłudze OneDrive bądź korzystamy z wyszukiwarki Bing) klikamy w dowolne miejsce poza obszarem nagłówka. Obraz zostanie wstawiony.</p>
<p> </p>
<p>Krok 4. Wracamy z powrotem do obszaru nagłówka (klikamy na sekcję w której został wstawiony obraz) tak by wyświetlić kod: <strong>&[Obraz]</strong> Przed kodem tym dodajemy znaki <strong>Enter</strong> tak by ustawić go na odpowiedniej wysokości.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image37.png" alt="image37" width="700" height="422" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Jeśli chcemy dokonać korekty wstawionego obrazu przechodzimy do karty <strong>Narzędzia nagłówków i stopek/Projektowanie</strong> i w sekcji <strong>Elementy nagłówka</strong> <strong>i stopki </strong>odszukujemy ikonę <strong>Formatuj obraz</strong>. Opcje na które będziemy mieli wpływ to rozmiary wstawionego obrazu, przycięcie oraz zmiana kolorystyki (jasność, kontrast czy rozmycie).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image38.png" alt="image38" width="700" height="373" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Podczas pracy z Excelem mamy możliwość ustawienia tła arkusza (polecenie <strong>Tło</strong> dostępne na karcie <strong>Ustawienia strony</strong>). Zadaniem tła jest wizualne uatrakcyjnienie arkusza i tak naprawdę przeznaczenie tej opcji na tym się kończy. Po wstawieniu tła jest ono uwzględniane tylko w arkuszu i niestety nie ma możliwości jego wydrukowania.</p>
<p> </p>
<p>Na zrzucie poniżej pokazano zastosowanie opcji tła i jak można zauważyć obrazek ten w podglądzie wydruku jest pomijany.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image39.png" alt="image39" width="700" height="505" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Sama opcja wstawienia tła jest bardzo ograniczona w swym działaniu gdyż nie mamy żadnej możliwości przeskalowania go czy zmiany położenia tak by np. wstawiony obrazek był uzupełnieniem arkusza a nie zbędnym elementem przeszkadzającym w pracy z arkuszem.</p>
<p> </p>
<p>Zamiast obrazu tła znacznie wygodniejszym rozwiązaniem (acz do ideału bardzo dużo mu brakuje) jest umieszczenie obrazka (a także kształtu bądź obiektu WordArt) i takim jego wyskalowaniu by stał się częścią arkusza. Wstawiony obraz nie może zachodzić na komórki wypełnione danymi gdyż je przysłoni a niestety nie ma możliwości takiej zmiany kolejności wyświetlanych elementów, by tekst wpisany do komórki był nad zdjęciem. W przypadku wstawienia kształtu sytuacja jest o tyle łatwiejsza gdyż mamy opcje pozwalające na sterowanie jego przezroczystością.</p>
<p> </p>
<p>Zaletą wstawionych obiektów graficznych jest ich uwzględnianie podczas wydruku lecz by obiekt taki znalazł się na każdej drukowanej stronie należy go wielokrotnie skopiować do wszystkich obszarów arkusza.</p>
<p> </p>
<p>Czasem zachodzi potrzeba wydrukowania nagłówka wiersza bądź kolumny (w tym kontekście nagłówek rozumiany jest jako litera dla kolumny i cyfra dla wiersza). Domyślnie elementy te są wyłączone, aby były one uwzględnione na wydruku należy na karcie <strong>Układ strony</strong> w sekcji <strong>Opcje arkusza/Nagłówki</strong> zaznaczyć opcję <strong>Drukuj</strong>.</p>
<p> </p>
<p>Poniżej przykład (po lewej) zastosowania opcji domyślnej zaś po prawej uaktywniona opcja drukowania nagłówków.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image40.png" alt="image40" width="700" height="243" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Nagłówek to informacja pojawiająca się w górnej części każdej z drukowanych stron, zaś informacje zawarte w stopce są umieszczane na dole strony. Zasadność stosowania nagłówka i stopki sprowadza się do umieszczenia tych samych danych na każdej z drukowanych stron (po za numerem stron). Często podczas drukowania wielu stron dokumentu (np. celem jego identyfikacji) do wydruku dołączana jest informacja o jego wersji. Zastosowanie nagłówka zwalnia nas z tego obowiązku gdyż definicja informacji zawartych w nagłówku spowoduje powielenie jej na każdej ze stron tworzących dokument.</p>
<p> </p>
<p>Domyślnie podczas realizowania wydruku informacje z nagłówka oraz stopki nie są uwzględniane. Spowodowane jest to faktem iż w tej części arkusza żadne dane nie są umieszczone.</p>
<p> </p>
<p>Informacje, które mają być zamieszczone w nagłówku bądź stopce można zdefiniować w zakładce <strong>Nagłówek/stopka </strong>która dostępna jest po wybraniu opcji <strong>Ustawienia strony</strong> (widok Backstage, Drukuj).</p>
<p> </p>
<p>W sekcjach <strong>Nagłówek:</strong> bądź <strong>Stopka:</strong> zostały umieszczone standardowe formy nagłówka bądź stopki. Określenie własnych informacji następuje poprzez wybranie przycisku <strong>Nagłówek niestandardowy</strong> bądź <strong>Stopka niestandardowa</strong> (oczywiście w zależności gdzie informacja ta ma zostać umieszczona).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image41.png" alt="image41" width="700" height="485" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Przedstawiona powyżej opcja określenia nagłówka bądź stopki nie jest oczywiście jedyną, znacznie wygodniejszym sposobem jest skorzystanie z opcji dostępnych po przełączeniu się na widok <strong>Układ strony</strong>, w którym to poprzez kliknięcie na odpowiedni obszar nagłówka/stopki i bezpośrednie wpisanie informacji można zdefiniować dane, które będą uwzględniane podczas wydruku. Dane umieszczone w nagłówku/stopce można w dowolny sposób formatować.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image42.png" alt="image42" width="700" height="703" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Zarówno nagłówek i stopka zostały podzielone na trzy odrębne części. W sekcjach tych można umieszczać niezbędne nam informacje jak np. tytuł dokumentu, autora czy numer strony.</p>
<p> </p>
<p>Aby nagłówek i stopka były automatycznie uzupełniane np. logiem firmy można posłużyć się szablonem. Szablon taki stanowi punkt wyjścia dla nowo definiowanych arkuszy. Użycie szablonu sprowadza się do definicji danych, które będą dołączane do nowo tworzonych dokumentów Excela. Jak taki szablon utworzyć? – to opiszę w kolejnym wpisie.</p>
<p> </p>
<p>Zamiast samemu definiować informacje umieszczane w nagłówku/stopce możemy zdecydować się na użycie jednej z propozycji, które dostępne są po zaznaczeniu dowolnej sekcji nagłówka/stopki i wybraniu karty <strong>Projektowanie</strong>. Użycie ikon <strong>Nagłówek</strong> bądź <strong>Stopka</strong> pozwoli nam na umieszczenie proponowanych danych.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image43.png" alt="image43" width="700" height="413" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Definiując nagłówek/stopkę możemy oczywiście użyć dowolnego tekstu ale dodatkowo możemy zastosować również zmienne. Zmienne dostępne są na karcie <strong>Projektowanie</strong> (<strong>Narzędzia nagłówków i stopek</strong>) pod ikonami umieszczonymi w sekcji <strong>Elementy nagłówka i stopki</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image44.png" alt="image44" width="700" height="412" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Podążając od lewej kolejne ikony pozwolą nam na umieszczenie następujących informacji:</p>
<ul>
<li style="padding-left: 60px;"><strong>Numer strony</strong> - kod: &[Strona] - zostaje umieszczona informacja o numerze bieżącej strony,</li>
<li style="padding-left: 60px;"><strong>Liczba stron</strong> - kod: &[Strony] - ogólna liczba stron,</li>
<li style="padding-left: 60px;"><strong>Bieżąca data</strong> - kod: &[Data] - bieżącą datę,</li>
<li style="padding-left: 60px;"><strong>Bieżąca godzina</strong> - kod: &[Czas] - bieżąca godzina,</li>
<li style="padding-left: 60px;"><strong>Ścieżka pliku</strong> - kod: &[Ścieżka]&[Plik] - pełna ścieżka pliku wraz z nazwą pliku,</li>
<li style="padding-left: 60px;"><strong>Nazwa pliku</strong> - kod: &[Plik] - tylko nazwa pliku,</li>
<li style="padding-left: 60px;"><strong>Nazwa arkusza</strong> - kod: &[Karta] - nazwa arkusza,</li>
<li style="padding-left: 60px;"><strong>Obraz</strong> - umieszczenie w obrębie nagłówka/stopki pliku graficznego,</li>
<li style="padding-left: 60px;"><strong>Formatowanie obrazu</strong> - zmiana ustawień obrazu.</li>
</ul>
<p> </p>
<p>Przy definicji nagłówka i w przypadku użycia znaku & może pojawić się pewien problem gdyż znak & zarezerwowany jest do użycia z nazwą zmiennej. Co zatem zrobić gdy w nagłówku niezbędne okaże się użycie tegoż znaku? Należy wpisać go dwukrotnie - &&</p>
<p> </p>
<p>Na karcie Projektowanie dostępne są jeszcze następujące opcje:</p>
<ul>
<li style="padding-left: 60px;"><strong>Inne na pierwszej stronie</strong> - włączenie opcji spowoduje możliwość ustawienia osobnego nagłówka/stopki dla pierwszej drukowanej strony,</li>
<li style="padding-left: 60px;"><strong>Inne na stronach parzystych i nieparzystych</strong> - określenie nagłówka dla stron parzystych i nieparzystych,</li>
<li style="padding-left: 60px;"><strong>Skaluj do rozmiaru dokumentu</strong> - automatyczna zmiana rozmiaru czcionki nagłówka/stopki podczas wykonywania operacji skalowania arkusza (domyślnie włączona),</li>
<li style="padding-left: 60px;"><strong>Wyrównaj do marginesów strony</strong> - włączenie opcji spowoduje wyrównanie tekstu wprowadzonego w lewej sekcji nagłówka/stopki do strony lewej oraz wyrównanie tekstu wprowadzonego w prawej sekcji nagłówka/stopki do strony prawej (domyślnie włączona).</li>
</ul>
<p> </p>
<p>Często pojawiającym się pytaniem na forach dotyczących Excela jest pytanie – Jak w nagłówku/stopce wydrukować tekst, który został umieszczony w danej komórce? Niestety nie można wykonać tego zadania poprzez wyklinanie trzeba posłużyć się makrem (kiedyś na temat poświęcę więcej czasu).</p>
<p> </p>
<p>Trochę zboczymy z tematu, ale myślę, że warto.</p>
<p> </p>
<p>W pierwszej kolejności uaktywniamy zakładkę <strong>Deweloper</strong>.</p>
<p> </p>
<p>W przypadku wersji Offica 2016.</p>
<ol>
<li style="padding-left: 60px;">Kliknij kartę <strong>Plik</strong>.</li>
<li style="padding-left: 60px;">Kliknij pozycję <strong>Opcje</strong>.</li>
<li style="padding-left: 60px;">Kliknij pozycję <strong>Dostosowywanie Wstążki</strong>.</li>
<li style="padding-left: 60px;">W obszarze <strong>Dostosowywanie Wstążki</strong> oraz <strong>Karty główne</strong> zaznacz pole wyboru <strong>Deweloper</strong>.</li>
</ol>
<p> </p>
<p>Zaś w przypadku wersji starszych Offica.</p>
<ol>
<li style="padding-left: 60px;">W menu <strong>Narzędzia</strong> kliknij polecenie <strong>Opcje</strong>.</li>
<li style="padding-left: 60px;">Na karcie <strong>Inne</strong> kliknij przycisk <strong>Opcje zaawansowane</strong>, a następnie zaznacz pole wyboru <strong>Pokaż kartę Deweloper na Wstążce</strong>.</li>
</ol>
<p> </p>
<p>Po uaktywnieniu zakładki <strong>Deweloper</strong></p>
<ol>
<li style="padding-left: 60px;">wybieramy ikonę <strong>Makro</strong>,</li>
<li style="padding-left: 60px;">w nowo otwartym oknie określamy nazwę makra (w przykładzie nazwa makra: druk),</li>
<li style="padding-left: 60px;">wybieramy przycisk <strong>Utwórz</strong>.</li>
</ol>
<p> </p>
<p style="margin: 0cm 0cm 0.0001pt 30px;"> </p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image45.png" alt="image45" width="700" height="567" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Po wybraniu przycisku <strong>Utwórz</strong> zostanie otwarte nowe okno edytora VBA . W oknie tym pomiędzy kodem: <strong>Sub <nazwa_makra></strong> a <strong>End Sub</strong> wpisujemy polecenie w postaci: <strong>ActiveSheet.PageSetup.CenterHeader = Worksheets(numer_arkusza/nazwa_arkusza).Range("adres komórki")</strong></p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image46.png" alt="image46" width="700" height="328" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Ponieważ mój arkusz, który będę drukował nosi nazwę <strong>Premia</strong> a tekst, który ma się pojawić w nagłówku znajduje się w komórce A1, polecenie przyjęło postać: <strong>ActiveSheet.PageSetup.CenterHeader = Worksheets("Premia").Range("A1")</strong></p>
<p> </p>
<p>Po dokonaniu zmian, makro oczywiście zapisujemy (konieczne będzie zapisanie arkusza w formacie pozwalającym na obsługę makr czyli .xlsm).</p>
<p> </p>
<p>Nie pozostaje nam nic innego jak sprawdzenie makra w działaniu. Ponownie klikamy ikonę <strong>Makra</strong> i w nowo otwartym oknie uaktywniamy opcję <strong>Uruchom</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image47.png" alt="image47" width="700" height="484" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Jak widać poniżej do nagłówka została wprowadzona informacja zawarta w komórce A1.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image48.png" alt="image48" width="700" height="461" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Zawartość komórki A1 została umieszczona w centralnej części nagłówka jeśli chcemy aby zawartość komórki znalazła się w lewej sekcji nagłówka parametr: <strong>CenterHeader</strong> zamieniamy na: <strong>LeftHeader</strong> zaś by umieścić dane w sekcji prawej stosujemy: <strong>RightHeader</strong></p>
<p> </p>
<p>Aby za pomocą makra wstawić zawartość dowolnej komórki do stopki (sekcja środkowa) należy użyć parametru: <strong>CenterFooter</strong> (dla sekcji lewej: <strong>LeftFooter</strong> zaś dla prawej: <strong>RightFooter</strong>).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image49.png" alt="image49" width="700" height="423" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Ukrywanie niektórych komórek podczas drukowania</p>
<p> </p>
<p>Podczas realizowania procesu wydruku na pewno spotkasz się z sytuacją w której pewne dane będziesz chciał ukryć gdyż np. drukowany zakres komórek zawiera informacje, które niekoniecznie muszą być umieszczone na wydruku (np. numer PESEL, numer telefonu czy adres). Aby ukryć te informacje można zastosować następujące metody:</p>
<p> </p>
<p><strong>Ukrycie wiersza bądź kolumny</strong> - aby ukryć wiersz czy kolumnę należy zaznaczyć interesujący nas obiekt i po wybraniu PPM wybrać opcję <strong>Ukryj</strong>. Ukryt-y/a wiersz/kolumna nie jest uwzględnian-y/a podczas wydruku.</p>
<p> </p>
<p>Jak widać poniżej ukryta kolumna C na podglądzie wydruku nie jest uwzględniana.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image50.png" alt="image50" width="700" height="690" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Do ukrycia pojedynczej komórki bądź zakresu komórek – tak aby zawartość komórki (bądź grupy komórek) została ukryta podczas drukowania można wykorzystać opcje związane z formatowaniem niestandardowym. Użycie odpowiedniego formatowania spowoduje ukrycie zawartości komórek i tak:</p>
<ul>
<li style="padding-left: 60px;">kod: <strong>;;</strong> - wykona ukrycie wartości lecz nie tekstu,</li>
<li style="padding-left: 60px;">kod: <strong>;;;</strong> - pozwoli na ukrycie każdej zawartości.</li>
</ul>
<p> </p>
<p>Zawartość komórki będzie widoczna w pasku formuły.</p>
<p> </p>
<p>Aby ukryć zawartość komórek należy wybrać te, które mają być niewidoczne a następnie w sekcji <strong>Liczba</strong> (karta <strong>Narzędzia główne</strong>) kliknąć na strzałkę w prawym dolnym rogu. W nowo otwartym oknie <strong>Formatowanie komórek</strong> w polu <strong>Typ:</strong> wpisujemy jeden z podanych kodów.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image51.png" alt="image51" width="700" height="448" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Poniżej przykład ukrycia zawartości komórek.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image52.png" alt="image52" width="700" height="373" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Jak widać poniżej ukryte komórki nie są uwzględniane podczas drukowania.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image53.png" alt="image53" width="700" height="499" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Mało eleganckimi acz skutecznymi sposobami ukrycia zawartości komórki jest:</p>
<ul>
<li style="padding-left: 60px;">ustawienie takiego samego koloru tekstu jaki ma formatowana komórka,</li>
<li style="padding-left: 60px;">zasłonięcie zawartości komórki przez inny obiekt np. rysunek czy kształt.</li>
</ul>
<p> </p>
<p>Oprócz ukrywania zawartości komórek mamy też możliwość blokowania wydruku obiektów zawartych w arkuszu (obrazy, kształty czy wykresów).</p>
<p> </p>
<p>Aby zablokować element należy wykonać następujące kroki:</p>
<p style="margin-left: 30px; padding-left: 30px;">1. PPM klikamy na wybrany obiekt i z menu kontekstowego wybieramy opcję <strong>Formatuj … </strong>(nazwa polecenia zależna jest od formatowanego obiektu),</p>
<p style="margin-left: 30px; padding-left: 30px;">2. W oknie <strong>Formatowanie …</strong> wybieramy ikonę <strong>Rozmiar i właściwości</strong>.</p>
<p style="margin-left: 30px; padding-left: 30px;">3. Po rozwinięciu sekcji <strong>Właściwości</strong> odznaczamy checkbox <strong>Drukuj obiekt</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image54.png" alt="image54" width="700" height="498" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Tak jak wszystkie wyżej opisane opcje wydruku na pewno prędzej czy później Czytelniku okażą się przydatne tak i ta przedstawiona poniżej na pewno nie raz będzie przez Ciebie używana. Podczas realizacji wydruków bardzo często stajemy przed pytaniem - Jak odpowiednią ilość informacji zawartych w arkuszu dopasować do rozmiarów kartki, tak by się wszystko zmieściło? Odpowiedzią na pytanie jest użycie opcji związanych z skalowaniem. Skalowanie pozwala nam na ustalenie procentowego pomniejszenia bądź powiększenia drukowanych informacji. Opcje skalowania dostępne są na karcie <strong>Układ strony</strong> w sekcji <strong>Skalowanie do rozmiaru</strong></p>
<p> </p>
<p>W sekcji tej mamy dostępne następujące opcje:</p>
<ul>
<li style="padding-left: 60px;"><strong>Szerokość</strong> - zmniejszenie szerokości wydruku celem dopasowania do odpowiedniej ilości stron,</li>
<li style="padding-left: 60px;"><strong>Wysokość</strong> - zmniejszenie wysokości wydruku celem dopasowania do odpowiedniej ilości stron</li>
<li style="padding-left: 60px;"><strong>Skala</strong> - umożliwia powiększenie bądź zmniejszenie wydruku o wartość procentową jego rzeczywistego rozmiaru.</li>
</ul>
<p> </p>
<p>Poniżej przykład użycia opcji skalowania, dla skoroszytu w którym skalowanie zostało ustalone na 60 i 130 procent.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image55.png" alt="image55" width="700" height="395" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Podczas realizowania procesu wydruku dla danych zawartych w danym skoroszycie może dojść do sytuacji w której będziemy musieli ten proces wykonać z różnymi ustawieniami wydruku. Czasem na podstawie tego samego skoroszytu tworzy się kilka różnych raportów, a zmienianie ulegają ustawienia wydruku.</p>
<p> </p>
<p>Aby za każdym razem nie wykonywać zmiany ustawień opcji druku można te ustawienia zapisać w formie <strong>widoku niestandardowego</strong>. Definicja widoku sprowadza się do wykonania ustawień wydruku a następnie utworzeniu widoku.</p>
<p> </p>
<p>Widok niestandardowy może zawierać dane o:</p>
<ul>
<li style="padding-left: 60px;">zablokowane okna,</li>
<li style="padding-left: 60px;">powiększenie,</li>
<li style="padding-left: 60px;">widoki arkuszy,</li>
<li style="padding-left: 60px;">opcje wydruku zawarte na karcie <strong>Układ strony</strong> (sekcje: <strong>Skalowanie do rozmiaru</strong>, <strong>Opcje arkusza</strong> oraz <strong>Ustawienia strony</strong>),</li>
<li style="padding-left: 60px;">ukryte kolumny bądź wiersze,</li>
<li style="padding-left: 60px;">zaznaczone komórki i zdefiniowane obszary.</li>
</ul>
<p> </p>
<p>Definicja widoku odbywa się poprzez przejście na kartę <strong>Widok</strong> a następnie wybraniu ikony <strong>Widoki niestandardowe</strong>. W nowo otwartym oknie klikamy opcję <strong>Dodaj</strong> po wybraniu, której następuje definicja <strong>nazwy widoku</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image56.png" alt="image56" width="700" height="469" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Aby wczytać widok ponownie wybieramy opcję <strong>Widoki niestandardowe</strong> i po wybraniu widoku klikamy na przycisk <strong>Pokaż</strong>.</p>
<p> </p>
<p>I to by było na tyle, mam nadzieję, że po zapoznaniu się z tym wpisem wydruk w Excelu nie będzie dla Ciebie Czytelniku żadnym problemem.</p></div><div class="K2FeedImage"><img src="http://slow7.pl/media/k2/items/cache/f60a47f7792630a3a86bc14c0657e89c_S.jpg" alt="Excel w zadaniach. Drukowanie" /></div><div class="K2FeedIntroText"><p>W tym wpisie zajmiemy się drukowaniem a mówiąc trochę bardziej szczegółowo omówimy sobie dostępne opcje drukowania w programie Excel. Wpis ten powstał na prośbę jednego z czytelników portalu, który zaproponował aby tym tematem się zająć. A że akurat na ukończeniu miałem wpis dotyczący list kontroli ACL i temat ten wydał mi się na tyle interesujący by opisać go szerzej postanowiłem to zrobić. Jeśli macie propozycje wpisów bądź tematów, które warto by było rozwinąć to zapraszam do kontaktu, wszelkie sugestie bardzo mile widziane.</p>
</div><div class="K2FeedFullText">
<p>Zanim przejdziemy do omówienia opcji związanych z drukowaniem zatrzymajmy się chwilę by omówić dostępne widoki, arkusza kalkulacyjnego gdyż widoki te (ja się Czytelniku przekonasz) ściśle są powiązane z operacją wydruku.</p>
<p> </p>
<p>Excel umożliwia nam standardowo wybranie spośród trzech rodzajów widoku:</p>
<p style="margin-left: 30px;">widok <strong>Normalny</strong> – jest domyślny rodzaj widoku arkusza. To w tym widoku standardowo odbywa się nasza praca z programem. Widok ten oferuje włączenie znaczników podziału stron,</p>
<p style="margin-left: 30px;">widok <strong>Układ strony</strong> – odpowiedzialny za ukazanie poszczególnych stron,</p>
<p style="margin-left: 30px;">widok <strong>Podgląd podziału stron</strong> – umożliwia ręczne ustawienie podziału stron.</p>
<p> </p>
<p>Przełączenie pomiędzy widokami możemy realizować w dwóch miejscach:</p>
<ul>
<li style="padding-left: 60px;">poprzez wybranie jednej z trzech ikon dostępnych w prawym dolnym rogu programu,</li>
<li style="padding-left: 60px;">poprzez wstążkę – karta Widok</li>
</ul>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image1.png" alt="image1" width="700" height="456" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Widok normalny</strong> - Jak już wspomniałem w widoku tym zazwyczaj pracujemy ale oprócz standardowych formuł, obliczeń czy wykresów możemy wyświetlić miejsca podziału stron. Podział strony jest reprezentowany poprzez poziome i pionowe kropkowane linie.</p>
<p> </p>
<p>Linie podziału stron ulegają korekcie podczas:</p>
<ul>
<li style="padding-left: 60px;">zmianie wysokości i szerokości kolumn oraz wierszy,</li>
<li style="padding-left: 60px;">zmianie orientacji strony,</li>
<li style="padding-left: 60px;">po dodaniu/usunięciu nowych kolumn bądź wierszy.</li>
</ul>
<p> </p>
<p>Linie podziału stron standardowo są ukryte ale ukarzą się nam po wydrukowaniu arkusza, wyświetleniu podglądu wydruku bądź po ręcznym zdefiniowaniu obszaru wydruku.</p>
<p> </p>
<p>Wyłączenie linii podziału odbywa się poprzez wybranie polecenia <strong>Plik</strong> a następnie <strong>Opcje</strong>. W nowo otwartym oknie klikamy zakładkę <strong>Zaawansowane</strong>, odszukujemy sekcję <strong>Opcje wyświetlania tego arkusza</strong> (jeśli mamy otwartych więcej arkuszy wybieramy ten co do którego ma być zastosowana zmiana) a następnie odhaczamy opcję <strong>Pokaż podziały stron</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image2.png" alt="image2" width="700" height="522" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Widok Układ strony</strong> - zawiera najszersze i najpełniejsze informacje dotyczące drukowanych arkuszy. W widoku tym mamy bezpośredni dostęp do wszystkich poleceń Excela a dodatkowo podgląd jak arkusz będzie wyglądał po wydrukowaniu. Poniżej na zrzucie przedstawiono arkusz w widoku <strong>Układ strony</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image3.png" alt="image3" width="700" height="459" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>W widoku tym (jeśli zdefiniowano) pokazana jest zawartość nagłówka oraz stopki.</p>
<p> </p>
<p>Kliknięcie na pusty szary obszar pomiędzy stronami spowoduje ukrycie obszarów marginesu, dzięki temu zabiegowi uzyskamy większą przestrzeń roboczą poprzez ukrycie niewykorzystywanych obszarów.</p>
<p> </p>
<p><strong>Widok Podgląd podziału stron</strong> - w widoku tym również mamy możliwość dokonywania korekty wprowadzonych formuł oraz możliwość wprowadzania nowych a także i co najważniejsze widok ten zawiera linie podziału stron. Linie te można przeciągać wpływając tym samym na ustalenie obszaru wydruku. Widok ten nie obejmuje informacji na temat nagłówka oraz stopki arkusza.</p>
<p> </p>
<p>Poniżej na rysunku ukazano arkusz w widoku podglądu podziału stron.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image4.png" alt="image4" width="700" height="459" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Tak naprawdę niektórzy wyróżniają jeszcze jeden widok, tzw. <strong>widok Backstage</strong>, który dostępny jest po wybraniu polecenia <strong>Plik</strong> a następnie <strong>Drukuj</strong> bądź po skorzystaniu z kombinacji klawiszy <strong>Ctrl+P</strong>. Widok ten wyświetla arkusz tak jak będzie wyglądał po wydrukowaniu.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image5.png" alt="image5" width="700" height="459" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>W widoku tym niestety nie mamy możliwości dokonania jakiejkolwiek korekty w danych zawartych w arkuszu ale za to mamy wpływ na wiele opcji związanych z drukowanym arkusze (ale więcej o tych opcja za chwilę).</p>
<p> </p>
<p>Opcje związane z drukowaniem możemy definiować w trzech miejscach:</p>
<p> </p>
<p>Pierwszym z nich jest widok <strong>Ustawienia drukowania </strong>dostępny po wybraniu <strong>Drukuj</strong> z menu <strong>Plik</strong> (bądź Ctrl+P) - rysunek powyżej.</p>
<p> </p>
<p>Drugim miejsce jest karta <strong>Układ strony</strong> dostępna na wstążce.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image6.png" alt="image6" width="700" height="426" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Trzecim zaś okno dialogowe <strong>Ustawienia strony</strong>, dostępne w widoku <strong>Drukuj</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image7.png" alt="image7" width="700" height="426" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Wybór dostępnych opcji jest szeroki i opcje drukowania dostępne w przedstawionych miejscach nie zawsze się ze sobą pokrywają. Dlatego też poniżej w tabeli zebrano te najczęściej używane wraz z zaznaczeniem ich lokalizacji.</p>
<p style="text-align: center;"> </p>
<table border="1" class="Tabela-Siatka1" style="border-collapse: collapse; margin-left: auto; margin-right: auto;" cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 30.15pt;">
<td style="width: 194.75pt; border: 1pt solid windowtext; padding: 0cm 5.4pt; height: 30.15pt;" valign="top" width="260"><strong><span style="color: black;">Ustawienie</span></strong></td>
<td style="width: 72.9pt; border-width: 1pt 1pt 1pt medium; border-style: solid solid solid none; border-color: windowtext windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 30.15pt;" valign="top" width="97"><strong><span style="color: black;">Ustawienia<br /> drukowania</span></strong></td>
<td style="width: 99.25pt; border-width: 1pt 1pt 1pt medium; border-style: solid solid solid none; border-color: windowtext windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 30.15pt;" valign="top" width="132"><strong><span style="color: black;">Karta Układ strony</span></strong></td>
<td style="width: 99.2pt; border-width: 1pt 1pt 1pt medium; border-style: solid solid solid none; border-color: windowtext windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 30.15pt;" valign="top" width="132"><strong><span style="color: black;">Okno dialogowe Ustawienia strony</span></strong></td>
</tr>
<tr style="height: 16.1pt;">
<td style="width: 194.75pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; height: 16.1pt;" valign="top" width="260"><span style="color: black;">Wybór drukarki</span></td>
<td style="width: 72.9pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 16.1pt;" valign="top" width="97"><span style="color: black;">X</span></td>
<td style="width: 99.25pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 16.1pt;" valign="top" width="132"><span style="color: black;"></span></td>
<td style="width: 99.2pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 16.1pt;" valign="top" width="132"><span style="color: black;"></span></td>
</tr>
<tr style="height: 15.75pt;">
<td style="width: 194.75pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="260"><span style="color: black;">Uwzględnienie linii siatki</span></td>
<td style="width: 72.9pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="97"><span style="color: black;"></span></td>
<td style="width: 99.25pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;">X</span></td>
<td style="width: 99.2pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;">X</span></td>
</tr>
<tr style="height: 15.75pt;">
<td style="width: 194.75pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="260"><span style="color: black;">Zmiana orientacji</span></td>
<td style="width: 72.9pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="97"><span style="color: black;">X</span></td>
<td style="width: 99.25pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;">X</span></td>
<td style="width: 99.2pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;">X</span></td>
</tr>
<tr style="height: 15.75pt;">
<td style="width: 194.75pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="260"><span style="color: black;">Definicja obszaru wydruku na arkuszu</span></td>
<td style="width: 72.9pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="97"><span style="color: black;"></span></td>
<td style="width: 99.25pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;">X</span></td>
<td style="width: 99.2pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;">X</span></td>
</tr>
<tr style="height: 15.75pt;">
<td style="width: 194.75pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="260"><span style="color: black;">Wybór metody drukowania: jednostronne lub dwustronne</span></td>
<td style="width: 72.9pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="97"><span style="color: black;">X</span></td>
<td style="width: 99.25pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;"></span></td>
<td style="width: 99.2pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;"></span></td>
</tr>
<tr style="height: 15.75pt;">
<td style="width: 194.75pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="260"><span style="color: black;">Układanie stron</span></td>
<td style="width: 72.9pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="97"><span style="color: black;">X</span></td>
<td style="width: 99.25pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;"></span></td>
<td style="width: 99.2pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;"></span></td>
</tr>
<tr style="height: 15.75pt;">
<td style="width: 194.75pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="260"><span style="color: black;">Dostosowanie marginesów</span></td>
<td style="width: 72.9pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="97"><span style="color: black;">X</span></td>
<td style="width: 99.25pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;">X</span></td>
<td style="width: 99.2pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;">X</span></td>
</tr>
<tr style="height: 15.75pt;">
<td style="width: 194.75pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="260"><span style="color: black;">Ustalenie rozmiaru papieru</span></td>
<td style="width: 72.9pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="97"><span style="color: black;">X</span></td>
<td style="width: 99.25pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;">X</span></td>
<td style="width: 99.2pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;">X</span></td>
</tr>
<tr style="height: 15.75pt;">
<td style="width: 194.75pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="260"><span style="color: black;">Skalowanie wydruku</span></td>
<td style="width: 72.9pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="97"><span style="color: black;"></span></td>
<td style="width: 99.25pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;">X</span></td>
<td style="width: 99.2pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;">X</span></td>
</tr>
<tr style="height: 15.75pt;">
<td style="width: 194.75pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="260"><span style="color: black;">Ręczne zdefiniowanie podziałów stron</span></td>
<td style="width: 72.9pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="97"><span style="color: black;"></span></td>
<td style="width: 99.25pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;">X</span></td>
<td style="width: 99.2pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;"></span></td>
</tr>
<tr style="height: 26.05pt;">
<td style="width: 194.75pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; height: 26.05pt;" valign="top" width="260"><span style="color: black;">Definicja nagłówków wierszy<br /> i kolumn</span></td>
<td style="width: 72.9pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 26.05pt;" valign="top" width="97"><span style="color: black;"></span></td>
<td style="width: 99.25pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 26.05pt;" valign="top" width="132"><span style="color: black;">X</span></td>
<td style="width: 99.2pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 26.05pt;" valign="top" width="132"><span style="color: black;">X</span></td>
</tr>
<tr style="height: 15.75pt;">
<td style="width: 194.75pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="260"><span style="color: black;">Ustalenie liczby wydruku kopii</span></td>
<td style="width: 72.9pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="97"><span style="color: black;">X</span></td>
<td style="width: 99.25pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;"></span></td>
<td style="width: 99.2pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;"></span></td>
</tr>
<tr style="height: 15.75pt;">
<td style="width: 194.75pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="260"><span style="color: black;">Komentarze</span></td>
<td style="width: 72.9pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="97"><span style="color: black;"></span></td>
<td style="width: 99.25pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;"></span></td>
<td style="width: 99.2pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;">X</span></td>
</tr>
<tr style="height: 26.75pt;">
<td style="width: 194.75pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; height: 26.75pt;" valign="top" width="260"><span style="color: black;">Opcje związane ze zmianą trybu kolorów </span></td>
<td style="width: 72.9pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 26.75pt;" valign="top" width="97"><span style="color: black;"></span></td>
<td style="width: 99.25pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 26.75pt;" valign="top" width="132"><span style="color: black;"></span></td>
<td style="width: 99.2pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 26.75pt;" valign="top" width="132"><span style="color: black;">X</span></td>
</tr>
<tr style="height: 15.75pt;">
<td style="width: 194.75pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="260"><span style="color: black;">Numer pierwszej strony</span></td>
<td style="width: 72.9pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="97"><span style="color: black;"></span></td>
<td style="width: 99.25pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;"></span></td>
<td style="width: 99.2pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;">X</span></td>
</tr>
<tr style="height: 15.75pt;">
<td style="width: 194.75pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="260"><span style="color: black;">Wyśrodkowanie</span></td>
<td style="width: 72.9pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="97"><span style="color: black;"></span></td>
<td style="width: 99.25pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;"></span></td>
<td style="width: 99.2pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;">X</span></td>
</tr>
<tr style="height: 15.75pt;">
<td style="width: 194.75pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="260"><span style="color: black;">Błędy w komórkach</span></td>
<td style="width: 72.9pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="97"><span style="color: black;"></span></td>
<td style="width: 99.25pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;"></span></td>
<td style="width: 99.2pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 15.75pt;" valign="top" width="132"><span style="color: black;">X</span></td>
</tr>
<tr style="height: 26.05pt;">
<td style="width: 194.75pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; height: 26.05pt;" valign="top" width="260"><span style="color: black;">Kolejność stron</span></td>
<td style="width: 72.9pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 26.05pt;" valign="top" width="97"><span style="color: black;"></span></td>
<td style="width: 99.25pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 26.05pt;" valign="top" width="132"><span style="color: black;"></span></td>
<td style="width: 99.2pt; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; height: 26.05pt;" valign="top" width="132"><span style="color: black;">X</span></td>
</tr>
</tbody>
</table>
<p style="text-align: center;"> </p>
<p>Tak więc omówmy sobie opcje dostępne w widoku <strong>Ustawienia drukowania</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image8.png" alt="image8" width="700" height="556" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>1. Przycisk <strong>Drukuj</strong> – wybranie go spowoduje wysłanie pliku do drukarki, drukowanie zostanie przeprowadzone zgodnie z opcjami ustawionymi poniżej.</p>
<p> </p>
<p>2. <strong>Kopie</strong> – ustalenie liczby kopii wydruku, potrzebną ilość ustalamy sami poprzez wpisanie ich liczby bądź używamy do tego strzałek.</p>
<p> </p>
<p>3. <strong>Drukarka</strong> – w systemie może być zainstalowanych wiele drukarek, drukarki mogą być do komputera podłączone lokalnie bądź mogą to być drukarki sieciowe (w systemie Windows drukarką może być również faks a także kreator plików PDF). Okno umożliwia wybranie urządzenia do którego ma zostać wysłane polecenie wydruku. Standardowo wybierana jest drukarka, która w systemie została ustawiona jako domyślna.</p>
<p> </p>
<p>4. <strong>Właściwości drukarki</strong> - kliknięcie opcji spowoduje otwarcie okna dialogowego w którym będą zawarte opcje wybranej drukarki. Ustawienia oraz zakres dostępnych opcji zależą od drukarki. Drukarki o większych możliwościach będą posiadały bogatszy zestaw opcji wpływających na końcowy efekt wydruku zaś w tych mniej zaawansowanych urządzeniach ilość dostępnych opcji będzie ograniczona do tych niezbędnych.</p>
<p> </p>
<p>5. <strong>Drukuj aktywna arkusze</strong> - domyślnie drukowane są aktywne arkusze (możliwe jest wydrukowanie kilku arkuszy, definicję arkuszy przeprowadzamy z wykorzystaniem klawisza Ctrl) lecz po rozwinięciu listy można zdecydować się np. na drukowanie całego skoroszytu (wydruk całego skoroszytu wraz z arkuszami wykresów) lub jedynie zaznaczonego zakresu. Zaznaczenie zakresu następuje przed przejściem do widoku opcji <strong>Ustawienia drukowania</strong>. Dostępne są jeszcze dwie dodatkowe opcje a mianowicie <strong>Drukuj zaznaczony wykres</strong> (opcja aktywna po zaznaczeniu wykresu) oraz <strong>Drukuj zaznaczoną tabelę</strong> (opcja aktywna po tym jak wskaźnik komórki zostanie umieszczony w obrębie tabeli).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image9.png" alt="image9" width="700" height="278" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>6. <strong>Strony</strong> - określenie zakresu stron, które zostaną wydrukowane.</p>
<p> </p>
<p>7. <strong>Posortowane</strong> - określenie sposobu sortowania wydruku kopii. Dostępne dwie opcje: 1,2,3; 1,2,3; 1,2,3 (strona 1, strona 2, strona 3 itd.) lub 1,1,1; 2,2,2; 3,3,3 (wszystkie strony 1, wszystkie strony 2, wszystkie strony 3 itd.) Domyślnie ustawioną opcją jest: 1,2,3; 1,2,3; 1,2,3 Jeśli drukujemy tylko jedną stronę Excel ignoruje ustawienia sortowania.</p>
<p> </p>
<p>8. <strong>Orientacja pionowa/pozioma</strong> - wybór orientacji pionowej (domyślna) i poziomej.</p>
<p> </p>
<p>9. <strong>Rozmiar</strong> - wybór rozmiaru papieru na którym będzie realizowany druk (domyślnie A4). Spośród dostępnych opcji możemy wybrać wiele różnych rozmiarów papieru ale należy mieć świadomość iż to czy da się zrealizować wydruk na wybranym formacie zależy również od samej drukarki (drukarka części formatów może nie obsługiwać).</p>
<p> </p>
<p>10. <strong>Marginesy</strong> - wybór spośród trzech (a tak naprawdę czterech) rodzajów marginesów: <strong>niestandardowe</strong> (ustawienie domyślne), <strong>normalne</strong>, <strong>szerokie</strong> i <strong>wąskie</strong>. Marginesy niestandardowe są definiowane przez użytkownika ich rozmiar można ustalać poprzez skorzystanie z opcji dostępnych w prawym dolnym rogu (punkt 13). Zmiana rozmiarów marginesów dostępna jest również na karcie <strong>Układ strony</strong> (patrz wstążka) a także na karcie <strong>Ustawienia strony</strong> w zakładce <strong>Marginesy</strong> (punkt 12).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image10.png" alt="image10" width="700" height="425" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>11. <strong>Rozmiar</strong> - wybór opcji skalowania. Dostępne opcje to: <strong>Rozmiar rzeczywisty</strong> (drukuj arkusze w rozmiarze rzeczywistym), <strong>Dopasuj arkusz do jednej strony</strong> (zmniejsz wydruk aby zmieścić go na jednej stronie), <strong>Dopasuj wszystkie kolumny do jednej strony</strong> (zmniejsz wydruk, aby miał szerokość jednej strony), <strong>Dopasuj wszystkie wiersze do jednej strony</strong> (zmniejsz wydruk, aby miał wysokość jednej strony) oraz <strong>Opcje skalowania niestandardowego </strong>(wybór opcji spowoduje otwarcie okna <strong>Ustawienia strony</strong>). Link do okna <strong>Ustawienia strony</strong> (punkt 12) dostępny jest również poniżej opcji wydruku.</p>
<p> </p>
<p>Po wybraniu tej opcji będziemy mieli wpływ na:</p>
<p style="margin-left: 30px;">1 - ustalenie orientacji wydruku,</p>
<p style="margin-left: 30px;">2 - dostosowania skalowania - możemy określić wartość procentową bądź zdecydować się na wpasowanie opierające się na wysokości i szerokości arkusza. W pewnych sytuacjach (a szczególnie w tych w których pracujemy z rozbudowanymi arkuszami) dochodzi do sytuacji w której musimy na pojedynczej kartce papieru umieścić wszystkie dane, które są zawarte w arkuszu aby wykonać to zadanie musimy posłużyć się mechanizmem, który pozwoli nam na zmniejszenie bądź zwiększenie skali wydruku. Zmiana współczynnika skalowania może nastąpić przy użyciu skali procentowej (przedział od 10% do 400%) bądź skali opartej na szerokości lub wysokości strony.</p>
<p style="margin-left: 30px;">3 - ustalenie rozmiaru papieru a także ustaleniu jakości wydruku,</p>
<p style="margin-left: 30px;">4 - wybranie przycisku <strong>Opcje</strong> przeniesie nas do ustawień oferowanych przez drukarkę.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image11.png" alt="image11" width="700" height="427" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Opcje związane z ustawieniem strony zostały omówione przyjrzyjmy się zatem tym, które są oferowane na karcie <strong>Układ strony</strong></p>
<p> </p>
<p><strong>Orientacja</strong> strony określa sposób usytuowania wydruku na kartce. Domyślnym ustawieniem strony jest orientacja pionowa.</p>
<p> </p>
<p>Zmianę orientacji strony dokonamy po wybraniu ikony <strong>Orientacja</strong> dostępnej na karcie <strong>Układ strony</strong> w sekcji <strong>Ustawienia strony</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image12.png" alt="image12" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Orientacja pionowa spełnia swe zadanie przy wąskim zakresie komórek i dużej liczbie wierszy, natomiast orientacja pozioma w sytuacji odwrotnej czyli gdy mamy do czynienia np. z szeroką tabelą.</p>
<p> </p>
<p>Po dokonanej zmianie układu strony linie podziału stron zostaną automatycznie dostosowane do nowego układu.</p>
<p> </p>
<p>Opcja zmiany ustawień strony dostępna jest również w <strong>widoku Backstage</strong> po wybraniu <strong>Drukuj</strong>.</p>
<p> </p>
<p>Polecenie <strong>Rozmiar</strong> umożliwia zdefiniowanie rozmiaru papieru. Opcja zmiany rozmiaru dostępna jest również w <strong>widoku Backstage</strong> po wybraniu <strong>Drukuj</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image13.png" alt="image13" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Podczas drukowania (w szczególności długich raportów, bądź tabel) nie raz spotkamy się z sytuacją w której zaproponowany przez Excela automatyczny sposób podziału stron nie do końca będzie spełniał nasze oczekiwania. Na szczęście są mechanizmy, które pozwolą nam na zastosowanie ręcznego podziału dokumentu na strony.</p>
<p> </p>
<p>Jedną z takich opcji są <strong>Znaki podziału</strong>.</p>
<p> </p>
<p>Przypuśćmy, że mamy zestawienie takie jak przedstawione na rysunku poniżej. W zestawieniu tym istnieje dwóch Konsultantów (Paweł oraz Teresa) a zadanie polega na takim wydrukowaniu danych aby informacje odnośnie konsultantów znalazły się na dwóch osobnych kartkach.</p>
<p> </p>
<p>Aby wykonać to zadanie należy wymusić ręczny podział strony. Aby wstawić poziomą linię podziału stron, należy kliknąć na komórkę, która ma rozpoczynać nową stronę. Przy czym komórka ta musi znajdować się w kolumnie A (w przykładzie komórka A41). Kliknięcie na komórkę należącą do innej kolumny spowoduje również dodanie pionowej linii podziału.</p>
<p> </p>
<p>Po zaznaczeniu komórki wybieramy ikonę <strong>Znaki podziału</strong> a następnie opcję <strong>Wstaw podział strony</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image14.png" alt="image14" width="700" height="491" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Po wykonaniu tej operacji dane zostaną od siebie oddzielone czego efektem będzie ich wydruk na dwóch osobnych stronach.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image15.png" alt="image15" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Aby zaś dokonać podziału przy użyciu pionowej linii podziału wybieramy komórkę, która rozpocznie nam nową stronę (komórka musi być umieszczona w wierszu o numerze 1) i tak jak poprzednio wybrać ikonę <strong>Znaki podziału</strong> a następnie opcję <strong>Wstaw podział strony</strong>.</p>
<p> </p>
<p>Poniżej przykład podziału informacji o konsultantach (te same dane co w ćwiczeniu powyżej) lecz tym razem dane zostały zgrupowane w poziomie. Aby wydrukować informacje z podziałem na poszczególnych pracowników należy wybrać komórkę D1 i tak jak poprzednio wybieramy ikonę <strong>Znaki podziału</strong> a następnie opcję <strong>Wstaw podział strony</strong></p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image16.png" alt="image16" width="700" height="403" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Po dokonaniu podziału dane te zostaną od siebie odseparowane a ich wydruk nastąpi na dwóch oddzielnych stronach.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image17.png" alt="image17" width="700" height="528" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Oczywiście można również zastosować poziomą oraz pionową linię podziału. Przyjmijmy, że mamy dane zebrane jak na poniższym zrzucie i tak jak w poprzednich dwóch ćwiczeniach chcemy zrealizować wydruk z zastrzeżeniem, że jeden konsultant - jedna kartka.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image18.png" alt="image18" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Potrzebujemy podzielić dane na cztery części. Zadanie te możemy zrealizować na dwa sposoby:</p>
<p style="margin-left: 30px;">Sposób 1 - umieszczamy kursor w komórce A14 i wstawiamy znak podziału a następnie kursor ustawiamy na komórkę D1 i ponownie wstawiamy znak podziału.</p>
<p style="margin-left: 30px;">Sposób 2 - zaznaczamy komórkę D14 i wstawiamy znak podziału strony. Linie podziału zostaną umieszczone w następujący sposób: pozioma powyżej komórki D14, pionowa z lewej strony komórki D14.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image19.png" alt="image19" width="700" height="571" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Po zastosowaniu dowolnego z opisanych sposobów dane zostaną podzielone na cztery części.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image20.png" alt="image20" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Aby usunąć linię podziału zaznaczamy komórkę za pomocą, której podział wstawiliśmy a następnie klikając na ikonę <strong>Znaki podziału</strong> wybieramy opcję <strong>Usuń podział strony</strong>. Wybranie opcji <strong>Resetuj wszystkie podziały stron</strong> usunie wszystkie zdefiniowane linie podziału.</p>
<p> </p>
<p>A co w sytuacji w której dane, które chcemy wydrukować znajdują się w różnych obszarach arkusza? Aby poradzić sobie z tym zadaniem należy wykorzystać opcję: <strong>Obszar wydruku</strong>.</p>
<p> </p>
<p>Pozostańmy przy przykładzie z konsultantami, lecz tym razem zadanie polega na takim wydrukowaniu danych aby informacje przypisane Andrzejowi i Teresie również znalazły się na osobnej kartce.</p>
<p> </p>
<p>Realizację zadania rozpoczniemy od zaznaczenia wszystkich komórek w których znajdują się dane konsultanta Andrzeja a następnie na karcie <strong>Układ strony</strong> odszukujemy ikonę <strong>Obszar wydruku</strong> i z menu wybieramy opcję <strong>Ustaw obszar wydruku</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image21.png" alt="image21" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Po wykonaniu tej czynności oczywiście należy do już zdefiniowanego obszaru wydruku dodać kolejny zawierający informacje o konsultantce Teresie.</p>
<p> </p>
<p>Tak jak poprzednio rozpoczynamy od zaznaczenia komórek w których przechowywane są dane lecz tym razem muszą być zaznaczone komórki przynależne Teresie. Po zaznaczeniu komórek na karcie <strong>Układ strony</strong> wybieramy ikonę <strong>Obszar wydruku</strong> i z menu wybieramy opcję <strong>Dodaj do obszaru wydruku</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image22.png" alt="image22" width="700" height="722" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Po tak zdefiniowanym zakresie nie pozostaje nic innego jak zrealizować wydruk. Dane konsultantów zostaną wydrukowane na dwóch osobnych stronach.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image23.png" alt="image23" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Oczywiście ten sam efekt możemy uzyskać dzięki:</p>
<ul>
<li style="padding-left: 60px;">zastosowaniu linii podziału,</li>
<li style="padding-left: 60px;">ręcznym zaznaczeniu komórek konsultanta pierwszego i po wyświetleniu widoku drukowania wybraniu opcji <strong>Drukuj zaznaczenie</strong>, operację oczywiście powtarzamy dla konsultanta drugiego.</li>
</ul>
<p> </p>
<p>A co w przypadku w którym chcemy zrealizować wydruk z wielu obszarów arkusza tak by znalazły się one na jednej stronie? Tu już sprawa mocno się komplikuje gdyż jak na razie Excel opcji takiej nie przewiduje (tak naprawdę da się to wykonać tylko trzeba by było skorzystać z języka VBA). Ja proponuję Ci Czytelniku znacznie łatwiejszy sposób.</p>
<p> </p>
<p>Przyjmijmy że mamy arkusz przedstawiony na zrzucie poniżej.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image24.png" alt="image24" width="700" height="405" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Zadanie polega na wydrukowaniu danych w ten sposób aby informacje konsultanta Paweł i Jan znalazły się na jednej stronie.</p>
<p> </p>
<p>Aby zadanie wykonać skorzystamy z mechanizmu, który nazywa się <strong>Aparat fotograficzny </strong>(mało znana funkcja Excela ale w pewnych przypadkach niezastąpiona. Jak na przykład w tym). Funkcji tej standardowo nie odnajdziemy wśród opcji pogrupowanych na pasku zadań Excela ale nic nie stoi na przeszkodzie by ją dodać ręcznie.</p>
<p> </p>
<p>Rozpoczynamy od kliknięcia strzałki (lewy górny róg okna programu) odpowiedzialnej za dostosowanie narzędzi dostępnych w pasku szybkiego uruchamiania. Po wybraniu strzałki z dostępnych opcji wybieramy <strong>Więcej poleceń</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image25.png" alt="image25" width="700" height="583" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>W nowo otwartym oknie <strong>Opcje programu Excel</strong> z menu <strong>Wybierz polecenia z:</strong> uaktywniamy opcję <strong>Polecenia, których nie ma na Wstążce</strong> (punkt 1). W oknie poniżej zostaną wyświetlone wszystkie dostępne opcje programu Excel, które nie zostały domyślnie zamieszczone na wstążce programu. Wśród opcji odnajdujemy <strong>Aparat fotograficzny</strong> (punkt 2) i poprzez przycisk <strong>Dodaj</strong> (punkt 3), ikonę funkcji przenosimy do okna narzędzi paska Szybki dostęp. Po zatwierdzeniu zmian ikona aparatu fotograficznego pojawi się na pasku szybkiego dostępu.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image26.png" alt="image26" width="700" height="507" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Kolejną czynnością jest zaznaczenie komórek zawierających dane konsultanta Paweł a następnie wybraniu ikony aparatu fotograficznego. Po wykonaniu „zdjęcia” klikamy w dowolny obszar arkusza. Analogicznie postępujemy z danymi konsultanta Jan. Tak przygotowane „zdjęcia” umieszczamy obok siebie.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image27.png" alt="image27" width="700" height="534" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Ostatnią czynnością jest wykonanie wydruku. Zaznaczamy komórki tak by zaznaczenie obejmowało wykonane „zdjęcia”.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image28.png" alt="image28" width="700" height="504" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Po przejściu do widoku drukowania wybieramy opcję <strong>Drukuj zaznaczenie</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image29.png" alt="image29" width="700" height="321" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>W ten oto ciekawy sposób poradziliśmy sobie z wydrukiem danych na jednej stronie, leżących w różnych obszarach arkusza.</p>
<p> </p>
<p>Funkcja aparatu fotograficznego Czytelniku przyda Ci się również podczas pracy z skoroszytem, który zawiera wiele arkuszów. Przypuśćmy, że modyfikujesz formułę bądź dane w jednym z arkuszów lecz odzwierciedlenie zmian znajduje się w innym. Poprzez wstawienie „zdjęcia” będziesz miał bezpośredni podgląd jak dokonywana zmiana wpływa na dane zawarte w komórkach znajdujących się w odrębnym arkuszu. Dzieje się tak gdyż dokonywane zmiany są na bieżące uaktualniane. Wykonane „zdjęcie” nie jest statycznym obrazem.</p>
<p> </p>
<p>Czasem podczas drukowania niektórych arkuszy chcemy aby widoczne były linie siatki. W domyślnych ustawieniach linie siatki podczas operacji wydruku są pomijane. Aby zmienić te ustawienie należy przejść na kartę <strong>Układ strony</strong> i w sekcji <strong>Opcje arkusza</strong> zaznaczyć opcję <strong>Drukuj linie siatki</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image30.png" alt="image30" width="700" height="481" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Wydruk linii siatki poszczególnych komórek uzyskamy również włączając obramowanie komórki.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image31.png" alt="image31" width="700" height="535" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>W pierwszym wierszu bądź pierwszej kolumnie często umieszczamy informacje identyfikujące dany wiersz czy kolumnę. Podczas wykonania wydruku, dane zawarte w tych obszarach a opisujące zawartość zostaną wydrukowane tylko na pierwszej stronie. Przeglądając wielostronicowy wydruk brak opisu wierszy bądź kolumn jest dla nas utrudnieniem. Na szczęście możemy to w prosty sposób zmienić tak by uwzględnić wybrane wiersze lub kolumny na każdej stronie wydruku.</p>
<p> </p>
<p>Sytuacje tą obrazuje poniższy zrzut na którym widać iż dane opisujące tabelę są wydrukowane tylko na pierwszej stronie.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image32.png" alt="image32" width="700" height="430" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Aby pierwszy wiersz tabeli znalazł się na każdej z drukowanych stron bądź kolumna (wydrukowana jako pierwsza po lewej stronie) należy wykonać następujące czynności:</p>
<ul>
<li style="padding-left: 60px;">wybieramy polecenie <strong>Tytuły wydruku</strong> dostępne na karcie <strong>Ustawienia strony</strong>,</li>
<li style="padding-left: 60px;">po wywołaniu polecenia w nowo otwartym oknie <strong>Ustawienia strony</strong> (karta <strong>Arkusz</strong>) należy uaktywnić odpowiednie pole: <strong>U góry powtarzaj wiersze</strong> lub <strong>Z lewej powtarzaj kolumny</strong> w zależności od tego co chcemy by zostało wydrukowane na każdej z stron (oczywiście możemy zdecydować się zarówno na kolumnę jaki i wiersz). Definicję wierszy bądź kolumn dokonujemy ręcznie poprzez wpisanie zakresu komórek bądź za pomocą przycisku.</li>
</ul>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image33.png" alt="image33" width="700" height="425" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Po wykonaniu tych dwóch prostych czynności zaznaczony wiersz/kolumna będą uwzględnione podczas wydruku.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image34.png" alt="image34" width="700" height="436" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Wstawianie znaku wodnego (czyli obrazu, bądź tekstu, który pojawi się na każdej drukowanej stronie) w Excelu nie przebiega w tak prosty sposób jak to ma się w Wordzie gdzie mamy odpowiedni przycisk, który całą robotę wykona za nas. Ale i w Excelu można takową grafikę wstawić trzeba po prostu użyć pewnej sztuczki.</p>
<p> </p>
<p>Aby umieścić znak wodny należy wykonać następujące kroki:</p>
<p> </p>
<p>Krok 1. Po odnalezieniu grafiki, która będzie naszym znakiem wodnym przechodzimy na kartę <strong>Widok</strong> i w sekcji <strong>Widoki skoroszytu</strong> wybieramy przycisk <strong>Układ strony</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image35.png" alt="image35" width="700" height="481" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Krok 2. Po zmianie widoku arkusza danych wybieramy pole <strong>Dodaj nagłówek</strong> (pole to składa się z trzech sekcji, zazwyczaj wybieraną jest ta środkowa). Po wybraniu sekcji odszukujemy przycisk <strong>Obraz</strong>. Opcję tą znajdziemy po wybraniu polecenia <strong>Narzędzia nagłówków i stopek/Projektowanie</strong> w sekcji <strong>Elementy nagłówka</strong> <strong>i stopki</strong> Po wybraniu przycisku <strong>Obraz</strong> na ekranie w nowo otwartym oknie dialogowym będziemy mogli wskazać plik graficzny, który będzie stanowił nasz znak wodny.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image36.png" alt="image36" width="700" height="373" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Krok 3. Po wybraniu obrazu (obraz wybieramy spośród tych dostępnych na dysku, w usłudze OneDrive bądź korzystamy z wyszukiwarki Bing) klikamy w dowolne miejsce poza obszarem nagłówka. Obraz zostanie wstawiony.</p>
<p> </p>
<p>Krok 4. Wracamy z powrotem do obszaru nagłówka (klikamy na sekcję w której został wstawiony obraz) tak by wyświetlić kod: <strong>&[Obraz]</strong> Przed kodem tym dodajemy znaki <strong>Enter</strong> tak by ustawić go na odpowiedniej wysokości.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image37.png" alt="image37" width="700" height="422" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Jeśli chcemy dokonać korekty wstawionego obrazu przechodzimy do karty <strong>Narzędzia nagłówków i stopek/Projektowanie</strong> i w sekcji <strong>Elementy nagłówka</strong> <strong>i stopki </strong>odszukujemy ikonę <strong>Formatuj obraz</strong>. Opcje na które będziemy mieli wpływ to rozmiary wstawionego obrazu, przycięcie oraz zmiana kolorystyki (jasność, kontrast czy rozmycie).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image38.png" alt="image38" width="700" height="373" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Podczas pracy z Excelem mamy możliwość ustawienia tła arkusza (polecenie <strong>Tło</strong> dostępne na karcie <strong>Ustawienia strony</strong>). Zadaniem tła jest wizualne uatrakcyjnienie arkusza i tak naprawdę przeznaczenie tej opcji na tym się kończy. Po wstawieniu tła jest ono uwzględniane tylko w arkuszu i niestety nie ma możliwości jego wydrukowania.</p>
<p> </p>
<p>Na zrzucie poniżej pokazano zastosowanie opcji tła i jak można zauważyć obrazek ten w podglądzie wydruku jest pomijany.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image39.png" alt="image39" width="700" height="505" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Sama opcja wstawienia tła jest bardzo ograniczona w swym działaniu gdyż nie mamy żadnej możliwości przeskalowania go czy zmiany położenia tak by np. wstawiony obrazek był uzupełnieniem arkusza a nie zbędnym elementem przeszkadzającym w pracy z arkuszem.</p>
<p> </p>
<p>Zamiast obrazu tła znacznie wygodniejszym rozwiązaniem (acz do ideału bardzo dużo mu brakuje) jest umieszczenie obrazka (a także kształtu bądź obiektu WordArt) i takim jego wyskalowaniu by stał się częścią arkusza. Wstawiony obraz nie może zachodzić na komórki wypełnione danymi gdyż je przysłoni a niestety nie ma możliwości takiej zmiany kolejności wyświetlanych elementów, by tekst wpisany do komórki był nad zdjęciem. W przypadku wstawienia kształtu sytuacja jest o tyle łatwiejsza gdyż mamy opcje pozwalające na sterowanie jego przezroczystością.</p>
<p> </p>
<p>Zaletą wstawionych obiektów graficznych jest ich uwzględnianie podczas wydruku lecz by obiekt taki znalazł się na każdej drukowanej stronie należy go wielokrotnie skopiować do wszystkich obszarów arkusza.</p>
<p> </p>
<p>Czasem zachodzi potrzeba wydrukowania nagłówka wiersza bądź kolumny (w tym kontekście nagłówek rozumiany jest jako litera dla kolumny i cyfra dla wiersza). Domyślnie elementy te są wyłączone, aby były one uwzględnione na wydruku należy na karcie <strong>Układ strony</strong> w sekcji <strong>Opcje arkusza/Nagłówki</strong> zaznaczyć opcję <strong>Drukuj</strong>.</p>
<p> </p>
<p>Poniżej przykład (po lewej) zastosowania opcji domyślnej zaś po prawej uaktywniona opcja drukowania nagłówków.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image40.png" alt="image40" width="700" height="243" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Nagłówek to informacja pojawiająca się w górnej części każdej z drukowanych stron, zaś informacje zawarte w stopce są umieszczane na dole strony. Zasadność stosowania nagłówka i stopki sprowadza się do umieszczenia tych samych danych na każdej z drukowanych stron (po za numerem stron). Często podczas drukowania wielu stron dokumentu (np. celem jego identyfikacji) do wydruku dołączana jest informacja o jego wersji. Zastosowanie nagłówka zwalnia nas z tego obowiązku gdyż definicja informacji zawartych w nagłówku spowoduje powielenie jej na każdej ze stron tworzących dokument.</p>
<p> </p>
<p>Domyślnie podczas realizowania wydruku informacje z nagłówka oraz stopki nie są uwzględniane. Spowodowane jest to faktem iż w tej części arkusza żadne dane nie są umieszczone.</p>
<p> </p>
<p>Informacje, które mają być zamieszczone w nagłówku bądź stopce można zdefiniować w zakładce <strong>Nagłówek/stopka </strong>która dostępna jest po wybraniu opcji <strong>Ustawienia strony</strong> (widok Backstage, Drukuj).</p>
<p> </p>
<p>W sekcjach <strong>Nagłówek:</strong> bądź <strong>Stopka:</strong> zostały umieszczone standardowe formy nagłówka bądź stopki. Określenie własnych informacji następuje poprzez wybranie przycisku <strong>Nagłówek niestandardowy</strong> bądź <strong>Stopka niestandardowa</strong> (oczywiście w zależności gdzie informacja ta ma zostać umieszczona).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image41.png" alt="image41" width="700" height="485" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Przedstawiona powyżej opcja określenia nagłówka bądź stopki nie jest oczywiście jedyną, znacznie wygodniejszym sposobem jest skorzystanie z opcji dostępnych po przełączeniu się na widok <strong>Układ strony</strong>, w którym to poprzez kliknięcie na odpowiedni obszar nagłówka/stopki i bezpośrednie wpisanie informacji można zdefiniować dane, które będą uwzględniane podczas wydruku. Dane umieszczone w nagłówku/stopce można w dowolny sposób formatować.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image42.png" alt="image42" width="700" height="703" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Zarówno nagłówek i stopka zostały podzielone na trzy odrębne części. W sekcjach tych można umieszczać niezbędne nam informacje jak np. tytuł dokumentu, autora czy numer strony.</p>
<p> </p>
<p>Aby nagłówek i stopka były automatycznie uzupełniane np. logiem firmy można posłużyć się szablonem. Szablon taki stanowi punkt wyjścia dla nowo definiowanych arkuszy. Użycie szablonu sprowadza się do definicji danych, które będą dołączane do nowo tworzonych dokumentów Excela. Jak taki szablon utworzyć? – to opiszę w kolejnym wpisie.</p>
<p> </p>
<p>Zamiast samemu definiować informacje umieszczane w nagłówku/stopce możemy zdecydować się na użycie jednej z propozycji, które dostępne są po zaznaczeniu dowolnej sekcji nagłówka/stopki i wybraniu karty <strong>Projektowanie</strong>. Użycie ikon <strong>Nagłówek</strong> bądź <strong>Stopka</strong> pozwoli nam na umieszczenie proponowanych danych.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image43.png" alt="image43" width="700" height="413" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Definiując nagłówek/stopkę możemy oczywiście użyć dowolnego tekstu ale dodatkowo możemy zastosować również zmienne. Zmienne dostępne są na karcie <strong>Projektowanie</strong> (<strong>Narzędzia nagłówków i stopek</strong>) pod ikonami umieszczonymi w sekcji <strong>Elementy nagłówka i stopki</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image44.png" alt="image44" width="700" height="412" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Podążając od lewej kolejne ikony pozwolą nam na umieszczenie następujących informacji:</p>
<ul>
<li style="padding-left: 60px;"><strong>Numer strony</strong> - kod: &[Strona] - zostaje umieszczona informacja o numerze bieżącej strony,</li>
<li style="padding-left: 60px;"><strong>Liczba stron</strong> - kod: &[Strony] - ogólna liczba stron,</li>
<li style="padding-left: 60px;"><strong>Bieżąca data</strong> - kod: &[Data] - bieżącą datę,</li>
<li style="padding-left: 60px;"><strong>Bieżąca godzina</strong> - kod: &[Czas] - bieżąca godzina,</li>
<li style="padding-left: 60px;"><strong>Ścieżka pliku</strong> - kod: &[Ścieżka]&[Plik] - pełna ścieżka pliku wraz z nazwą pliku,</li>
<li style="padding-left: 60px;"><strong>Nazwa pliku</strong> - kod: &[Plik] - tylko nazwa pliku,</li>
<li style="padding-left: 60px;"><strong>Nazwa arkusza</strong> - kod: &[Karta] - nazwa arkusza,</li>
<li style="padding-left: 60px;"><strong>Obraz</strong> - umieszczenie w obrębie nagłówka/stopki pliku graficznego,</li>
<li style="padding-left: 60px;"><strong>Formatowanie obrazu</strong> - zmiana ustawień obrazu.</li>
</ul>
<p> </p>
<p>Przy definicji nagłówka i w przypadku użycia znaku & może pojawić się pewien problem gdyż znak & zarezerwowany jest do użycia z nazwą zmiennej. Co zatem zrobić gdy w nagłówku niezbędne okaże się użycie tegoż znaku? Należy wpisać go dwukrotnie - &&</p>
<p> </p>
<p>Na karcie Projektowanie dostępne są jeszcze następujące opcje:</p>
<ul>
<li style="padding-left: 60px;"><strong>Inne na pierwszej stronie</strong> - włączenie opcji spowoduje możliwość ustawienia osobnego nagłówka/stopki dla pierwszej drukowanej strony,</li>
<li style="padding-left: 60px;"><strong>Inne na stronach parzystych i nieparzystych</strong> - określenie nagłówka dla stron parzystych i nieparzystych,</li>
<li style="padding-left: 60px;"><strong>Skaluj do rozmiaru dokumentu</strong> - automatyczna zmiana rozmiaru czcionki nagłówka/stopki podczas wykonywania operacji skalowania arkusza (domyślnie włączona),</li>
<li style="padding-left: 60px;"><strong>Wyrównaj do marginesów strony</strong> - włączenie opcji spowoduje wyrównanie tekstu wprowadzonego w lewej sekcji nagłówka/stopki do strony lewej oraz wyrównanie tekstu wprowadzonego w prawej sekcji nagłówka/stopki do strony prawej (domyślnie włączona).</li>
</ul>
<p> </p>
<p>Często pojawiającym się pytaniem na forach dotyczących Excela jest pytanie – Jak w nagłówku/stopce wydrukować tekst, który został umieszczony w danej komórce? Niestety nie można wykonać tego zadania poprzez wyklinanie trzeba posłużyć się makrem (kiedyś na temat poświęcę więcej czasu).</p>
<p> </p>
<p>Trochę zboczymy z tematu, ale myślę, że warto.</p>
<p> </p>
<p>W pierwszej kolejności uaktywniamy zakładkę <strong>Deweloper</strong>.</p>
<p> </p>
<p>W przypadku wersji Offica 2016.</p>
<ol>
<li style="padding-left: 60px;">Kliknij kartę <strong>Plik</strong>.</li>
<li style="padding-left: 60px;">Kliknij pozycję <strong>Opcje</strong>.</li>
<li style="padding-left: 60px;">Kliknij pozycję <strong>Dostosowywanie Wstążki</strong>.</li>
<li style="padding-left: 60px;">W obszarze <strong>Dostosowywanie Wstążki</strong> oraz <strong>Karty główne</strong> zaznacz pole wyboru <strong>Deweloper</strong>.</li>
</ol>
<p> </p>
<p>Zaś w przypadku wersji starszych Offica.</p>
<ol>
<li style="padding-left: 60px;">W menu <strong>Narzędzia</strong> kliknij polecenie <strong>Opcje</strong>.</li>
<li style="padding-left: 60px;">Na karcie <strong>Inne</strong> kliknij przycisk <strong>Opcje zaawansowane</strong>, a następnie zaznacz pole wyboru <strong>Pokaż kartę Deweloper na Wstążce</strong>.</li>
</ol>
<p> </p>
<p>Po uaktywnieniu zakładki <strong>Deweloper</strong></p>
<ol>
<li style="padding-left: 60px;">wybieramy ikonę <strong>Makro</strong>,</li>
<li style="padding-left: 60px;">w nowo otwartym oknie określamy nazwę makra (w przykładzie nazwa makra: druk),</li>
<li style="padding-left: 60px;">wybieramy przycisk <strong>Utwórz</strong>.</li>
</ol>
<p> </p>
<p style="margin: 0cm 0cm 0.0001pt 30px;"> </p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image45.png" alt="image45" width="700" height="567" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Po wybraniu przycisku <strong>Utwórz</strong> zostanie otwarte nowe okno edytora VBA . W oknie tym pomiędzy kodem: <strong>Sub <nazwa_makra></strong> a <strong>End Sub</strong> wpisujemy polecenie w postaci: <strong>ActiveSheet.PageSetup.CenterHeader = Worksheets(numer_arkusza/nazwa_arkusza).Range("adres komórki")</strong></p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image46.png" alt="image46" width="700" height="328" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Ponieważ mój arkusz, który będę drukował nosi nazwę <strong>Premia</strong> a tekst, który ma się pojawić w nagłówku znajduje się w komórce A1, polecenie przyjęło postać: <strong>ActiveSheet.PageSetup.CenterHeader = Worksheets("Premia").Range("A1")</strong></p>
<p> </p>
<p>Po dokonaniu zmian, makro oczywiście zapisujemy (konieczne będzie zapisanie arkusza w formacie pozwalającym na obsługę makr czyli .xlsm).</p>
<p> </p>
<p>Nie pozostaje nam nic innego jak sprawdzenie makra w działaniu. Ponownie klikamy ikonę <strong>Makra</strong> i w nowo otwartym oknie uaktywniamy opcję <strong>Uruchom</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image47.png" alt="image47" width="700" height="484" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Jak widać poniżej do nagłówka została wprowadzona informacja zawarta w komórce A1.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image48.png" alt="image48" width="700" height="461" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Zawartość komórki A1 została umieszczona w centralnej części nagłówka jeśli chcemy aby zawartość komórki znalazła się w lewej sekcji nagłówka parametr: <strong>CenterHeader</strong> zamieniamy na: <strong>LeftHeader</strong> zaś by umieścić dane w sekcji prawej stosujemy: <strong>RightHeader</strong></p>
<p> </p>
<p>Aby za pomocą makra wstawić zawartość dowolnej komórki do stopki (sekcja środkowa) należy użyć parametru: <strong>CenterFooter</strong> (dla sekcji lewej: <strong>LeftFooter</strong> zaś dla prawej: <strong>RightFooter</strong>).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image49.png" alt="image49" width="700" height="423" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Ukrywanie niektórych komórek podczas drukowania</p>
<p> </p>
<p>Podczas realizowania procesu wydruku na pewno spotkasz się z sytuacją w której pewne dane będziesz chciał ukryć gdyż np. drukowany zakres komórek zawiera informacje, które niekoniecznie muszą być umieszczone na wydruku (np. numer PESEL, numer telefonu czy adres). Aby ukryć te informacje można zastosować następujące metody:</p>
<p> </p>
<p><strong>Ukrycie wiersza bądź kolumny</strong> - aby ukryć wiersz czy kolumnę należy zaznaczyć interesujący nas obiekt i po wybraniu PPM wybrać opcję <strong>Ukryj</strong>. Ukryt-y/a wiersz/kolumna nie jest uwzględnian-y/a podczas wydruku.</p>
<p> </p>
<p>Jak widać poniżej ukryta kolumna C na podglądzie wydruku nie jest uwzględniana.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image50.png" alt="image50" width="700" height="690" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Do ukrycia pojedynczej komórki bądź zakresu komórek – tak aby zawartość komórki (bądź grupy komórek) została ukryta podczas drukowania można wykorzystać opcje związane z formatowaniem niestandardowym. Użycie odpowiedniego formatowania spowoduje ukrycie zawartości komórek i tak:</p>
<ul>
<li style="padding-left: 60px;">kod: <strong>;;</strong> - wykona ukrycie wartości lecz nie tekstu,</li>
<li style="padding-left: 60px;">kod: <strong>;;;</strong> - pozwoli na ukrycie każdej zawartości.</li>
</ul>
<p> </p>
<p>Zawartość komórki będzie widoczna w pasku formuły.</p>
<p> </p>
<p>Aby ukryć zawartość komórek należy wybrać te, które mają być niewidoczne a następnie w sekcji <strong>Liczba</strong> (karta <strong>Narzędzia główne</strong>) kliknąć na strzałkę w prawym dolnym rogu. W nowo otwartym oknie <strong>Formatowanie komórek</strong> w polu <strong>Typ:</strong> wpisujemy jeden z podanych kodów.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image51.png" alt="image51" width="700" height="448" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Poniżej przykład ukrycia zawartości komórek.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image52.png" alt="image52" width="700" height="373" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Jak widać poniżej ukryte komórki nie są uwzględniane podczas drukowania.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image53.png" alt="image53" width="700" height="499" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Mało eleganckimi acz skutecznymi sposobami ukrycia zawartości komórki jest:</p>
<ul>
<li style="padding-left: 60px;">ustawienie takiego samego koloru tekstu jaki ma formatowana komórka,</li>
<li style="padding-left: 60px;">zasłonięcie zawartości komórki przez inny obiekt np. rysunek czy kształt.</li>
</ul>
<p> </p>
<p>Oprócz ukrywania zawartości komórek mamy też możliwość blokowania wydruku obiektów zawartych w arkuszu (obrazy, kształty czy wykresów).</p>
<p> </p>
<p>Aby zablokować element należy wykonać następujące kroki:</p>
<p style="margin-left: 30px; padding-left: 30px;">1. PPM klikamy na wybrany obiekt i z menu kontekstowego wybieramy opcję <strong>Formatuj … </strong>(nazwa polecenia zależna jest od formatowanego obiektu),</p>
<p style="margin-left: 30px; padding-left: 30px;">2. W oknie <strong>Formatowanie …</strong> wybieramy ikonę <strong>Rozmiar i właściwości</strong>.</p>
<p style="margin-left: 30px; padding-left: 30px;">3. Po rozwinięciu sekcji <strong>Właściwości</strong> odznaczamy checkbox <strong>Drukuj obiekt</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image54.png" alt="image54" width="700" height="498" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Tak jak wszystkie wyżej opisane opcje wydruku na pewno prędzej czy później Czytelniku okażą się przydatne tak i ta przedstawiona poniżej na pewno nie raz będzie przez Ciebie używana. Podczas realizacji wydruków bardzo często stajemy przed pytaniem - Jak odpowiednią ilość informacji zawartych w arkuszu dopasować do rozmiarów kartki, tak by się wszystko zmieściło? Odpowiedzią na pytanie jest użycie opcji związanych z skalowaniem. Skalowanie pozwala nam na ustalenie procentowego pomniejszenia bądź powiększenia drukowanych informacji. Opcje skalowania dostępne są na karcie <strong>Układ strony</strong> w sekcji <strong>Skalowanie do rozmiaru</strong></p>
<p> </p>
<p>W sekcji tej mamy dostępne następujące opcje:</p>
<ul>
<li style="padding-left: 60px;"><strong>Szerokość</strong> - zmniejszenie szerokości wydruku celem dopasowania do odpowiedniej ilości stron,</li>
<li style="padding-left: 60px;"><strong>Wysokość</strong> - zmniejszenie wysokości wydruku celem dopasowania do odpowiedniej ilości stron</li>
<li style="padding-left: 60px;"><strong>Skala</strong> - umożliwia powiększenie bądź zmniejszenie wydruku o wartość procentową jego rzeczywistego rozmiaru.</li>
</ul>
<p> </p>
<p>Poniżej przykład użycia opcji skalowania, dla skoroszytu w którym skalowanie zostało ustalone na 60 i 130 procent.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image55.png" alt="image55" width="700" height="395" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Podczas realizowania procesu wydruku dla danych zawartych w danym skoroszycie może dojść do sytuacji w której będziemy musieli ten proces wykonać z różnymi ustawieniami wydruku. Czasem na podstawie tego samego skoroszytu tworzy się kilka różnych raportów, a zmienianie ulegają ustawienia wydruku.</p>
<p> </p>
<p>Aby za każdym razem nie wykonywać zmiany ustawień opcji druku można te ustawienia zapisać w formie <strong>widoku niestandardowego</strong>. Definicja widoku sprowadza się do wykonania ustawień wydruku a następnie utworzeniu widoku.</p>
<p> </p>
<p>Widok niestandardowy może zawierać dane o:</p>
<ul>
<li style="padding-left: 60px;">zablokowane okna,</li>
<li style="padding-left: 60px;">powiększenie,</li>
<li style="padding-left: 60px;">widoki arkuszy,</li>
<li style="padding-left: 60px;">opcje wydruku zawarte na karcie <strong>Układ strony</strong> (sekcje: <strong>Skalowanie do rozmiaru</strong>, <strong>Opcje arkusza</strong> oraz <strong>Ustawienia strony</strong>),</li>
<li style="padding-left: 60px;">ukryte kolumny bądź wiersze,</li>
<li style="padding-left: 60px;">zaznaczone komórki i zdefiniowane obszary.</li>
</ul>
<p> </p>
<p>Definicja widoku odbywa się poprzez przejście na kartę <strong>Widok</strong> a następnie wybraniu ikony <strong>Widoki niestandardowe</strong>. W nowo otwartym oknie klikamy opcję <strong>Dodaj</strong> po wybraniu, której następuje definicja <strong>nazwy widoku</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_11/image56.png" alt="image56" width="700" height="469" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Aby wczytać widok ponownie wybieramy opcję <strong>Widoki niestandardowe</strong> i po wybraniu widoku klikamy na przycisk <strong>Pokaż</strong>.</p>
<p> </p>
<p>I to by było na tyle, mam nadzieję, że po zapoznaniu się z tym wpisem wydruk w Excelu nie będzie dla Ciebie Czytelniku żadnym problemem.</p></div>Excel w zadaniach. Tabele przestawne.2016-07-19T20:49:18+00:002016-07-19T20:49:18+00:00http://slow7.pl/office/item/125-excel-w-zadaniach-tabele-przestawnepikolo[email protected]<div class="K2FeedImage"><img src="http://slow7.pl/media/k2/items/cache/dc9e231f652301f80ea8e901bd9ec18a_S.jpg" alt="Excel w zadaniach. Tabele przestawne." /></div><div class="K2FeedIntroText"><p>Mechanizm tabel przestawnych w Excelu jest funkcją, która pozwala nam na zestawienie danych zawartych w arkuszach bądź w plikach zewnętrznych np. bazodanowych. Jest to świetne narzędzie służące do prezentacji danych, które w danym momencie są nam potrzebne. To idealne narzędzie dla osoby, która operuje na dużej ilości informacji i informacje te musi analizować. A największą zaletą stosowania tabel przestawnych jest interaktywność całego mechanizmu. Jak się przekonasz Czytelniku iż wbrew powszechnie panującej opinii o niezwykłym skomplikowaniu tego narzędzia analiza rozbudowanych arkuszy przy wykorzystaniu tabel przestawnych jest niezwykle intuicyjna i prosta. Wszystko sprowadza się do poznania narzędzia tak by jego używanie stało się jasne i proste.</p>
</div><div class="K2FeedFullText">
<p>Tabele przestawne zostały wprowadzone do Excela z wersją Microsoft Office 97 i z każdym nowym wydaniem pakietu do mechanizmu tego dodawane są nowe funkcje i rozszerzenia. Aby móc korzystać z tabel przestawnych należy spełnić jeden warunek – należy odpowiednio przygotować dane. Oznacza to, że informacje przechowywane w arkuszu muszą być odpowiednio przygotowane.</p>
<p> </p>
<p>Niech jako przykład posłuży przedstawiony poniżej fragment tabeli w której został zebrany księgozbiór, tabela ta została przygotowana w ten sposób by zebrane w niej dane mogły być wykorzystane przy budowie tabel przestawnych.</p>
<p> </p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image1.png" alt="image1" width="700" height="669" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Zaprezentowane dane ułożone są w wierszach a zawarte w nich informacje są opisane poprzez nagłówki kolumn. Zaprezentowane dane tworzą jednolity blok informacji nie zawierający żadnych pustych wierszy oraz podsumowań. Najlepszą analogią niech będą dane, które są zbierane w bazie danych tj. jedno pole jedna informacja a wszystko zebrane w rekordy. Poniżej jako przykład przedstawiłem arkusz, który z tabelami przestawnymi nie będzie współpracował (a tak naprawdę uda się utworzyć tabelę przestawną lecz wyniki prezentowane przez nią będą nieprawidłowe – w myśl zasady gdy na wejściu „śmiecie” to na wyjściu również „śmiecie”). Poniższy arkusz jest błędny gdyż znajdują się w nim podsumowania oraz puste wiersze.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image2.png" alt="image2" width="700" height="265" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Tak więc Czytelniku gdy będziesz chciał wykorzystać do swojej pracy tabele przestawne (a jak się przekonasz już za chwilę, że naprawdę warto) zadbaj w pierwszej kolejności o odpowiednie przygotowanie danych.</p>
<p> </p>
<p>Aby dłużej nie przedłużać przejdźmy do zadań przy rozwiązywaniu, których postaram się wytłumaczyć całe zagadnienie. Tradycyjnie już zachęcam do równoczesnego czytania i wykonywania opisanych zadań. Arkusz do ćwiczeń możesz pobrać tu: <a href="http://slow7.pl/images/stories/office/excel_10/tabeleprzestawne.xlsx">arkusz tabele przestawne</a></p>
<p> </p>
<p>Wykonajmy więc pierwsze zadanie i spróbujmy odpowiedzieć na pytanie – <strong>Ile książek znajduje się w każdej z filii biblioteki?</strong></p>
<p> </p>
<p>Zadanie te w pierwszej kolejności wykonamy w sposób tradycyjny (na tą chwilę zakładamy, że nie mamy pojęcia o istnieniu mechanizmu tabel przestawnych). Tak więc by odpowiedzieć na postawione pytanie skorzystamy z <strong>filtrowania</strong>.</p>
<p> </p>
<p>Po zaznaczeniu nagłówka tabeli (punkt 1) klikamy opcję <strong>Sortuj i filtruj</strong> a następnie z rozwijanego menu wybieramy <strong>Filtruj</strong> (punkt 2).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image3.png" alt="image3" width="700" height="397" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>W kolejnym kroku klikamy na ikonę strzałki (efekt włączenia filtrowania) i z menu zaznaczamy opcję <strong>Filia 1</strong>. Uaktywnienie opcji sprawi pokazanie tylko tych rekordów tabeli w których w kolumnie <strong>Biblioteka</strong> występuje wartość <strong>Filia 1</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image4.png" alt="image4" width="700" height="489" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Ostatnią czynnością jaką musimy wykonać to zliczenie liczby wierszy. Liczba wierszy będzie odpowiedzią na pytanie o ilość książek znajdujących się w <strong>Filia 1</strong>. Liczbę książek poznamy po zaznaczeniu wszystkich wierszy. Jak widać poniżej liczba dostępnych książek w <strong>Filia 1</strong> to <strong>182</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image5.png" alt="image5" width="700" height="406" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Opisane czynności musimy oczywiście powtórzyć dla pozostałych pięciu filii.</p>
<p> </p>
<p>Czytelnicy co bardziej obeznani z Excelem stwierdzą, że aby poznać liczbę książek w każdej z filii można skorzystać z innej funkcji a mianowicie <strong>Sumy częściowe</strong>. Tak więc spróbujmy wykonać postawione przed nami zadanie ponownie, lecz tym razem z wykorzystaniem sum częściowych.</p>
<p> </p>
<p>Aby móc skorzystać z <strong>Sum częściowych</strong> należy w pierwszej kolejności przygotować tabele. Chcemy poznać liczbę książek w każdej z filii, tak więc wykonujemy sortowanie według kolumny <strong>Biblioteka</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image6.png" alt="image6" width="700" height="360" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Po wykonaniu sortowania cały księgozbiór mamy ułożony według umieszczenia książek w danej filii.</p>
<p> </p>
<p>W kolejnym kroku przechodzimy na zakładkę <strong>Dane</strong> i wybieramy opcję <strong>Suma częściowa </strong>(punkt 1). W nowo otwartym oknie w sekcji <strong>Dla każdej zmiany w</strong>: wybieramy kolumnę <strong>Biblioteka</strong> (punkt 2) oraz w sekcji <strong>Dodaj sumę częściową do:</strong> również zaznaczmy kolumnę <strong>Biblioteka</strong> (punkt 3). Użyta funkcja to <strong>Licznik</strong> (chcemy policzyć ilość wystąpienia każdej zmiany). Klikamy <strong>OK</strong></p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image7.png" alt="image7" width="700" height="362" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Efektem zastosowanych opcji będzie tabela w której zostanie wyliczona zmiana każdej wartości znajdującej się w kolumnie <strong>Biblioteka</strong>. Dla nas oznacza to wyliczenie wystąpienia słów Filia 1, Filia 2 itd.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image8.png" alt="image8" width="700" height="156" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Zadnie zostało wykonane, w przypadku zastosowania <strong>Sumy częściowej</strong> poznajemy liczbę książek we wszystkich sześciu filiach. Więcej na temat tej funkcji programu Excel znajdziesz w wpisie: <a href="http://slow7.pl/office/item/99-excel-w-zadaniach-funkcja-agreguj-oraz-sumy-czesciowe"><span style="text-decoration: none;">Excel w zadaniach. Funkcja AGREGUJ oraz SUMY.CZĘŚCIOWE </span></a></p>
<p> </p>
<p>Do tej pory zakładaliśmy iż <strong>tabel przestawnych</strong> nie znamy, pora to zmienić i sprawdźmy jak to samo zadanie można wykonać przy wykorzystaniu tego mechanizmu.</p>
<p> </p>
<p>Aby wstawić tabelę przestawną należy kliknąć w obszarze tabeli w której znajdują się dane a następnie z karty <strong>Wstawianie</strong> wybrać opcję <strong>Tabela przestawna</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image9.png" alt="image9" width="700" height="510" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Po uaktywnieniu opcji w oknie <strong>Tworzenie tabeli przestawnej</strong> należy sprawdzić zakres wybranych danych (Excel sam ten zakres zdefiniuje na podstawie analizy danych zawartych w tabeli – punkt 1) oraz określić umiejscowienie tworzonej tabeli przestawnej (do wyboru opcja <strong>Nowy arkusz</strong> – tabela zostanie utworzona w nowym, odrębnym arkuszu bądź <strong>Istniejący arkusz</strong> – tabela przestawna zostanie utworzona w arkuszu wskazanym w polu <strong>Lokalizacja</strong>) – punkt 2. Odwołanie do danych znajdujących się w osobnym pliku np. pliku bazy danych programu Access możemy zrealizować po wybraniu opcji: <strong>Użyj zewnętrznego źródła danych</strong>. Po zdefiniowaniu wszystkich opcji wybieramy <strong>OK</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image10.png" alt="image10" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Tabela przestawna (a raczej jej zarys) został utworzony. Kolejnym krokiem jest zdefiniowanie danych jakie w nowo tworzonej tabeli mają zostać umieszczone. Definicję danych przeprowadzamy za pomocą czterech pól tabeli przestawnej:</p>
<p style="margin-left: 30px;"><strong>pole</strong> <strong>Filtry</strong> – pole odpowiedzialne za filtrowanie danych ukazywanych w tabeli przestawnej,</p>
<p style="margin-left: 30px;"><strong>pole</strong> <strong>Kolumny</strong> - wszystkie dane reprezentowane przez nagłówek tabeli zostaną umieszczone w kolejnych kolumnach tabeli przestawnej,</p>
<p style="margin-left: 30px;"><strong>pole</strong> <strong>Wiersze</strong> – wszystkie dane reprezentowane przez nagłówek tabeli zostaną umieszczone w kolejnych wierszach tabeli przestawnej,</p>
<p style="margin-left: 30px;"><strong>pole</strong> <strong>Wartości</strong> – komórki tabeli przestawnej, które zawierają dane liczbowe.</p>
<p>Układ pól możemy zmienić po kliknięciu na ikonę <strong>Narzędzia</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image11.png" alt="image11" width="700" height="468" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Powracamy do postawionego pytania o ilość książek z każdej filii. Aby uzyskać odpowiedź należy pola nagłówka tabeli przeciągnąć do odpowiednich pól tabeli przestawnej. W naszym przypadku nagłówek <strong>Biblioteka</strong> należy przeciągnąć do pola <strong>Wiersze</strong> (wszystkie wartości kolumny <strong>Biblioteka</strong> zostaną umieszczone w wierszach tabeli) oraz również nagłówek <strong>Biblioteka</strong> przenieść do pola <strong>Wartości</strong> (zliczenie wartości zmiennych zawartych w kolumnie <strong>Biblioteka</strong>).</p>
<p> </p>
<p>Tabela przestawna została utworzona a dla nas oznacza to, że poznaliśmy odpowiedź na wcześniej postawione pytanie.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image12.png" alt="image12" width="700" height="468" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Forma reprezentacji danych prezentowanych przez tabelę zależy od Nas, gdyż oczywiście można utworzyć tabelę przestawną w której filie biblioteki zamiast znajdować się w wierszach będą umieszczone w kolumnach. W tym celu należy nagłówek <strong>Biblioteka</strong> umieścić w polu <strong>Kolumny</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image13.png" alt="image13" width="700" height="468" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Excel został wyposażony w jeszcze jeden mechanizm, który pozwala nam operować na danych zebranych w tabeli, efektem działania jest zbudowanie wykresu a funkcja ta nosi nazwę <strong>wykresów przestawnych</strong>. Działanie funkcji jest bardzo podobne do tworzenia tabel przestawnych.</p>
<p> </p>
<p>Aby utworzyć wykres na karcie <strong>Wstawianie</strong> wybieramy <strong>Wykres przestawny</strong>. Do dyspozycji mamy ten sam zestaw opcji co w przypadku tworzenia tabeli przestawnej.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image14.png" alt="image14" width="700" height="500" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Po wybraniu <strong>OK</strong>, przeniesieniu nagłówka <strong>Tytuł</strong> do pola <strong>Wartości</strong> oraz nagłówka <strong>Biblioteka</strong> do pola <strong>Oś (Kategorie)</strong> uzyskamy wykres przedstawiający ilość tytułów znajdujących się w każdej z filii.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image15.png" alt="image15" width="700" height="468" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Aby jeszcze bardziej nam ułatwić operowanie na danych zawartych w tabeli producent od wersji MSOffice 2013 udostępnił dwie opcje: <strong>Polecane tabele przestawne</strong> oraz <strong>Polecane wykresy</strong>. Uaktywnienie opcji spowoduje po analizie danych zawartych w tabeli zaproponowanie nam możliwych do utworzenia tabel bądź wykresów. Tak więc po przejrzeniu propozycji może się okazać iż znajdziemy w nich to co akurat jest nam potrzebne.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image16.png" alt="image16" width="700" height="507" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Ilość możliwych do utworzenia wariantów tabel przestawnych na bazie danych na których aktualnie operujemy jest ogromna i nie sposób przedstawić ich wszystkich tak więc wybrałem kilka przykładów by dobitniej pokazać przewagę tego rozwiązania nad innymi opisanymi wyżej (filtrowanie, sortowanie oraz sumy częściowe).</p>
<p> </p>
<p>Spróbujmy znaleźć odpowiedź na następujące pytania:</p>
<p style="margin-left: 30px;">1 – Ilość książek w każdej z filii biblioteki z podziałem na rok wydania.</p>
<p style="margin-left: 30px;">2 – Ilość książek w obrębie danej kategorii.</p>
<p style="margin-left: 30px;">3 – Średnią wartość książek w oddziale.</p>
<p style="margin-left: 30px;">4 – Procentową ilość posiadanych książek.</p>
<p style="margin-left: 30px;">5 – Na podstawie wyników sprzedaży wyliczyć premię.</p>
<p> </p>
<p><strong>Zadanie 1</strong></p>
<p> </p>
<p>Należy umieścić nagłówek <strong>Biblioteka</strong> w polu <strong>Wiersze</strong> (wszystkie wartości kolumny <strong>Biblioteka</strong> zostaną umieszczone w wierszach tabeli) oraz nagłówek <strong>Rok wydania</strong> również w polu <strong>Wiersze</strong> (wszystkie wartości kolumny <strong>Rok wydania</strong> zostaną umieszczone w wierszach tabeli) oraz nagłówek <strong>Tytuł</strong> w polu <strong>Wartości</strong> (spowoduje zliczenie wszystkich wartości kolumny <strong>Tytuł</strong> ze względu na zmienne zawarte w polu <strong>Biblioteka</strong> oraz <strong>Rok wydania</strong>).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image17.png" alt="image17" width="700" height="469" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Mając tak przygotowane dane nic nie stoi na przeszkodzie by je zilustrować graficznie w postaci wykresu. Wystarczy tylko zaznaczyć dowolną komórkę w obrębie utworzonej tabeli przestawnej i z karty <strong>Wstawiane</strong> wybrać ikonę <strong>Wykres przestawny</strong>. Do utworzonej tabeli przestawnej zostanie dodany wykres.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image18.png" alt="image18" width="700" height="500" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Inny wariant tego samego zadania możemy uzyskać np. poprzez przeniesienie nagłówka tabeli <strong>Biblioteka</strong> do pola tabeli przestawnej <strong>Kolumny</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image19.png" alt="image19" width="700" height="468" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Zadanie 2</strong></p>
<p> </p>
<p>Do wykonania tego zadania została użyta opcja jednoczesnego wstawienia tabeli przestawnej i wykresu przestawnego (opcja dostępna na karcie <strong>Wstawianie</strong>).</p>
<p> </p>
<p>Aby znaleźć odpowiedź o ilość książek w danej kategorii pole nagłówka <strong>Kategoria</strong> zostało przeniesione do pola tabeli <strong>Wiersze</strong> a nagłówek <strong>Tytuł</strong> do pola <strong>Wartości</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image20.png" alt="image20" width="700" height="423" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Dodatkowo nagłówek <strong>Biblioteka</strong> został umieszczony w polu <strong>Filtry</strong>. Umieszczenie tego nagłówka w polu <strong>Filtry</strong> da nam możliwość filtrowania ilości książek w obrębie danej filii. Poniżej użycie opcji filtra tak by ukazać liczbę książek należących do danej kategorii w obrębie oddziału <strong>Filia 1</strong> (wykres aktualizuje się automatycznie).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image21.png" alt="image21" width="700" height="423" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Zadanie 3</strong></p>
<p> </p>
<p>Aby wyliczyć średnią wartość książek w każdym z oddziałów należy nagłówek <strong>Biblioteka</strong> przenieść do pola <strong>Wiersze</strong> a następnie nagłówek <strong>Wartość</strong> do pola <strong>Wartości</strong>. Po tak przeprowadzonej operacji uzyskamy informację o wartości wszystkich książek znajdujących się w danym oddziale. Dodatkowo kolumna tabeli przestawnej została sformatowana tak by wartości były pokazane w formie waluty.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image22.png" alt="image22" width="700" height="468" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Czy taką informację chcieliśmy uzyskać? Wyliczyliśmy wartość książek w oddziale a przypominam, że zadanie zakładało obliczenie średniej wartości książek. Domyślnie ustawienie powoduje, że pole <strong>Wartości</strong> sumuje bądź zlicza elementy umieszczonego w niej nagłówka aby zaś wyliczyć średnią musimy opcję tą ustawić ręcznie.</p>
<p> </p>
<p>Aby zmienić domyślne działanie pola <strong>Wartości</strong> z sumowania na wyliczenie średniej należy kliknąć na strzałkę znajdującą się w polu nagłówka <strong>Suma z Wartość</strong> i z rozwijanego menu wybrać opcję <strong>Ustawienia pola wartości </strong>(punkt 1). W kolejnym kroku w nowo otwartym oknie w sekcji <strong>Podsumuj pole wartości</strong> <strong>według</strong> wybrać pozycję <strong>Średnia </strong>(punkt 2).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image23.png" alt="image23" width="700" height="468" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Wprowadzone zmiany zatwierdzamy klawiszem <strong>OK</strong>. Domyślna operacja sumowania zostaje zastąpiona wyliczeniem średniej.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image24.png" alt="image24" width="700" height="468" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Zadanie 4</strong></p>
<p> </p>
<p>W pierwszym kroku (punkt 1) umieszczamy dwa razy nagłówek <strong>Tytuł</strong> w polu <strong>Wartości</strong> a następnie nagłówek <strong>Biblioteka</strong> w polu <strong>Wiersze</strong>. Po wykonaniu czynności uzyskamy tabele w której zostanie obliczona ilość książek w każdym z oddziałów. Następnie zmieniamy sposób podsumowania tak by uzyskać wartość procentową posiadanych książek. Analogicznie jak w zadaniu 3 wybieramy opcję <strong>Ustawienia pola wartości</strong> lecz tym razem będziemy modyfikować opcje znajdujące się na karcie <strong>Pokazywanie wartości jako</strong>. Po uaktywnieniu karty w sekcji <strong>Pokaż wartości jako</strong> z rozwijanego menu wybieramy <strong>% sumy końcowej</strong> (punkt 2).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image25.png" alt="image25" width="700" height="468" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Po wprowadzeniu zmian uzyskamy wynik procentowy obrazujący ilość książek w oddziale. Dodatkowo wynik ten został sformatowany z wykorzystaniem <strong>Formatowania warunkowego</strong> z wykorzystaniem <strong>pasków danych</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image26.png" alt="image26" width="700" height="468" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Jedną z przydatnych opcji często wykorzystywaną w pracy z tabelami przestawnymi jest możliwość <strong>grupowania</strong> jej elementów. Grupowanie możemy realizować na dwa sposoby możemy wykonać je <strong>ręcznie</strong> oraz <strong>automatycznie</strong>. Grupowane mogą być elementy znajdujące się w polach tabeli przestawnej <strong>Wiersze</strong> oraz <strong>Kolumny</strong>.</p>
<p> </p>
<p>Rozwińmy nasze zadanie i wykonajmy grupowanie, które będzie wykonane według założenia iż Filia 1 oraz Filia 3 biblioteki głównej leżą w jednej dzielnicy miasta zaś Filia 2, 4, 5 oraz 6 są umiejscowione w innej.</p>
<p> </p>
<p>Aby utworzyć pierwszą grupę (nazwijmy ją Dzielnica 1) przy pomocy klawisza <strong>Ctrl</strong> zaznaczamy pozycję <strong>Filia 1</strong> oraz <strong>Filia 3</strong> i po kliknięciu PPM z menu kontekstowego wybieramy <strong>Grupuj</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image27.png" alt="image27" width="700" height="468" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Analogicznie postępujemy z resztą pozycji.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image28.png" alt="image28" width="700" height="468" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Dodatkowo domyślne nazwy grup zostały zmienione na <strong>Dzielnica 1 </strong>oraz <strong>Dzielnica 2</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image29.png" alt="image29" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Aby powrócić do ustawień początkowych należy kliknąć na nawę grupy i z menu wybrać opcję <strong>Rozgrupuj</strong>.</p>
<p> </p>
<p>Wspomniałem również o grupowaniu <strong>automatycznym</strong>, grupowanie te dostępne jest tylko dla pól zawierających liczby, daty bądź godziny. Dlatego zasadę działania tego typu grupowania przedstawię na osobnym przykładzie. Załóżmy, że dysponujemy tabelą zawierająca daty wraz z wartością wpływu na konto przelewów w tym dniu (przykład znajdziesz po pobraniu pliku na arkuszu data) i chcemy uzyskać informację o miesięcznej i kwartalnej wysokości wpływów.</p>
<p> </p>
<p>W pierwszym kroku tworzymy tabelę przestawną w której w polu <strong>Wiersze</strong> zostaje umiejscowiony nagłówek <strong>Data</strong> natomiast w polu <strong>Wartości</strong> nagłówek <strong>Wpływy</strong>. Aby wyliczyć żądane wartości wybieramy dowolną komórkę z kolumny zawierające daty i po kliknięciu PPM wybieramy <strong>Grupuj</strong>. W nowo otwartym oknie <strong>Grupowanie</strong> w sekcji <strong>Według</strong> określamy zakres grupowania (w naszym przypadku należy zaznaczyć Dni, Miesiące oraz Kwartały). Dodatkowo można zdefiniować <strong>okres grupowania</strong>, który określamy poprzez zdefiniowanie <strong>daty początkowej</strong> i <strong>końcowej</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image30.png" alt="image30" width="700" height="468" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Po wykonaniu wszystkich czynności daty zostaną zgrupowane według dni, te zaś zostaną połączone w miesiące a te w kwartały.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image31.png" alt="image31" width="700" height="480" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Aby ułatwić sobie zadanie przeglądania zgromadzonych danych możemy wykorzystać nową opcję filtrowania jaką jest <strong>oś czasu</strong>. Opcję tą znajdziemy na karcie <strong>Analiza</strong>. Po wybraniu ikony <strong>Wstaw oś czasu</strong> będziemy musieli określić do której kolumny tabeli przestawnej będzie stosowane filtrowanie. Dużego wyboru nie mamy gdyż opcja ta współpracuje jedynie z danymi typu czas a jedyną kolumną zawierającą tego typu dane jest kolumna <strong>Data</strong>. Tak więc w nowo otwartym oknie odhaczamy opcję <strong>Data</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image32.png" alt="image32" width="700" height="534" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Po zastosowaniu opcji ukarze się nam nowy obiekt – <strong>oś czasu</strong> za pomocą osi będziemy mogli dokonywać filtrowania danych zawartych w tabeli przestawnej. Poniżej przykład w którym zostały zaznaczone na osi dwa miesiące kwiecień i maj, jak można zauważyć tabela po prawej wyświetla tylko dane z tego okresu.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image33.png" alt="image33" width="700" height="820" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Zadanie 5</strong></p>
<p> </p>
<p>Podczas pracy z tabelami przestawnymi bardzo często dochodzi do sytuacji w której musimy dokonać pewnych obliczeń. Obliczenia te bazują na danych już umieszczony w tabeli przestawnej. Aby zaprezentować sposób wykonania takowych obliczeń musimy posłużyć się nowym arkuszem - dane potrzebne do tego ćwiczenia znajdziesz w arkuszu Premia. W arkuszu zostały zebrane miesięczne obroty czterech przedstawicieli handlowych. Umowa z pracownikami gwarantuje wypłacenie premii kwartalnej, która zależy od osiągniętej wartości obrotów uzyskanych przez każdego z przedstawicieli. Premię należy wyliczyć według schematu poniżej:</p>
<p style="margin-left: 30px;"><strong>Kwartał 1</strong> - 5% wartości sprzedaży osiągniętej w styczniu, lutym i marcu,</p>
<p style="margin-left: 30px;"><strong>Kwartał 2</strong> - 6% wartości sprzedaży osiągniętej w kwietniu, maju i czerwcu,</p>
<p style="margin-left: 30px;"><strong>Kwartał 3 </strong>- 5% wartości sprzedaży osiągniętej w lipcu, sierpniu i wrześniu,</p>
<p style="margin-left: 30px;"><strong>Kwartał 4</strong> - 6% wartości sprzedaży osiągniętej w październiku, listopadzie i grudniu.</p>
<p> </p>
<p>Oprócz premii kwartalnych obliczymy również całość premii: <strong>Suma</strong> – roczna wartość premii.</p>
<p> </p>
<p>Podczas pracy z tabelami przestawnymi obowiązują pewne reguły i zasady, które uniemożliwiają wykonanie pewnych czynności jakie by były dozwolone gdybyśmy pracowali na standardowym arkuszu. Ograniczenia te sprowadzają się do niemożności wstawiania nowych kolumn, wierszy oraz do wykorzystania formuł, które będą wykonywać obliczenia na podstawie danych, które są zawarte w tabeli przestawnej. Lecz zdarzają się sytuacje w których jednak takowe obliczenia musimy przeprowadzić. W takich sytuacjach możemy skorzystać z <strong>pól obliczeniowych</strong> bądź <strong>elementów obliczeniowych</strong>. Tak więc element obliczeniowy jest nowym wierszem, który będzie odwoływał się do danych zawartych w tabeli przestawnej a także będzie wykonywał zdefiniowaną formułę.</p>
<p> </p>
<p>Arkusz do tego zadania został przedstawiony poniżej a nasze obliczenia rozpoczynamy od kliknięcia wiersza tabeli i przejściu na zakładkę <strong>Analiza</strong>. W następnym kroku należy rozwinąć menu zawarte pod ikoną <strong>Pola, elementy i zestawy</strong> i wybrać opcję <strong>Element obliczeniowy</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image34.png" alt="image34" width="700" height="459" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>W nowo otwartym oknie definiujemy nowo tworzony element obliczeniowy. W pierwszym kroku należy podać jego <strong>nazwę</strong> a następnie określić realizowaną <strong>formułę</strong>. Naszym zadaniem jest wyliczenie premii za pierwszy kwartał więc element został nazwany <strong>Kwartał 1</strong>. Formuły w przypadku tabel przestawnych są definiowane inaczej niż jak to ma się zazwyczaj i aby obliczyć premię przysługującą za pierwszy kwartał wpisujemy <strong>=5%*(</strong> a następnie w sekcji <strong>Pola</strong> odszukujemy pole <strong>Miesiąc</strong> po zaznaczeniu którego w sekcji <strong>Elementy</strong> pojawią się nazwy miesiący. Premia ma stanowić 5% wartości sprzedaży z trzech pierwszych miesięcy roku więc należy miesiące te zsumować. Klikamy kolejno nazwy miesięcy oddzielając je oczywiście znakiem <strong>+</strong>. Po wprowadzeniu formuły nie zapominamy o zamknięciu nawiasu. Cała formuła przyjmie więc postać: <strong>=5%*(styczeń+luty+marzec) </strong>Po zdefiniowaniu formuły aby ją zapisać klikamy przycisk <strong>Dodaj</strong> po czym możemy przejść do budowania kolejnego elementu obliczeniowego. Całość wprowadzonych ustawień zatwierdzamy klawiszem <strong>OK</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image35.png" alt="image35" width="700" height="430" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Pozostałe formuły budujemy analogicznie jak tą pierwszą zmieniając oczywiście wartość procentową premii i miesiące. Element <strong>Suma</strong> wyliczamy z wykorzystaniem wcześniej zdefiniowanych <strong>pól kwartalnych</strong>. Po wprowadzeniu wszystkich formuł powinniśmy uzyskać 5 dodatkowych wierszy tabeli przestawnej w których będą wyliczone premie pracowników.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image36.png" alt="image36" width="700" height="430" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Wspomniałem, że oprócz elementów obliczeniowych można również stosować <strong>pola obliczeniowe</strong>. Pole obliczeniowe jest sposobem na dodanie kolejnych informacji, które zostały wyliczone na podstawie danych zawartych w innych polach (podobnie jak to się ma z elementami tylko z tą różnicą, że w sekcji pól tabel przestawnych nowo zdefiniowane pole będzie miało swoje odzwierciedlenie, element obliczeniowy do tabeli dodaje tylko nowy wiersz).</p>
<p> </p>
<p>Aby wstawić nowe pole obliczeniowe należy kliknąć na dowolna komórkę tabeli przestawnej i z zakładki <strong>Analiza</strong> wybrać opcję <strong>Pola, elementy i zestawy </strong>a następnie z menu element <strong>Pole obliczeniowe</strong>.</p>
<p> </p>
<p>Spróbujmy więc do naszej tabeli przestawnej dodać nowe pole obliczeniowe. Zadaniem tego pola będzie przedstawienie wartości wyliczonej w złotówkach a umieszczonej w kolumnie <strong>Suma końcowa</strong> jako wartość Euro.</p>
<p> </p>
<p>Po wybraniu opcji wstawienia nowego pola, podobnie jak to miało miejsce w przypadku elementu obliczeniowego należy zdefiniować nazwę pola oraz formułę. Nazwa pola przyjęła wartość <strong>Euro</strong> natomiast formuła została zdefiniowana jako: <strong>=Obroty/<kurs_waluty></strong> (taka formuła gdyż wartość <strong>Sumy końcowej</strong> jest wyliczana na podstawie nagłówka <strong>Obroty</strong>).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image37.png" alt="image37" width="700" height="459" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Po zatwierdzeniu klawiszem <strong>OK</strong> nowe pola obliczeniowe zostaną umieszczone w tabeli.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image38.png" alt="image38" width="700" height="421" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Aby element obliczeniowy bądź pole obliczeniowe usunąć a także zmodyfikować wybieramy interesującą nas pozycję z menu <strong>Pola, elementy i zestawy </strong>a następnie po wybraniu nazwy elementu w zależności od zamiaru klikamy przycisk <strong>Modyfikuj</strong> bądź <strong>Usuń</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image39.png" alt="image39" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Dodatkowo aby ułatwić sobie reprezentację danych możemy zdecydować się na zastosowanie tzw. <strong>fragmentatora</strong> (ang. slicer). Fragmentator jest interaktywnym polem, które umożliwia zastosowanie filtrowania. Przypuśćmy, że musimy z zdefiniowanej tabeli przestawnej uzyskać informację o obrotach przedstawiciela Andrzej uzyskanych w miesiącu marzec. Oczywiście dane te możemy w prosty sposób odszukać w tabeli lecz zdarza się, że przy dużym skomplikowaniu samej tabeli i dużej ilości zebranych informacji możemy popełnić błąd i potrzebne nam wartości odczytamy z sąsiedniej komórki. Popełnienia tego błędu unikniemy przy wykorzystaniu fragmentatora.</p>
<p> </p>
<p>Wstawienie fragmentatora sprowadza się do odszukania na karcie <strong>Analiza</strong> ikony <strong>Wstaw fragmentator</strong> i zdefiniowania pól co do których będzie przeprowadzane filtrowanie. W naszym przypadku fragmentator będzie miał zastosowanie do pól <strong>Konsultant</strong> oraz <strong>Miesiąc</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image40.png" alt="image40" width="700" height="357" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Po wybraniu <strong>OK</strong> do arkusza zostaną dodane dwa fragmentatory. Odszukanie interesującej nas wartości obrotów przedstawiciela Andrzej z miesiąca marca sprowadza się tylko do zaznaczenia odpowiednich pól.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image41.png" alt="image41" width="700" height="307" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Dane zebrane w tabeli przestawnej można użyć do obliczeń. Oznacza to, że możemy je wykorzystać by uzyskać potrzebne nam informacje. Pozostajemy jeszcze przez chwilę przy naszym arkuszu i spróbujmy wyliczyć wartość obrotu. Po dodaniu nowych wierszy w tabeli przestawnej (tych wyliczających wartość premii) końcowa suma nie odpowiada już wartości obrotu uzyskanego przez każdego z przedstawicieli. Aby uzyskać wartość obrotu od wartości <strong>Suma końcowa</strong> należy odjąć wartość pola <strong>Premia</strong>, tak jak to zostało przedstawione na zrzucie poniżej.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image42.png" alt="image42" width="700" height="157" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Z prawej strony została utworzona nowa tabela, która odzwierciedla wartość uzyskanego obrotu. Wartość ta poprzez zbudowanie formuły oznaczonej w ramce odzwierciedla osiągnięty obrót. Jak widać formuła ta bazuje na funkcji WEŹDANETABELI. Zastosowana funkcja nie należy do prostych lecz na nasze szczęście nie musimy jej wprowadzać ręcznie - wystarczy, że budując formułę skorzystamy z myszki by za jej pomocą zaznaczać interesujące nas komórki. Aby obliczyć obrót musimy wykonać operację odejmowania czyli całe obliczenie sprowadza się do wybrania znaku <strong>=</strong> i kliknięciu komórki <strong>B10</strong>, wprowadzeniu znaku <strong>minus</strong> i kliknięciu komórki <strong>B9</strong>. Cała formuła zostanie wprowadzona automatycznie.</p>
<p> </p>
<p>Pewnie Czytelniku zadajesz sobie pytanie - Dlaczego by nie wprowadzić formuły: = B10-B9? Taką formułę można wprowadzić i obliczenie będzie prawidłowe ale po rozwinięciu zgrupowanych pól pojawią się nowe wiersze i zawarte w nich dane nie będą odpowiadać wartością prawidłowym a co za tym idzie wartość uzyskanego obrotu będzie nieprawidłowa. Wykorzystanie myszki i wskazania interesujących nas komórek zapewni nam poprawność wyniku nawet gdy nasza tabela przestawna będzie ulegać zmianie. Poniżej zaprezentowano rozwinięcie komórek <strong>Kwartał 1</strong> oraz <strong>Kwartał 3</strong>, jak widać wynik uzyskanego obrotu nie uległ zmianie.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image43.png" alt="image43" width="700" height="234" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>I w tym miejscu Chciałbym rozważania na temat tabel przestawnych zakończyć. Myślę, że zaprezentowane zadania wraz z omówieniem zachęcą Cię do korzystania z tego mechanizmu przy tworzeniu swoich własnych arkuszy.</p></div><div class="K2FeedImage"><img src="http://slow7.pl/media/k2/items/cache/dc9e231f652301f80ea8e901bd9ec18a_S.jpg" alt="Excel w zadaniach. Tabele przestawne." /></div><div class="K2FeedIntroText"><p>Mechanizm tabel przestawnych w Excelu jest funkcją, która pozwala nam na zestawienie danych zawartych w arkuszach bądź w plikach zewnętrznych np. bazodanowych. Jest to świetne narzędzie służące do prezentacji danych, które w danym momencie są nam potrzebne. To idealne narzędzie dla osoby, która operuje na dużej ilości informacji i informacje te musi analizować. A największą zaletą stosowania tabel przestawnych jest interaktywność całego mechanizmu. Jak się przekonasz Czytelniku iż wbrew powszechnie panującej opinii o niezwykłym skomplikowaniu tego narzędzia analiza rozbudowanych arkuszy przy wykorzystaniu tabel przestawnych jest niezwykle intuicyjna i prosta. Wszystko sprowadza się do poznania narzędzia tak by jego używanie stało się jasne i proste.</p>
</div><div class="K2FeedFullText">
<p>Tabele przestawne zostały wprowadzone do Excela z wersją Microsoft Office 97 i z każdym nowym wydaniem pakietu do mechanizmu tego dodawane są nowe funkcje i rozszerzenia. Aby móc korzystać z tabel przestawnych należy spełnić jeden warunek – należy odpowiednio przygotować dane. Oznacza to, że informacje przechowywane w arkuszu muszą być odpowiednio przygotowane.</p>
<p> </p>
<p>Niech jako przykład posłuży przedstawiony poniżej fragment tabeli w której został zebrany księgozbiór, tabela ta została przygotowana w ten sposób by zebrane w niej dane mogły być wykorzystane przy budowie tabel przestawnych.</p>
<p> </p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image1.png" alt="image1" width="700" height="669" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Zaprezentowane dane ułożone są w wierszach a zawarte w nich informacje są opisane poprzez nagłówki kolumn. Zaprezentowane dane tworzą jednolity blok informacji nie zawierający żadnych pustych wierszy oraz podsumowań. Najlepszą analogią niech będą dane, które są zbierane w bazie danych tj. jedno pole jedna informacja a wszystko zebrane w rekordy. Poniżej jako przykład przedstawiłem arkusz, który z tabelami przestawnymi nie będzie współpracował (a tak naprawdę uda się utworzyć tabelę przestawną lecz wyniki prezentowane przez nią będą nieprawidłowe – w myśl zasady gdy na wejściu „śmiecie” to na wyjściu również „śmiecie”). Poniższy arkusz jest błędny gdyż znajdują się w nim podsumowania oraz puste wiersze.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image2.png" alt="image2" width="700" height="265" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Tak więc Czytelniku gdy będziesz chciał wykorzystać do swojej pracy tabele przestawne (a jak się przekonasz już za chwilę, że naprawdę warto) zadbaj w pierwszej kolejności o odpowiednie przygotowanie danych.</p>
<p> </p>
<p>Aby dłużej nie przedłużać przejdźmy do zadań przy rozwiązywaniu, których postaram się wytłumaczyć całe zagadnienie. Tradycyjnie już zachęcam do równoczesnego czytania i wykonywania opisanych zadań. Arkusz do ćwiczeń możesz pobrać tu: <a href="http://slow7.pl/images/stories/office/excel_10/tabeleprzestawne.xlsx">arkusz tabele przestawne</a></p>
<p> </p>
<p>Wykonajmy więc pierwsze zadanie i spróbujmy odpowiedzieć na pytanie – <strong>Ile książek znajduje się w każdej z filii biblioteki?</strong></p>
<p> </p>
<p>Zadanie te w pierwszej kolejności wykonamy w sposób tradycyjny (na tą chwilę zakładamy, że nie mamy pojęcia o istnieniu mechanizmu tabel przestawnych). Tak więc by odpowiedzieć na postawione pytanie skorzystamy z <strong>filtrowania</strong>.</p>
<p> </p>
<p>Po zaznaczeniu nagłówka tabeli (punkt 1) klikamy opcję <strong>Sortuj i filtruj</strong> a następnie z rozwijanego menu wybieramy <strong>Filtruj</strong> (punkt 2).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image3.png" alt="image3" width="700" height="397" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>W kolejnym kroku klikamy na ikonę strzałki (efekt włączenia filtrowania) i z menu zaznaczamy opcję <strong>Filia 1</strong>. Uaktywnienie opcji sprawi pokazanie tylko tych rekordów tabeli w których w kolumnie <strong>Biblioteka</strong> występuje wartość <strong>Filia 1</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image4.png" alt="image4" width="700" height="489" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Ostatnią czynnością jaką musimy wykonać to zliczenie liczby wierszy. Liczba wierszy będzie odpowiedzią na pytanie o ilość książek znajdujących się w <strong>Filia 1</strong>. Liczbę książek poznamy po zaznaczeniu wszystkich wierszy. Jak widać poniżej liczba dostępnych książek w <strong>Filia 1</strong> to <strong>182</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image5.png" alt="image5" width="700" height="406" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Opisane czynności musimy oczywiście powtórzyć dla pozostałych pięciu filii.</p>
<p> </p>
<p>Czytelnicy co bardziej obeznani z Excelem stwierdzą, że aby poznać liczbę książek w każdej z filii można skorzystać z innej funkcji a mianowicie <strong>Sumy częściowe</strong>. Tak więc spróbujmy wykonać postawione przed nami zadanie ponownie, lecz tym razem z wykorzystaniem sum częściowych.</p>
<p> </p>
<p>Aby móc skorzystać z <strong>Sum częściowych</strong> należy w pierwszej kolejności przygotować tabele. Chcemy poznać liczbę książek w każdej z filii, tak więc wykonujemy sortowanie według kolumny <strong>Biblioteka</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image6.png" alt="image6" width="700" height="360" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Po wykonaniu sortowania cały księgozbiór mamy ułożony według umieszczenia książek w danej filii.</p>
<p> </p>
<p>W kolejnym kroku przechodzimy na zakładkę <strong>Dane</strong> i wybieramy opcję <strong>Suma częściowa </strong>(punkt 1). W nowo otwartym oknie w sekcji <strong>Dla każdej zmiany w</strong>: wybieramy kolumnę <strong>Biblioteka</strong> (punkt 2) oraz w sekcji <strong>Dodaj sumę częściową do:</strong> również zaznaczmy kolumnę <strong>Biblioteka</strong> (punkt 3). Użyta funkcja to <strong>Licznik</strong> (chcemy policzyć ilość wystąpienia każdej zmiany). Klikamy <strong>OK</strong></p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image7.png" alt="image7" width="700" height="362" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Efektem zastosowanych opcji będzie tabela w której zostanie wyliczona zmiana każdej wartości znajdującej się w kolumnie <strong>Biblioteka</strong>. Dla nas oznacza to wyliczenie wystąpienia słów Filia 1, Filia 2 itd.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image8.png" alt="image8" width="700" height="156" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Zadnie zostało wykonane, w przypadku zastosowania <strong>Sumy częściowej</strong> poznajemy liczbę książek we wszystkich sześciu filiach. Więcej na temat tej funkcji programu Excel znajdziesz w wpisie: <a href="http://slow7.pl/office/item/99-excel-w-zadaniach-funkcja-agreguj-oraz-sumy-czesciowe"><span style="text-decoration: none;">Excel w zadaniach. Funkcja AGREGUJ oraz SUMY.CZĘŚCIOWE </span></a></p>
<p> </p>
<p>Do tej pory zakładaliśmy iż <strong>tabel przestawnych</strong> nie znamy, pora to zmienić i sprawdźmy jak to samo zadanie można wykonać przy wykorzystaniu tego mechanizmu.</p>
<p> </p>
<p>Aby wstawić tabelę przestawną należy kliknąć w obszarze tabeli w której znajdują się dane a następnie z karty <strong>Wstawianie</strong> wybrać opcję <strong>Tabela przestawna</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image9.png" alt="image9" width="700" height="510" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Po uaktywnieniu opcji w oknie <strong>Tworzenie tabeli przestawnej</strong> należy sprawdzić zakres wybranych danych (Excel sam ten zakres zdefiniuje na podstawie analizy danych zawartych w tabeli – punkt 1) oraz określić umiejscowienie tworzonej tabeli przestawnej (do wyboru opcja <strong>Nowy arkusz</strong> – tabela zostanie utworzona w nowym, odrębnym arkuszu bądź <strong>Istniejący arkusz</strong> – tabela przestawna zostanie utworzona w arkuszu wskazanym w polu <strong>Lokalizacja</strong>) – punkt 2. Odwołanie do danych znajdujących się w osobnym pliku np. pliku bazy danych programu Access możemy zrealizować po wybraniu opcji: <strong>Użyj zewnętrznego źródła danych</strong>. Po zdefiniowaniu wszystkich opcji wybieramy <strong>OK</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image10.png" alt="image10" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Tabela przestawna (a raczej jej zarys) został utworzony. Kolejnym krokiem jest zdefiniowanie danych jakie w nowo tworzonej tabeli mają zostać umieszczone. Definicję danych przeprowadzamy za pomocą czterech pól tabeli przestawnej:</p>
<p style="margin-left: 30px;"><strong>pole</strong> <strong>Filtry</strong> – pole odpowiedzialne za filtrowanie danych ukazywanych w tabeli przestawnej,</p>
<p style="margin-left: 30px;"><strong>pole</strong> <strong>Kolumny</strong> - wszystkie dane reprezentowane przez nagłówek tabeli zostaną umieszczone w kolejnych kolumnach tabeli przestawnej,</p>
<p style="margin-left: 30px;"><strong>pole</strong> <strong>Wiersze</strong> – wszystkie dane reprezentowane przez nagłówek tabeli zostaną umieszczone w kolejnych wierszach tabeli przestawnej,</p>
<p style="margin-left: 30px;"><strong>pole</strong> <strong>Wartości</strong> – komórki tabeli przestawnej, które zawierają dane liczbowe.</p>
<p>Układ pól możemy zmienić po kliknięciu na ikonę <strong>Narzędzia</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image11.png" alt="image11" width="700" height="468" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Powracamy do postawionego pytania o ilość książek z każdej filii. Aby uzyskać odpowiedź należy pola nagłówka tabeli przeciągnąć do odpowiednich pól tabeli przestawnej. W naszym przypadku nagłówek <strong>Biblioteka</strong> należy przeciągnąć do pola <strong>Wiersze</strong> (wszystkie wartości kolumny <strong>Biblioteka</strong> zostaną umieszczone w wierszach tabeli) oraz również nagłówek <strong>Biblioteka</strong> przenieść do pola <strong>Wartości</strong> (zliczenie wartości zmiennych zawartych w kolumnie <strong>Biblioteka</strong>).</p>
<p> </p>
<p>Tabela przestawna została utworzona a dla nas oznacza to, że poznaliśmy odpowiedź na wcześniej postawione pytanie.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image12.png" alt="image12" width="700" height="468" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Forma reprezentacji danych prezentowanych przez tabelę zależy od Nas, gdyż oczywiście można utworzyć tabelę przestawną w której filie biblioteki zamiast znajdować się w wierszach będą umieszczone w kolumnach. W tym celu należy nagłówek <strong>Biblioteka</strong> umieścić w polu <strong>Kolumny</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image13.png" alt="image13" width="700" height="468" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Excel został wyposażony w jeszcze jeden mechanizm, który pozwala nam operować na danych zebranych w tabeli, efektem działania jest zbudowanie wykresu a funkcja ta nosi nazwę <strong>wykresów przestawnych</strong>. Działanie funkcji jest bardzo podobne do tworzenia tabel przestawnych.</p>
<p> </p>
<p>Aby utworzyć wykres na karcie <strong>Wstawianie</strong> wybieramy <strong>Wykres przestawny</strong>. Do dyspozycji mamy ten sam zestaw opcji co w przypadku tworzenia tabeli przestawnej.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image14.png" alt="image14" width="700" height="500" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Po wybraniu <strong>OK</strong>, przeniesieniu nagłówka <strong>Tytuł</strong> do pola <strong>Wartości</strong> oraz nagłówka <strong>Biblioteka</strong> do pola <strong>Oś (Kategorie)</strong> uzyskamy wykres przedstawiający ilość tytułów znajdujących się w każdej z filii.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image15.png" alt="image15" width="700" height="468" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Aby jeszcze bardziej nam ułatwić operowanie na danych zawartych w tabeli producent od wersji MSOffice 2013 udostępnił dwie opcje: <strong>Polecane tabele przestawne</strong> oraz <strong>Polecane wykresy</strong>. Uaktywnienie opcji spowoduje po analizie danych zawartych w tabeli zaproponowanie nam możliwych do utworzenia tabel bądź wykresów. Tak więc po przejrzeniu propozycji może się okazać iż znajdziemy w nich to co akurat jest nam potrzebne.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image16.png" alt="image16" width="700" height="507" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Ilość możliwych do utworzenia wariantów tabel przestawnych na bazie danych na których aktualnie operujemy jest ogromna i nie sposób przedstawić ich wszystkich tak więc wybrałem kilka przykładów by dobitniej pokazać przewagę tego rozwiązania nad innymi opisanymi wyżej (filtrowanie, sortowanie oraz sumy częściowe).</p>
<p> </p>
<p>Spróbujmy znaleźć odpowiedź na następujące pytania:</p>
<p style="margin-left: 30px;">1 – Ilość książek w każdej z filii biblioteki z podziałem na rok wydania.</p>
<p style="margin-left: 30px;">2 – Ilość książek w obrębie danej kategorii.</p>
<p style="margin-left: 30px;">3 – Średnią wartość książek w oddziale.</p>
<p style="margin-left: 30px;">4 – Procentową ilość posiadanych książek.</p>
<p style="margin-left: 30px;">5 – Na podstawie wyników sprzedaży wyliczyć premię.</p>
<p> </p>
<p><strong>Zadanie 1</strong></p>
<p> </p>
<p>Należy umieścić nagłówek <strong>Biblioteka</strong> w polu <strong>Wiersze</strong> (wszystkie wartości kolumny <strong>Biblioteka</strong> zostaną umieszczone w wierszach tabeli) oraz nagłówek <strong>Rok wydania</strong> również w polu <strong>Wiersze</strong> (wszystkie wartości kolumny <strong>Rok wydania</strong> zostaną umieszczone w wierszach tabeli) oraz nagłówek <strong>Tytuł</strong> w polu <strong>Wartości</strong> (spowoduje zliczenie wszystkich wartości kolumny <strong>Tytuł</strong> ze względu na zmienne zawarte w polu <strong>Biblioteka</strong> oraz <strong>Rok wydania</strong>).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image17.png" alt="image17" width="700" height="469" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Mając tak przygotowane dane nic nie stoi na przeszkodzie by je zilustrować graficznie w postaci wykresu. Wystarczy tylko zaznaczyć dowolną komórkę w obrębie utworzonej tabeli przestawnej i z karty <strong>Wstawiane</strong> wybrać ikonę <strong>Wykres przestawny</strong>. Do utworzonej tabeli przestawnej zostanie dodany wykres.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image18.png" alt="image18" width="700" height="500" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Inny wariant tego samego zadania możemy uzyskać np. poprzez przeniesienie nagłówka tabeli <strong>Biblioteka</strong> do pola tabeli przestawnej <strong>Kolumny</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image19.png" alt="image19" width="700" height="468" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Zadanie 2</strong></p>
<p> </p>
<p>Do wykonania tego zadania została użyta opcja jednoczesnego wstawienia tabeli przestawnej i wykresu przestawnego (opcja dostępna na karcie <strong>Wstawianie</strong>).</p>
<p> </p>
<p>Aby znaleźć odpowiedź o ilość książek w danej kategorii pole nagłówka <strong>Kategoria</strong> zostało przeniesione do pola tabeli <strong>Wiersze</strong> a nagłówek <strong>Tytuł</strong> do pola <strong>Wartości</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image20.png" alt="image20" width="700" height="423" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Dodatkowo nagłówek <strong>Biblioteka</strong> został umieszczony w polu <strong>Filtry</strong>. Umieszczenie tego nagłówka w polu <strong>Filtry</strong> da nam możliwość filtrowania ilości książek w obrębie danej filii. Poniżej użycie opcji filtra tak by ukazać liczbę książek należących do danej kategorii w obrębie oddziału <strong>Filia 1</strong> (wykres aktualizuje się automatycznie).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image21.png" alt="image21" width="700" height="423" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Zadanie 3</strong></p>
<p> </p>
<p>Aby wyliczyć średnią wartość książek w każdym z oddziałów należy nagłówek <strong>Biblioteka</strong> przenieść do pola <strong>Wiersze</strong> a następnie nagłówek <strong>Wartość</strong> do pola <strong>Wartości</strong>. Po tak przeprowadzonej operacji uzyskamy informację o wartości wszystkich książek znajdujących się w danym oddziale. Dodatkowo kolumna tabeli przestawnej została sformatowana tak by wartości były pokazane w formie waluty.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image22.png" alt="image22" width="700" height="468" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Czy taką informację chcieliśmy uzyskać? Wyliczyliśmy wartość książek w oddziale a przypominam, że zadanie zakładało obliczenie średniej wartości książek. Domyślnie ustawienie powoduje, że pole <strong>Wartości</strong> sumuje bądź zlicza elementy umieszczonego w niej nagłówka aby zaś wyliczyć średnią musimy opcję tą ustawić ręcznie.</p>
<p> </p>
<p>Aby zmienić domyślne działanie pola <strong>Wartości</strong> z sumowania na wyliczenie średniej należy kliknąć na strzałkę znajdującą się w polu nagłówka <strong>Suma z Wartość</strong> i z rozwijanego menu wybrać opcję <strong>Ustawienia pola wartości </strong>(punkt 1). W kolejnym kroku w nowo otwartym oknie w sekcji <strong>Podsumuj pole wartości</strong> <strong>według</strong> wybrać pozycję <strong>Średnia </strong>(punkt 2).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image23.png" alt="image23" width="700" height="468" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Wprowadzone zmiany zatwierdzamy klawiszem <strong>OK</strong>. Domyślna operacja sumowania zostaje zastąpiona wyliczeniem średniej.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image24.png" alt="image24" width="700" height="468" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Zadanie 4</strong></p>
<p> </p>
<p>W pierwszym kroku (punkt 1) umieszczamy dwa razy nagłówek <strong>Tytuł</strong> w polu <strong>Wartości</strong> a następnie nagłówek <strong>Biblioteka</strong> w polu <strong>Wiersze</strong>. Po wykonaniu czynności uzyskamy tabele w której zostanie obliczona ilość książek w każdym z oddziałów. Następnie zmieniamy sposób podsumowania tak by uzyskać wartość procentową posiadanych książek. Analogicznie jak w zadaniu 3 wybieramy opcję <strong>Ustawienia pola wartości</strong> lecz tym razem będziemy modyfikować opcje znajdujące się na karcie <strong>Pokazywanie wartości jako</strong>. Po uaktywnieniu karty w sekcji <strong>Pokaż wartości jako</strong> z rozwijanego menu wybieramy <strong>% sumy końcowej</strong> (punkt 2).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image25.png" alt="image25" width="700" height="468" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Po wprowadzeniu zmian uzyskamy wynik procentowy obrazujący ilość książek w oddziale. Dodatkowo wynik ten został sformatowany z wykorzystaniem <strong>Formatowania warunkowego</strong> z wykorzystaniem <strong>pasków danych</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image26.png" alt="image26" width="700" height="468" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Jedną z przydatnych opcji często wykorzystywaną w pracy z tabelami przestawnymi jest możliwość <strong>grupowania</strong> jej elementów. Grupowanie możemy realizować na dwa sposoby możemy wykonać je <strong>ręcznie</strong> oraz <strong>automatycznie</strong>. Grupowane mogą być elementy znajdujące się w polach tabeli przestawnej <strong>Wiersze</strong> oraz <strong>Kolumny</strong>.</p>
<p> </p>
<p>Rozwińmy nasze zadanie i wykonajmy grupowanie, które będzie wykonane według założenia iż Filia 1 oraz Filia 3 biblioteki głównej leżą w jednej dzielnicy miasta zaś Filia 2, 4, 5 oraz 6 są umiejscowione w innej.</p>
<p> </p>
<p>Aby utworzyć pierwszą grupę (nazwijmy ją Dzielnica 1) przy pomocy klawisza <strong>Ctrl</strong> zaznaczamy pozycję <strong>Filia 1</strong> oraz <strong>Filia 3</strong> i po kliknięciu PPM z menu kontekstowego wybieramy <strong>Grupuj</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image27.png" alt="image27" width="700" height="468" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Analogicznie postępujemy z resztą pozycji.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image28.png" alt="image28" width="700" height="468" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Dodatkowo domyślne nazwy grup zostały zmienione na <strong>Dzielnica 1 </strong>oraz <strong>Dzielnica 2</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image29.png" alt="image29" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Aby powrócić do ustawień początkowych należy kliknąć na nawę grupy i z menu wybrać opcję <strong>Rozgrupuj</strong>.</p>
<p> </p>
<p>Wspomniałem również o grupowaniu <strong>automatycznym</strong>, grupowanie te dostępne jest tylko dla pól zawierających liczby, daty bądź godziny. Dlatego zasadę działania tego typu grupowania przedstawię na osobnym przykładzie. Załóżmy, że dysponujemy tabelą zawierająca daty wraz z wartością wpływu na konto przelewów w tym dniu (przykład znajdziesz po pobraniu pliku na arkuszu data) i chcemy uzyskać informację o miesięcznej i kwartalnej wysokości wpływów.</p>
<p> </p>
<p>W pierwszym kroku tworzymy tabelę przestawną w której w polu <strong>Wiersze</strong> zostaje umiejscowiony nagłówek <strong>Data</strong> natomiast w polu <strong>Wartości</strong> nagłówek <strong>Wpływy</strong>. Aby wyliczyć żądane wartości wybieramy dowolną komórkę z kolumny zawierające daty i po kliknięciu PPM wybieramy <strong>Grupuj</strong>. W nowo otwartym oknie <strong>Grupowanie</strong> w sekcji <strong>Według</strong> określamy zakres grupowania (w naszym przypadku należy zaznaczyć Dni, Miesiące oraz Kwartały). Dodatkowo można zdefiniować <strong>okres grupowania</strong>, który określamy poprzez zdefiniowanie <strong>daty początkowej</strong> i <strong>końcowej</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image30.png" alt="image30" width="700" height="468" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Po wykonaniu wszystkich czynności daty zostaną zgrupowane według dni, te zaś zostaną połączone w miesiące a te w kwartały.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image31.png" alt="image31" width="700" height="480" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Aby ułatwić sobie zadanie przeglądania zgromadzonych danych możemy wykorzystać nową opcję filtrowania jaką jest <strong>oś czasu</strong>. Opcję tą znajdziemy na karcie <strong>Analiza</strong>. Po wybraniu ikony <strong>Wstaw oś czasu</strong> będziemy musieli określić do której kolumny tabeli przestawnej będzie stosowane filtrowanie. Dużego wyboru nie mamy gdyż opcja ta współpracuje jedynie z danymi typu czas a jedyną kolumną zawierającą tego typu dane jest kolumna <strong>Data</strong>. Tak więc w nowo otwartym oknie odhaczamy opcję <strong>Data</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image32.png" alt="image32" width="700" height="534" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Po zastosowaniu opcji ukarze się nam nowy obiekt – <strong>oś czasu</strong> za pomocą osi będziemy mogli dokonywać filtrowania danych zawartych w tabeli przestawnej. Poniżej przykład w którym zostały zaznaczone na osi dwa miesiące kwiecień i maj, jak można zauważyć tabela po prawej wyświetla tylko dane z tego okresu.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image33.png" alt="image33" width="700" height="820" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Zadanie 5</strong></p>
<p> </p>
<p>Podczas pracy z tabelami przestawnymi bardzo często dochodzi do sytuacji w której musimy dokonać pewnych obliczeń. Obliczenia te bazują na danych już umieszczony w tabeli przestawnej. Aby zaprezentować sposób wykonania takowych obliczeń musimy posłużyć się nowym arkuszem - dane potrzebne do tego ćwiczenia znajdziesz w arkuszu Premia. W arkuszu zostały zebrane miesięczne obroty czterech przedstawicieli handlowych. Umowa z pracownikami gwarantuje wypłacenie premii kwartalnej, która zależy od osiągniętej wartości obrotów uzyskanych przez każdego z przedstawicieli. Premię należy wyliczyć według schematu poniżej:</p>
<p style="margin-left: 30px;"><strong>Kwartał 1</strong> - 5% wartości sprzedaży osiągniętej w styczniu, lutym i marcu,</p>
<p style="margin-left: 30px;"><strong>Kwartał 2</strong> - 6% wartości sprzedaży osiągniętej w kwietniu, maju i czerwcu,</p>
<p style="margin-left: 30px;"><strong>Kwartał 3 </strong>- 5% wartości sprzedaży osiągniętej w lipcu, sierpniu i wrześniu,</p>
<p style="margin-left: 30px;"><strong>Kwartał 4</strong> - 6% wartości sprzedaży osiągniętej w październiku, listopadzie i grudniu.</p>
<p> </p>
<p>Oprócz premii kwartalnych obliczymy również całość premii: <strong>Suma</strong> – roczna wartość premii.</p>
<p> </p>
<p>Podczas pracy z tabelami przestawnymi obowiązują pewne reguły i zasady, które uniemożliwiają wykonanie pewnych czynności jakie by były dozwolone gdybyśmy pracowali na standardowym arkuszu. Ograniczenia te sprowadzają się do niemożności wstawiania nowych kolumn, wierszy oraz do wykorzystania formuł, które będą wykonywać obliczenia na podstawie danych, które są zawarte w tabeli przestawnej. Lecz zdarzają się sytuacje w których jednak takowe obliczenia musimy przeprowadzić. W takich sytuacjach możemy skorzystać z <strong>pól obliczeniowych</strong> bądź <strong>elementów obliczeniowych</strong>. Tak więc element obliczeniowy jest nowym wierszem, który będzie odwoływał się do danych zawartych w tabeli przestawnej a także będzie wykonywał zdefiniowaną formułę.</p>
<p> </p>
<p>Arkusz do tego zadania został przedstawiony poniżej a nasze obliczenia rozpoczynamy od kliknięcia wiersza tabeli i przejściu na zakładkę <strong>Analiza</strong>. W następnym kroku należy rozwinąć menu zawarte pod ikoną <strong>Pola, elementy i zestawy</strong> i wybrać opcję <strong>Element obliczeniowy</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image34.png" alt="image34" width="700" height="459" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>W nowo otwartym oknie definiujemy nowo tworzony element obliczeniowy. W pierwszym kroku należy podać jego <strong>nazwę</strong> a następnie określić realizowaną <strong>formułę</strong>. Naszym zadaniem jest wyliczenie premii za pierwszy kwartał więc element został nazwany <strong>Kwartał 1</strong>. Formuły w przypadku tabel przestawnych są definiowane inaczej niż jak to ma się zazwyczaj i aby obliczyć premię przysługującą za pierwszy kwartał wpisujemy <strong>=5%*(</strong> a następnie w sekcji <strong>Pola</strong> odszukujemy pole <strong>Miesiąc</strong> po zaznaczeniu którego w sekcji <strong>Elementy</strong> pojawią się nazwy miesiący. Premia ma stanowić 5% wartości sprzedaży z trzech pierwszych miesięcy roku więc należy miesiące te zsumować. Klikamy kolejno nazwy miesięcy oddzielając je oczywiście znakiem <strong>+</strong>. Po wprowadzeniu formuły nie zapominamy o zamknięciu nawiasu. Cała formuła przyjmie więc postać: <strong>=5%*(styczeń+luty+marzec) </strong>Po zdefiniowaniu formuły aby ją zapisać klikamy przycisk <strong>Dodaj</strong> po czym możemy przejść do budowania kolejnego elementu obliczeniowego. Całość wprowadzonych ustawień zatwierdzamy klawiszem <strong>OK</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image35.png" alt="image35" width="700" height="430" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Pozostałe formuły budujemy analogicznie jak tą pierwszą zmieniając oczywiście wartość procentową premii i miesiące. Element <strong>Suma</strong> wyliczamy z wykorzystaniem wcześniej zdefiniowanych <strong>pól kwartalnych</strong>. Po wprowadzeniu wszystkich formuł powinniśmy uzyskać 5 dodatkowych wierszy tabeli przestawnej w których będą wyliczone premie pracowników.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image36.png" alt="image36" width="700" height="430" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Wspomniałem, że oprócz elementów obliczeniowych można również stosować <strong>pola obliczeniowe</strong>. Pole obliczeniowe jest sposobem na dodanie kolejnych informacji, które zostały wyliczone na podstawie danych zawartych w innych polach (podobnie jak to się ma z elementami tylko z tą różnicą, że w sekcji pól tabel przestawnych nowo zdefiniowane pole będzie miało swoje odzwierciedlenie, element obliczeniowy do tabeli dodaje tylko nowy wiersz).</p>
<p> </p>
<p>Aby wstawić nowe pole obliczeniowe należy kliknąć na dowolna komórkę tabeli przestawnej i z zakładki <strong>Analiza</strong> wybrać opcję <strong>Pola, elementy i zestawy </strong>a następnie z menu element <strong>Pole obliczeniowe</strong>.</p>
<p> </p>
<p>Spróbujmy więc do naszej tabeli przestawnej dodać nowe pole obliczeniowe. Zadaniem tego pola będzie przedstawienie wartości wyliczonej w złotówkach a umieszczonej w kolumnie <strong>Suma końcowa</strong> jako wartość Euro.</p>
<p> </p>
<p>Po wybraniu opcji wstawienia nowego pola, podobnie jak to miało miejsce w przypadku elementu obliczeniowego należy zdefiniować nazwę pola oraz formułę. Nazwa pola przyjęła wartość <strong>Euro</strong> natomiast formuła została zdefiniowana jako: <strong>=Obroty/<kurs_waluty></strong> (taka formuła gdyż wartość <strong>Sumy końcowej</strong> jest wyliczana na podstawie nagłówka <strong>Obroty</strong>).</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image37.png" alt="image37" width="700" height="459" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Po zatwierdzeniu klawiszem <strong>OK</strong> nowe pola obliczeniowe zostaną umieszczone w tabeli.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image38.png" alt="image38" width="700" height="421" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Aby element obliczeniowy bądź pole obliczeniowe usunąć a także zmodyfikować wybieramy interesującą nas pozycję z menu <strong>Pola, elementy i zestawy </strong>a następnie po wybraniu nazwy elementu w zależności od zamiaru klikamy przycisk <strong>Modyfikuj</strong> bądź <strong>Usuń</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image39.png" alt="image39" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Dodatkowo aby ułatwić sobie reprezentację danych możemy zdecydować się na zastosowanie tzw. <strong>fragmentatora</strong> (ang. slicer). Fragmentator jest interaktywnym polem, które umożliwia zastosowanie filtrowania. Przypuśćmy, że musimy z zdefiniowanej tabeli przestawnej uzyskać informację o obrotach przedstawiciela Andrzej uzyskanych w miesiącu marzec. Oczywiście dane te możemy w prosty sposób odszukać w tabeli lecz zdarza się, że przy dużym skomplikowaniu samej tabeli i dużej ilości zebranych informacji możemy popełnić błąd i potrzebne nam wartości odczytamy z sąsiedniej komórki. Popełnienia tego błędu unikniemy przy wykorzystaniu fragmentatora.</p>
<p> </p>
<p>Wstawienie fragmentatora sprowadza się do odszukania na karcie <strong>Analiza</strong> ikony <strong>Wstaw fragmentator</strong> i zdefiniowania pól co do których będzie przeprowadzane filtrowanie. W naszym przypadku fragmentator będzie miał zastosowanie do pól <strong>Konsultant</strong> oraz <strong>Miesiąc</strong>.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image40.png" alt="image40" width="700" height="357" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Po wybraniu <strong>OK</strong> do arkusza zostaną dodane dwa fragmentatory. Odszukanie interesującej nas wartości obrotów przedstawiciela Andrzej z miesiąca marca sprowadza się tylko do zaznaczenia odpowiednich pól.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image41.png" alt="image41" width="700" height="307" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Dane zebrane w tabeli przestawnej można użyć do obliczeń. Oznacza to, że możemy je wykorzystać by uzyskać potrzebne nam informacje. Pozostajemy jeszcze przez chwilę przy naszym arkuszu i spróbujmy wyliczyć wartość obrotu. Po dodaniu nowych wierszy w tabeli przestawnej (tych wyliczających wartość premii) końcowa suma nie odpowiada już wartości obrotu uzyskanego przez każdego z przedstawicieli. Aby uzyskać wartość obrotu od wartości <strong>Suma końcowa</strong> należy odjąć wartość pola <strong>Premia</strong>, tak jak to zostało przedstawione na zrzucie poniżej.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image42.png" alt="image42" width="700" height="157" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Z prawej strony została utworzona nowa tabela, która odzwierciedla wartość uzyskanego obrotu. Wartość ta poprzez zbudowanie formuły oznaczonej w ramce odzwierciedla osiągnięty obrót. Jak widać formuła ta bazuje na funkcji WEŹDANETABELI. Zastosowana funkcja nie należy do prostych lecz na nasze szczęście nie musimy jej wprowadzać ręcznie - wystarczy, że budując formułę skorzystamy z myszki by za jej pomocą zaznaczać interesujące nas komórki. Aby obliczyć obrót musimy wykonać operację odejmowania czyli całe obliczenie sprowadza się do wybrania znaku <strong>=</strong> i kliknięciu komórki <strong>B10</strong>, wprowadzeniu znaku <strong>minus</strong> i kliknięciu komórki <strong>B9</strong>. Cała formuła zostanie wprowadzona automatycznie.</p>
<p> </p>
<p>Pewnie Czytelniku zadajesz sobie pytanie - Dlaczego by nie wprowadzić formuły: = B10-B9? Taką formułę można wprowadzić i obliczenie będzie prawidłowe ale po rozwinięciu zgrupowanych pól pojawią się nowe wiersze i zawarte w nich dane nie będą odpowiadać wartością prawidłowym a co za tym idzie wartość uzyskanego obrotu będzie nieprawidłowa. Wykorzystanie myszki i wskazania interesujących nas komórek zapewni nam poprawność wyniku nawet gdy nasza tabela przestawna będzie ulegać zmianie. Poniżej zaprezentowano rozwinięcie komórek <strong>Kwartał 1</strong> oraz <strong>Kwartał 3</strong>, jak widać wynik uzyskanego obrotu nie uległ zmianie.</p>
<p> </p>
<p><img src="http://slow7.pl/images/stories/office/excel_10/image43.png" alt="image43" width="700" height="234" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>I w tym miejscu Chciałbym rozważania na temat tabel przestawnych zakończyć. Myślę, że zaprezentowane zadania wraz z omówieniem zachęcą Cię do korzystania z tego mechanizmu przy tworzeniu swoich własnych arkuszy.</p></div>Excel w zadaniach. Funkcje tablicowe2016-03-04T09:00:58+00:002016-03-04T09:00:58+00:00http://slow7.pl/office/item/116-excel-w-zadaniach-funkcje-tablicowepikolo[email protected]<div class="K2FeedImage"><img src="http://slow7.pl/media/k2/items/cache/7a6fe08027b80ee08bda1ed60d73e334_S.jpg" alt="Excel w zadaniach. Funkcje tablicowe" /></div><div class="K2FeedIntroText"><p>Arkusz kalkulacyjny poza nazwijmy to „tradycyjnym” sposobem operowania na danych zawartych w arkuszu oferuje pewną funkcjonalność, która w sposób bardziej wydajny pozwala nam przeprowadzać wszelkiego rodzaju obliczenia. Sposób ten bazuje na wykorzystaniu formuł tablicowych zwanych też formułami CSE, gdyż celem zatwierdzenia formuły tego typu należy posłużyć się kombinacją klawiszy Ctrl+Shift+Enter. Mechanizm ten swoją wyższość pokazuje w arkuszach w których to musimy operować na dużej liczbie powtarzalnych formuł. Użycie tej funkcjonalności spowoduje skrócenie czasu przygotowania arkusza oraz zapewni spójność użytych formuł a już na pewno wyniesie tworzone przez nas arkusze na kolejny poziom wtajemniczenia.</p>
</div><div class="K2FeedFullText">
<p>Arkusz z przykładami opisanymi w artykule można pobrać - <a href="http://slow7.pl/images/stories/office/excel_9/tablicowe.xlsx">TUTAJ</a></p>
<p> </p>
<p>MS Excel obsługuje dwa rodzaje formuł tablicowych:</p>
<ul>
<li style="padding-left: 30px;"><strong>jednokomórkowe formuły tablicowe </strong>– tworzone formuły operują na danych zapisanych w wielu komórkach (w formule definiowany jest zakres) jako wynik działania formuły zwracana jest wartość, która zapisana jest w jednej komórce.</li>
<li style="padding-left: 30px;"><strong>wielokomórkowe formuły tablicowe </strong>- formuły te operują na danych zapisanych w wielu komórkach lecz zwracany wynik jest umieszczany w zakresie komórek.</li>
</ul>
<p> </p>
<p>Dodatkowo w definicji formuł tablicowych wielokomórkowych określa się takie pojęcia jak: <strong>tablica jednowymiarowa</strong> i <strong>tablica dwuwymiarowa</strong>. Pierwsze z pojęć określa tablicę, której wymiary (obszar komórek tworzących tablicę) sprowadzają się do jednego wiersza lub jednej kolumny. Tablica dwuwymiarowa swym zasięgiem obejmuje zarówno wiersz i kolumnę (prostokątny obszar komórek).</p>
<p> </p>
<p>Tak by zobrazować rodzaje formuł omówmy przykłady. Zaczniemy od formuły tablicowej wielokomórkowej.</p>
<p> </p>
<p>Na rysunku poniżej został przedstawiony arkusz, którego celem jest wyliczenie wypłaty w zależności od liczby przepracowanych godzin i ustalonej stawki.</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image1.png" alt="image1" width="700" height="314" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Przy użyciu tradycyjnej formuły zamieszczonej w komórce N5: <strong>=L5*M5</strong> można obliczyć wartość wypłaty. Aby wartość wypłaty mogła być obliczona dla pozostałych osób, wprowadzoną formułę należy skopiować w dół. Gdy całość zostanie wykonana w kolumnie N zostanie umieszczone 10 formuł.</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image2.png" alt="image2" width="700" height="338" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Te same zadanie, można by było wykonać z użyciem jednej formuły pod warunkiem, że będzie to <strong>formuła tablicowa</strong>.</p>
<p> </p>
<p>Aby wykonać wyliczenie wartości wypłat wykorzystując do tego funkcję tablicową należy skorzystać z poniższej procedury:</p>
<p> </p>
<p><strong>Punkt 1:</strong> Zaznaczyć obszar obejmujący zakres komórek od N5 do N14, ponieważ w tym zakresie mają pojawić się wyniki.</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image3.png" alt="image3" width="700" height="284" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Punkt 2:</strong> Wpisać następującą formułę: <strong>=L5:L14*M5:M14 </strong>(po zaznaczeniu komórek można użyć klawisz F2 celem wprowadzenia formuły).</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image4.png" alt="image4" width="700" height="339" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Punkt 3:</strong> Aby zatwierdzić formułę należy użyć kombinacji klawiszy: <strong>Ctrl+Shift+Enter</strong> (nie Enter). Po wykonaniu wszystkich czynności zaznaczone komórki powinny uzupełnić się wynikami.</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image5.png" alt="image5" width="700" height="343" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>W wpisie dotyczącym adresacji bezwzględnej opisałem jak przy wykorzystaniu „dolara” przygotować arkusz zawierający tabliczkę mnożenia - <a href="http://slow7.pl/item/25-excel-w-zadaniach-adresacja-bezwzgledna">http://slow7.pl/item/25-excel-w-zadaniach-adresacja-bezwzgledna</a>. To samo zadanie można wykonać przy wykorzystaniu funkcji tablicowych. Wykonanie zadania sprowadza się do zaznaczenia zakresu komórek od <strong>B3</strong> do <strong>K12</strong> a następnie wpisania formuły: <strong>=B2:K2*A3:A12</strong> i zatwierdzenia jej klawiszami <strong>Ctrl+Shift+Enter</strong></p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image6.png" alt="image6" width="700" height="421" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Wykonując opisane czynności zyskujemy pewność, że wszystkie formuły w tablicy są spójne - trudniej popełnić błąd.</p>
<p> </p>
<p>Przy pracy z tablicami należy dodatkowo pamiętać, że niemożliwa jest zmiana zawartości pojedynczej formuły. Oznacza to, że chcąc zmodyfikować formułę np. w komórce <strong>K3</strong> zadanie te zakończy się informacją o błędzie. Analogicznie błąd wystąpi podczas próby skasowania formuły.</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image7.png" alt="image7" width="700" height="421" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Dodatkowo niemożliwe jest wykonanie operacji usuwania oraz wstawiania kolumny bądź wiersza gdyż wiązałoby się to ze zmianą rozmiarów zdefiniowanej tablicy.</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image8.png" alt="image8" width="700" height="421" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Zmianę wprowadzonej formuły bądź jej skasowanie możemy dokonać po zaznaczeniu całej tablicy. Zaznaczenie tablicy dokonujemy:</p>
<ul>
<li style="padding-left: 30px;">należy kliknąć dowolną komórkę w zakresie formuły tablicowej i z klawiatury wybrać skrót: <strong>Ctrl+/</strong>,</li>
<li style="padding-left: 30px;">należy kliknąć dowolną komórkę w zakresie formuły tablicowej (punkt 1), wybrać ikonę<strong> Znajdź i zaznacz</strong> i z rozwiniętego menu opcję <strong>Przejdź do - specjalnie</strong> (punkt 2). W nowo otwartym oknie wybieramy opcję <strong>Bieżąca tablica</strong> (punkt 3)</li>
</ul>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image9.png" alt="image9" width="700" height="330" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Sposób działania <strong>formuły tablicowej wielokomórkowej </strong>został przedstawiony, przejdźmy zatem do przykładów ilustrujących działanie <strong>formuły tablicowej jednokomórkowej</strong>.</p>
<p> </p>
<p>Powróćmy do przykładu wyliczenia wypłat i spróbujmy wykonać operację, której efektem będzie poznanie wartości wszystkich wypłat. W tradycyjny sposób wykonalibyśmy krok pośredni polegający na wyliczeniu wypłat cząstkowych (każdego z pracowników) by w kroku kolejnym uzyskane wyniki wypłat do siebie dodać.</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image10.png" alt="image10" width="700" height="272" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>To samo zadanie można by było wykonać z pominięciem wyliczenia wypłat poszczególnych pracowników, warunkiem jest skorzystanie z funkcji tablicowej. Należy skorzystać z formuły: <strong>=SUMA(L5:L14*M5:M14)</strong> (pamiętamy o zatwierdzeniu formuły klawiszami: Ctrl+Shift+Enter)</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image11.png" alt="image11" width="700" height="272" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Działanie funkcji tablicowej sprowadza się do wymnożenia przez siebie wartości z określonych zakresów (w pamięci komputera powstaje nowa tablica składająca się z wartości wykonania działania liczba godzin * stawka) a następnie ich dodania.</p>
<p> </p>
<p>W tym przypadku alternatywą dla formuły tablicowej mogłaby być funkcja: <strong>SUMA.ILOCZYNÓW</strong></p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image12.png" alt="image12" width="700" height="255" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Funkcję tablicową również możemy użyć do policzenia wystąpień danego zestawu danych w zależności od ustalonych kryteriów. Celem zilustrowania przykładu posłużmy się używanym do tej pory zestawem danych.</p>
<p> </p>
<p>Spróbujmy ustalić liczbę osób, które pracowały ponad 30 godzin. Aby zrealizować zadanie należy posłużyć się formułą tablicową: <strong>=SUMA((G4:G13>30)*1)</strong></p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image13.png" alt="image13" width="700" height="353" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Formuła ta działa ponieważ funkcja SUMA w tym przypadku nie sumuje wartości tylko je zlicza. Dzieje się tak ponieważ funkcja SUMA wykonuje dodawanie logicznego mnożenia. Spełnienie warunku powoduje przekazanie do funkcji SUMA działania: <strong>PRAWDA (wartość ta równa się 1) x</strong> <strong>1</strong> Wartość 1 (jeśli warunek jest spełniony) razy 1 (z definicji formuły) daje w wyniku 1. Suma wszystkich jedynek jest liczbą osób spełniających ustalony warunek.</p>
<p> </p>
<p>W przypadku takim jak ten gdzie został ustalony tylko jeden warunek należy pamiętać, że warunek ten musi zostać wymnożony przez wartość 1. W przeciwnym wypadku funkcja nie zadziała.</p>
<p> </p>
<p>Budowa formuły nie musi ograniczać się do jednego warunku. Spróbujmy zatem ustalić liczbę osób spełniających dwa warunki: liczba godzin poniżej 20 z stawką powyżej 20 zł.</p>
<p> </p>
<p>Formuła, która wyliczy liczbę osób spełniające oba kryteria będzie miała postać: <strong>=SUMA((G4:G13<20)*(H4:H13>20))</strong></p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image14.png" alt="image14" width="700" height="387" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Wynikiem działania formuły jest wartość 3. W przypadku tym nie musieliśmy definiować mnożenia przez 1 gdyż formuła ta została zbudowana poprzez zdefiniowanie dwóch warunków. Działanie funkcji opiera się na założeniu: <strong>PRAWDA (wartość 1) razy FAŁSZ (wartość 0) = 0</strong> W przypadku uzyskania dwóch wartości PRAWDA (działanie 1 x 1 = 1) otrzymujemy wartość 1 w każdym innym przypadku wartość wyniesie 0 (mnożenie przez 0 zawsze da 0) Wartości uzyskane dzięki wykonaniu logicznego mnożenia zostają przekazane do funkcji SUMA i są do siebie dodawane. Wynik dodawania jest liczbą osób spełniających oba kryteria.</p>
<p> </p>
<p>Liczba definiowanych warunków jest oczywiście zależna od naszych potrzeb.</p>
<p> </p>
<p>Zanim przejdziemy dalej jeszcze jeden przykład, który pokaże jak zsumować wartości wypłat od ustalonego kryterium. Celem lepszego zobrazowania działania formuły do arkusza została dodana jeszcze jedna kolumna, przyporządkowująca pracownika do konkretnego działu firmy. Arkusz przedstawia się następująco.</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image15.png" alt="image15" width="700" height="272" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Naszym celem jest zsumowanie wypłat działu kadry. Aby zsumować wypłaty należy posłużyć się formułą: <strong>=SUMA(JEŻELI(H4:H13=J16;K4:K13;0))</strong></p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image16.png" alt="image16" width="700" height="319" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Zadaniem użytej funkcji JEŻELI jest sprawdzenie czy w zdefiniowanym zakresie od H4 do H13 wystąpi zmienna określona w komórce J16 (kadry) W przypadku spełnienia warunku do funkcji SUMA zostaje przekazana odpowiadająca wartość z zakresu od K4 do K13. Wynikiem działania formuły jest zsumowanie wszystkich wartości wypłat działu kadry.</p>
<p> </p>
<p>W przedstawionych przykładach tablice były przechowywane w komórkach arkusza, lecz wcale tak być nie musi. Tablicę również możemy definiować sami a jej lokalizacją może być formuła. Tablica zdefiniowana w ten sposób będzie przechowywana w pamięci komputera. Tablica ta nosi nazwę <strong>stałej tablicowej</strong>.</p>
<p> </p>
<p>Tworzenie stałej tablicowej sprowadza się do wypisania jej elementów, które są objęte <strong>nawiasami</strong> <strong>klamrowymi - {}. </strong>Przykładowa tablica może zostać zdefiniowana w ten sposób - {2;6;10;14}</p>
<p> </p>
<p>Tak określoną tablicę możemy oczywiście łączyć z funkcjami - np. celem dodania elementów tablicy można połączyć ją z funkcją SUMA: <strong>=SUMA({2;6;10;14})</strong> Wynikiem funkcji będzie liczba 32. Co należy zaznaczyć, to to, że w przypadku definiowania stałej tablicowej nawiasy klamrowe umieszczamy sami.</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image17.png" alt="image17" width="700" height="266" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Definicja tworzonych formuł nie musi sprowadzać się do użycia tylko jednej stałej tablicowej lecz możemy użyć ich wiele - wszystko zależy od potrzeb i charakteru tworzonej formuły. Poniżej przykład z wykorzystaniem dwóch stałych tablicowych. W przykładzie została użyta formuła:<strong> =SUMA({2;6;10;14}-{1;2;3;4})</strong></p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image18.png" alt="image18" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Funkcjonowanie formuły opiera się na wykonaniu określonych działań na zdefiniowanych tablicach (w tym przypadku realizowane jest odejmowanie oraz sumowanie). Wyliczenie sprowadza się do wykonania następującego działania: (2-1)+(6-2)+(10-3)+(14-4) - w pierwszej kolejności jest wykonywane odejmowanie tablic - co prowadzi do zapisania w pamięci komputera tablicy {1;4;7;10} a następnie zsumowania jej elementów. Wynikiem formuły jest wartość 22.</p>
<p> </p>
<p>Stałe tablicowe można łączyć z tablicami przechowywanymi w komórkach arkusza. Poniżej ten sam przykład co powyżej z tą różnicą, że tablica <strong>{1;2;3;4} </strong>została umieszczona w komórkach od <strong>A1</strong> do <strong>A4</strong> (umiejscowienie tablicy w kolumnie a nie w wierszu ma swoje konsekwencję ale o tym za chwilę).</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image19.png" alt="image19" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>W definicji stałej tablicowej mogą być zawarte taki elementy jak: <strong>tekst</strong> (tekst musi być objęty cudzysłowem); <strong>liczby</strong>; <strong>wartości logiczne</strong> czy <strong>wartości błędów</strong>. W budowaniu stałych tablicowych należy unikać stosowania: <strong>innych tablic</strong>; <strong>funkcji</strong>. Definiowane <strong>wartości liczbowe</strong> muszą być pozbawione takich znaków jak: nawias, kropka, symbol waluty czy procent.</p>
<p> </p>
<p>Na początku wpisu zasygnalizowałem, że tablica może być jednowymiarowa lub dwuwymiarowa. Tablica jednowymiarowa może obejmować swym zakresem wiersz bądź kolumnę, co oznacza, że tworzona tablica może zajmować wiersz (orientacja pozioma) bądź kolumnę (orientacja pionowa). Wybór orientacji wymusza na nas zastosowanie odpowiedniego zapisu. Poszczególne elementy tablicy o orientacji poziomej oddzielać od siebie będziemy <strong>lewymi ukośnikami</strong> zaś elementy tablicy pionowej oddzielamy <strong>średnikami</strong>. Tak więc przykładowa formuła: <strong>={1\2\3\4\5\6\7} </strong>oznaczać będzie tablicę umieszczoną w wierszu zaś formuła: <strong>={1;2;3;4;5;6;7}</strong> tablicę umieszczoną w kolumnie. Aby wprowadzić opisane formuły należy zaznaczyć siedem komórek arkusza (siedem gdyż tablica zawiera siedem elementów) i zatwierdzić wpis klawiszami: Ctrl+Shift+Enter</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image20.png" alt="image20" width="700" height="317" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>W przypadku tablicy dwuwymiarowej definicję tablicy rozpoczynamy od zdefiniowania zawartości pierwszego wiersza by za pomocą znaku <strong>;</strong> przejść do określenia elementów wiersza kolejnego. <strong>Tablicę dwuwymiarową definiujemy wierszami</strong>. Definicja przykładowej tablicy o wymiarach 5x2 będzie wyglądać następująco: <strong>={1\2\3\4\5;6\7\8\9\10} </strong></p>
<p> </p>
<p>Ktoś mógłby zapytać - Czy ten sam efekt uzyskamy tworząc tablicę nie poprzez określenie kolejnych wierszy lecz kolumn? Formuła budująca tabelę miałaby zatem postać: <strong>={1;6\2;7\3;8\4;9\5;10} </strong>Niestety tak wprowadzona formuła zakończy się błędem.</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image21.png" alt="image21" width="700" height="221" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Przy ręcznej definicji tablic dwuwymiarowych należy być ostrożnym gdyż tablica musi zawierać taką samą liczbę elementów - każdy wiersz tablicy dwuwymiarowej musi zawierać tą samą liczbę elementów. Poniższa definicja tabeli jest nieprawidłowa, ponieważ w trzecim wierszu zostały określone tylko 4 elementy, gdy zaś w pozostałych dwóch jest ich 5: <strong>={1\2\3\4\5;6\7\8\9\10;11\12\13\14}</strong></p>
<p> </p>
<p>Dla ułatwienia budowy przyszłych odwołań definiowane tablice można nazywać. Poniżej przykład przypisania nazwy do tablicy: <strong>={"Sty";"Lut";"Mar";"Kwi";"Maj";"Cze";"Lip";"Sie";"Wrz";"Paź";"Lis";"Gru"}</strong></p>
<p> </p>
<p>W oknie <strong>Formuły/Nazwy zdefiniowane/Definiuj nazwę</strong> można określić nazwę odwołania. Poniżej na przykładzie zdefiniowana została tablica o nazwie: <strong>miesiące</strong></p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image22.png" alt="image22" width="700" height="447" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Od tego momentu do nazwy tej możemy odwoływać się w ten sam sposób jak to robimy w przypadku wywołania funkcji, zdefiniowana nazwa pojawi się na liście proponowanych.</p>
<p> </p>
<p>Nazwę możemy zdefiniować również po zaznaczeniu komórek w których znajduje się tablica (w przykładzie poniżej komórki od B2 do B13) i określeniu nazwy w <strong>Polu nazwy</strong>.</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image23.png" alt="image23" width="700" height="619" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Do tej pory pokazałem jak utworzyć tablicę tak więc parę przykładów jak przeprowadzić działania na tablicach.</p>
<p> </p>
<p>Poniższa funkcja do każdego elementu tablicy dodaje 5: <strong>={1\2\3\4\5;6\7\8\9\10}+5</strong> Oczywiście wykonane działanie nie musi ograniczać się tylko do dodawania.</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image24.png" alt="image24" width="700" height="201" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Działania mogą być przeprowadzane również z wykorzystaniem innych tablic. Na przykład poniższa formuła odejmuje od siebie poszczególne elementy tablic: <strong>={10\20\30\40\50;60\70\80\90\100}-{1\2\3\4\5;6\7\8\9\10}</strong></p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image25.png" alt="image25" width="700" height="175" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>O ile jak to zostało zaznaczone wcześniej elementem tablicy nie może być funkcja tak nic nie stoi na przeszkodzie aby daną funkcję wykorzystać do wykonania działania na elementach tablicy. Poniżej przykłady połączenia tablicy z funkcją PIERWIASTEK oraz POTĘGA.</p>
<p> </p>
<p><strong>=PIERWIASTEK({10\20\30\40\50;60\70\80\90\100})</strong></p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image26.png" alt="image26" width="700" height="201" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>=POTĘGA({10\20\30\40\50;60\70\80\90\100};2)</strong></p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image27.png" alt="image27" width="700" height="201" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Podczas pracy z tablicami bardzo często zachodzi potrzeba zmiany układu tablicy. Najprościej można to wytłumaczyć w ten sposób, że to co mamy umieszczone w wierszu należy mieć w kolumnie (oczywiście sytuacja odwrotna również jest dozwolona). Aby wykonać zadanie należy posłużyć się funkcją <strong>TRANSPONUJ</strong>.</p>
<p> </p>
<p>Zaczniemy od przykładu z funkcją jednowymiarową i spróbujemy transponować tablicę pionową do tablicy poziomej. Poniżej przykład transponowania tablicy nazwanej: <strong>tydzień</strong> W komórkach od C2 do C8 została wprowadzona funkcja tablicowa: <strong>={"Pon";"Wto";"Śro";"Czw";"Pią";"Sob";"Nie"} </strong>Aby zmienić układ tablicy posłużono się funkcją tablicową: <strong>=TRANSPONUJ(tydzień)</strong>, która została umieszczona w zakresie od F2 do L2</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image28.png" alt="image28" width="700" height="187" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Te same zadanie można by było wykonać stosując formuły: <strong>=TRANSPONUJ({"Pon";"Wto";"Śro";"Czw";"Pią";"Sob";"Nie"})</strong></p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image29.png" alt="image29" width="700" height="185" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>bądź: <strong>=TRANSPONUJ(C2:C8)</strong></p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image30.png" alt="image30" width="700" height="186" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Ciekawe przykłady obrazujące wykorzystanie funkcji tablicowych to te w których coś musimy policzyć.</p>
<p> </p>
<p>Poniżej przykład ćwiczenia w którym to powiedzmy uczniowie za poprawne zachowanie i aktywność zdobywali plusy. Na koniec miesiąca dla najaktywniejszych nauczyciel przygotował nagrodę a że konkurowały ze sobą również klasy to należy również policzyć sumę wszystkich zdobytych punktów.</p>
<p> </p>
<p>Aby wyłonić zwycięzcę należy policzyć ilość zdobytych plusów. Aby zliczyć plusy zdobyte przez ucznia należy skorzystać z funkcji <strong>DŁ</strong>. Funkcja zwraca liczbę znaków ciągu tekstowego. Aby policzyć ilość plusów pierwszego ucznia wydajemy komendę: <strong>=DŁ(E4)</strong> Formułę oczywiście kopiujemy do pozostałych komórek.</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image31.png" alt="image31" width="700" height="250" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Po wykonaniu zliczenia plusów każdego z uczniów by uzyskać ich ogólną ilość należy skorzystać z funkcji SUMA.</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image32.png" alt="image32" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Do zliczenia ilości wszystkich plusów można by było użyć o to taką funkcję: <strong>=SUMA(DŁ(E4:E8))</strong> Funkcja ta jest funkcją tablicową zliczającą ilość znaków w zakresie komórek od E4 do E8.</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image33.png" alt="image33" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Jak widać powyżej uzyskany wynik jest tożsamy z tym jaki uzyskaliśmy w poprzednik kroku.</p>
<p> </p>
<p>No to przejdźmy do kolejnego przykładu wykorzystującego funkcje tablicowe. Poniżej na zrzucie został zaprezentowany arkusz w którym zebrano wartości pomiarów dokonanych przez jakiś system pomiarowy (nie jest ważne jaki, lecz celem uproszczenia dalszego opisu przyjmijmy, że jest to temperatura). W kolejnym kroku należy z zebranych danych wyznaczyć średnią trzech najwyższych pomiarów. Aby wybrać trzy najwyższe wartości z zakresu danych należy posłużyć się funkcją: <strong>MAX.K</strong> (analogicznie działa funkcja <strong>MIN.K</strong> wybierając z zakresu danych najmniejszą wartość n). Składnia funkcji jest następująca: <strong>MAX.K(dane;n)</strong> W składni funkcji MAX.K należy określić:</p>
<ul>
<li style="padding-left: 30px;">dane - tablica lub zakres danych, z których będzie wyznaczana n-ta największą wartość,</li>
<li style="padding-left: 30px;">n - pozycja danej (od największej) w tablicy lub zakresie komórek.</li>
</ul>
<p> </p>
<p>Tak więc by wybrać wartość najwyższą z pomiarów należy posłużyć się formułą: <strong>=MAX.K(D4:D18;1</strong>) zaś by drugą najwyższą: <strong>=MAX.K(D4:D18;2)</strong> Wartości kolejne wybieramy za pomocą modyfikacji parametru n.</p>
<p> </p>
<p>Po ustaleniu trzech najwyższych wartości temperatury z wartości tych zostaje wyciągnięta średnia.</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image34.png" alt="image34" width="700" height="401" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Aby pominąć etap wyznaczenia trzech najwyższych wartości pomiaru i uzyskać od razu średnią możemy posłużyć się taką formułą: <strong>=ŚREDNIA(MAX.K(D4:D18;1);MAX.K(D4:D18;2);MAX.K(D4:D18;3))</strong></p>
<p> </p>
<p>Zastosowanie formuły da nam wynik średniej trzech najwyższych pomiarów, w przypadku gdybyśmy chcieli wyliczyć wartość dla trzech najniższych pomiarów funkcję MAX.K należy zastąpić MIN.K</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image35.png" alt="image35" width="700" height="401" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Przedstawiona powyżej formuła jest tożsama z formułą: <strong>=ŚREDNIA(MAX.K(D4:D18;{1\2\3}))</strong> w której do wyliczenia średniej użyto stałej tablicowej.</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image36.png" alt="image36" width="700" height="401" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Podsumowując i kończąc ten wpis należy stwierdzić, że przykładów z użyciem tablic może być wiele a te przedstawione mają za cel pokazanie jak wykorzystać tą funkcjonalność Excela (taki zarys) a także wyższości rozwiązania opartego na tablicach nad tradycyjnym. Mam nadzieję, że po lekturze artykułu część z Was w swoich arkuszach ten mechanizm zacznie stosować a w przypadku zetknięcia się z arkuszami, które zostały zbudowane na bazie funkcji tablicowych ich ewentualna modyfikacja nie sprawi Wam problemów.</p></div><div class="K2FeedImage"><img src="http://slow7.pl/media/k2/items/cache/7a6fe08027b80ee08bda1ed60d73e334_S.jpg" alt="Excel w zadaniach. Funkcje tablicowe" /></div><div class="K2FeedIntroText"><p>Arkusz kalkulacyjny poza nazwijmy to „tradycyjnym” sposobem operowania na danych zawartych w arkuszu oferuje pewną funkcjonalność, która w sposób bardziej wydajny pozwala nam przeprowadzać wszelkiego rodzaju obliczenia. Sposób ten bazuje na wykorzystaniu formuł tablicowych zwanych też formułami CSE, gdyż celem zatwierdzenia formuły tego typu należy posłużyć się kombinacją klawiszy Ctrl+Shift+Enter. Mechanizm ten swoją wyższość pokazuje w arkuszach w których to musimy operować na dużej liczbie powtarzalnych formuł. Użycie tej funkcjonalności spowoduje skrócenie czasu przygotowania arkusza oraz zapewni spójność użytych formuł a już na pewno wyniesie tworzone przez nas arkusze na kolejny poziom wtajemniczenia.</p>
</div><div class="K2FeedFullText">
<p>Arkusz z przykładami opisanymi w artykule można pobrać - <a href="http://slow7.pl/images/stories/office/excel_9/tablicowe.xlsx">TUTAJ</a></p>
<p> </p>
<p>MS Excel obsługuje dwa rodzaje formuł tablicowych:</p>
<ul>
<li style="padding-left: 30px;"><strong>jednokomórkowe formuły tablicowe </strong>– tworzone formuły operują na danych zapisanych w wielu komórkach (w formule definiowany jest zakres) jako wynik działania formuły zwracana jest wartość, która zapisana jest w jednej komórce.</li>
<li style="padding-left: 30px;"><strong>wielokomórkowe formuły tablicowe </strong>- formuły te operują na danych zapisanych w wielu komórkach lecz zwracany wynik jest umieszczany w zakresie komórek.</li>
</ul>
<p> </p>
<p>Dodatkowo w definicji formuł tablicowych wielokomórkowych określa się takie pojęcia jak: <strong>tablica jednowymiarowa</strong> i <strong>tablica dwuwymiarowa</strong>. Pierwsze z pojęć określa tablicę, której wymiary (obszar komórek tworzących tablicę) sprowadzają się do jednego wiersza lub jednej kolumny. Tablica dwuwymiarowa swym zasięgiem obejmuje zarówno wiersz i kolumnę (prostokątny obszar komórek).</p>
<p> </p>
<p>Tak by zobrazować rodzaje formuł omówmy przykłady. Zaczniemy od formuły tablicowej wielokomórkowej.</p>
<p> </p>
<p>Na rysunku poniżej został przedstawiony arkusz, którego celem jest wyliczenie wypłaty w zależności od liczby przepracowanych godzin i ustalonej stawki.</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image1.png" alt="image1" width="700" height="314" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Przy użyciu tradycyjnej formuły zamieszczonej w komórce N5: <strong>=L5*M5</strong> można obliczyć wartość wypłaty. Aby wartość wypłaty mogła być obliczona dla pozostałych osób, wprowadzoną formułę należy skopiować w dół. Gdy całość zostanie wykonana w kolumnie N zostanie umieszczone 10 formuł.</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image2.png" alt="image2" width="700" height="338" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Te same zadanie, można by było wykonać z użyciem jednej formuły pod warunkiem, że będzie to <strong>formuła tablicowa</strong>.</p>
<p> </p>
<p>Aby wykonać wyliczenie wartości wypłat wykorzystując do tego funkcję tablicową należy skorzystać z poniższej procedury:</p>
<p> </p>
<p><strong>Punkt 1:</strong> Zaznaczyć obszar obejmujący zakres komórek od N5 do N14, ponieważ w tym zakresie mają pojawić się wyniki.</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image3.png" alt="image3" width="700" height="284" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Punkt 2:</strong> Wpisać następującą formułę: <strong>=L5:L14*M5:M14 </strong>(po zaznaczeniu komórek można użyć klawisz F2 celem wprowadzenia formuły).</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image4.png" alt="image4" width="700" height="339" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>Punkt 3:</strong> Aby zatwierdzić formułę należy użyć kombinacji klawiszy: <strong>Ctrl+Shift+Enter</strong> (nie Enter). Po wykonaniu wszystkich czynności zaznaczone komórki powinny uzupełnić się wynikami.</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image5.png" alt="image5" width="700" height="343" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>W wpisie dotyczącym adresacji bezwzględnej opisałem jak przy wykorzystaniu „dolara” przygotować arkusz zawierający tabliczkę mnożenia - <a href="http://slow7.pl/item/25-excel-w-zadaniach-adresacja-bezwzgledna">http://slow7.pl/item/25-excel-w-zadaniach-adresacja-bezwzgledna</a>. To samo zadanie można wykonać przy wykorzystaniu funkcji tablicowych. Wykonanie zadania sprowadza się do zaznaczenia zakresu komórek od <strong>B3</strong> do <strong>K12</strong> a następnie wpisania formuły: <strong>=B2:K2*A3:A12</strong> i zatwierdzenia jej klawiszami <strong>Ctrl+Shift+Enter</strong></p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image6.png" alt="image6" width="700" height="421" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Wykonując opisane czynności zyskujemy pewność, że wszystkie formuły w tablicy są spójne - trudniej popełnić błąd.</p>
<p> </p>
<p>Przy pracy z tablicami należy dodatkowo pamiętać, że niemożliwa jest zmiana zawartości pojedynczej formuły. Oznacza to, że chcąc zmodyfikować formułę np. w komórce <strong>K3</strong> zadanie te zakończy się informacją o błędzie. Analogicznie błąd wystąpi podczas próby skasowania formuły.</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image7.png" alt="image7" width="700" height="421" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Dodatkowo niemożliwe jest wykonanie operacji usuwania oraz wstawiania kolumny bądź wiersza gdyż wiązałoby się to ze zmianą rozmiarów zdefiniowanej tablicy.</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image8.png" alt="image8" width="700" height="421" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Zmianę wprowadzonej formuły bądź jej skasowanie możemy dokonać po zaznaczeniu całej tablicy. Zaznaczenie tablicy dokonujemy:</p>
<ul>
<li style="padding-left: 30px;">należy kliknąć dowolną komórkę w zakresie formuły tablicowej i z klawiatury wybrać skrót: <strong>Ctrl+/</strong>,</li>
<li style="padding-left: 30px;">należy kliknąć dowolną komórkę w zakresie formuły tablicowej (punkt 1), wybrać ikonę<strong> Znajdź i zaznacz</strong> i z rozwiniętego menu opcję <strong>Przejdź do - specjalnie</strong> (punkt 2). W nowo otwartym oknie wybieramy opcję <strong>Bieżąca tablica</strong> (punkt 3)</li>
</ul>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image9.png" alt="image9" width="700" height="330" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Sposób działania <strong>formuły tablicowej wielokomórkowej </strong>został przedstawiony, przejdźmy zatem do przykładów ilustrujących działanie <strong>formuły tablicowej jednokomórkowej</strong>.</p>
<p> </p>
<p>Powróćmy do przykładu wyliczenia wypłat i spróbujmy wykonać operację, której efektem będzie poznanie wartości wszystkich wypłat. W tradycyjny sposób wykonalibyśmy krok pośredni polegający na wyliczeniu wypłat cząstkowych (każdego z pracowników) by w kroku kolejnym uzyskane wyniki wypłat do siebie dodać.</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image10.png" alt="image10" width="700" height="272" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>To samo zadanie można by było wykonać z pominięciem wyliczenia wypłat poszczególnych pracowników, warunkiem jest skorzystanie z funkcji tablicowej. Należy skorzystać z formuły: <strong>=SUMA(L5:L14*M5:M14)</strong> (pamiętamy o zatwierdzeniu formuły klawiszami: Ctrl+Shift+Enter)</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image11.png" alt="image11" width="700" height="272" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Działanie funkcji tablicowej sprowadza się do wymnożenia przez siebie wartości z określonych zakresów (w pamięci komputera powstaje nowa tablica składająca się z wartości wykonania działania liczba godzin * stawka) a następnie ich dodania.</p>
<p> </p>
<p>W tym przypadku alternatywą dla formuły tablicowej mogłaby być funkcja: <strong>SUMA.ILOCZYNÓW</strong></p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image12.png" alt="image12" width="700" height="255" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Funkcję tablicową również możemy użyć do policzenia wystąpień danego zestawu danych w zależności od ustalonych kryteriów. Celem zilustrowania przykładu posłużmy się używanym do tej pory zestawem danych.</p>
<p> </p>
<p>Spróbujmy ustalić liczbę osób, które pracowały ponad 30 godzin. Aby zrealizować zadanie należy posłużyć się formułą tablicową: <strong>=SUMA((G4:G13>30)*1)</strong></p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image13.png" alt="image13" width="700" height="353" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Formuła ta działa ponieważ funkcja SUMA w tym przypadku nie sumuje wartości tylko je zlicza. Dzieje się tak ponieważ funkcja SUMA wykonuje dodawanie logicznego mnożenia. Spełnienie warunku powoduje przekazanie do funkcji SUMA działania: <strong>PRAWDA (wartość ta równa się 1) x</strong> <strong>1</strong> Wartość 1 (jeśli warunek jest spełniony) razy 1 (z definicji formuły) daje w wyniku 1. Suma wszystkich jedynek jest liczbą osób spełniających ustalony warunek.</p>
<p> </p>
<p>W przypadku takim jak ten gdzie został ustalony tylko jeden warunek należy pamiętać, że warunek ten musi zostać wymnożony przez wartość 1. W przeciwnym wypadku funkcja nie zadziała.</p>
<p> </p>
<p>Budowa formuły nie musi ograniczać się do jednego warunku. Spróbujmy zatem ustalić liczbę osób spełniających dwa warunki: liczba godzin poniżej 20 z stawką powyżej 20 zł.</p>
<p> </p>
<p>Formuła, która wyliczy liczbę osób spełniające oba kryteria będzie miała postać: <strong>=SUMA((G4:G13<20)*(H4:H13>20))</strong></p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image14.png" alt="image14" width="700" height="387" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Wynikiem działania formuły jest wartość 3. W przypadku tym nie musieliśmy definiować mnożenia przez 1 gdyż formuła ta została zbudowana poprzez zdefiniowanie dwóch warunków. Działanie funkcji opiera się na założeniu: <strong>PRAWDA (wartość 1) razy FAŁSZ (wartość 0) = 0</strong> W przypadku uzyskania dwóch wartości PRAWDA (działanie 1 x 1 = 1) otrzymujemy wartość 1 w każdym innym przypadku wartość wyniesie 0 (mnożenie przez 0 zawsze da 0) Wartości uzyskane dzięki wykonaniu logicznego mnożenia zostają przekazane do funkcji SUMA i są do siebie dodawane. Wynik dodawania jest liczbą osób spełniających oba kryteria.</p>
<p> </p>
<p>Liczba definiowanych warunków jest oczywiście zależna od naszych potrzeb.</p>
<p> </p>
<p>Zanim przejdziemy dalej jeszcze jeden przykład, który pokaże jak zsumować wartości wypłat od ustalonego kryterium. Celem lepszego zobrazowania działania formuły do arkusza została dodana jeszcze jedna kolumna, przyporządkowująca pracownika do konkretnego działu firmy. Arkusz przedstawia się następująco.</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image15.png" alt="image15" width="700" height="272" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Naszym celem jest zsumowanie wypłat działu kadry. Aby zsumować wypłaty należy posłużyć się formułą: <strong>=SUMA(JEŻELI(H4:H13=J16;K4:K13;0))</strong></p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image16.png" alt="image16" width="700" height="319" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Zadaniem użytej funkcji JEŻELI jest sprawdzenie czy w zdefiniowanym zakresie od H4 do H13 wystąpi zmienna określona w komórce J16 (kadry) W przypadku spełnienia warunku do funkcji SUMA zostaje przekazana odpowiadająca wartość z zakresu od K4 do K13. Wynikiem działania formuły jest zsumowanie wszystkich wartości wypłat działu kadry.</p>
<p> </p>
<p>W przedstawionych przykładach tablice były przechowywane w komórkach arkusza, lecz wcale tak być nie musi. Tablicę również możemy definiować sami a jej lokalizacją może być formuła. Tablica zdefiniowana w ten sposób będzie przechowywana w pamięci komputera. Tablica ta nosi nazwę <strong>stałej tablicowej</strong>.</p>
<p> </p>
<p>Tworzenie stałej tablicowej sprowadza się do wypisania jej elementów, które są objęte <strong>nawiasami</strong> <strong>klamrowymi - {}. </strong>Przykładowa tablica może zostać zdefiniowana w ten sposób - {2;6;10;14}</p>
<p> </p>
<p>Tak określoną tablicę możemy oczywiście łączyć z funkcjami - np. celem dodania elementów tablicy można połączyć ją z funkcją SUMA: <strong>=SUMA({2;6;10;14})</strong> Wynikiem funkcji będzie liczba 32. Co należy zaznaczyć, to to, że w przypadku definiowania stałej tablicowej nawiasy klamrowe umieszczamy sami.</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image17.png" alt="image17" width="700" height="266" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Definicja tworzonych formuł nie musi sprowadzać się do użycia tylko jednej stałej tablicowej lecz możemy użyć ich wiele - wszystko zależy od potrzeb i charakteru tworzonej formuły. Poniżej przykład z wykorzystaniem dwóch stałych tablicowych. W przykładzie została użyta formuła:<strong> =SUMA({2;6;10;14}-{1;2;3;4})</strong></p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image18.png" alt="image18" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Funkcjonowanie formuły opiera się na wykonaniu określonych działań na zdefiniowanych tablicach (w tym przypadku realizowane jest odejmowanie oraz sumowanie). Wyliczenie sprowadza się do wykonania następującego działania: (2-1)+(6-2)+(10-3)+(14-4) - w pierwszej kolejności jest wykonywane odejmowanie tablic - co prowadzi do zapisania w pamięci komputera tablicy {1;4;7;10} a następnie zsumowania jej elementów. Wynikiem formuły jest wartość 22.</p>
<p> </p>
<p>Stałe tablicowe można łączyć z tablicami przechowywanymi w komórkach arkusza. Poniżej ten sam przykład co powyżej z tą różnicą, że tablica <strong>{1;2;3;4} </strong>została umieszczona w komórkach od <strong>A1</strong> do <strong>A4</strong> (umiejscowienie tablicy w kolumnie a nie w wierszu ma swoje konsekwencję ale o tym za chwilę).</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image19.png" alt="image19" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>W definicji stałej tablicowej mogą być zawarte taki elementy jak: <strong>tekst</strong> (tekst musi być objęty cudzysłowem); <strong>liczby</strong>; <strong>wartości logiczne</strong> czy <strong>wartości błędów</strong>. W budowaniu stałych tablicowych należy unikać stosowania: <strong>innych tablic</strong>; <strong>funkcji</strong>. Definiowane <strong>wartości liczbowe</strong> muszą być pozbawione takich znaków jak: nawias, kropka, symbol waluty czy procent.</p>
<p> </p>
<p>Na początku wpisu zasygnalizowałem, że tablica może być jednowymiarowa lub dwuwymiarowa. Tablica jednowymiarowa może obejmować swym zakresem wiersz bądź kolumnę, co oznacza, że tworzona tablica może zajmować wiersz (orientacja pozioma) bądź kolumnę (orientacja pionowa). Wybór orientacji wymusza na nas zastosowanie odpowiedniego zapisu. Poszczególne elementy tablicy o orientacji poziomej oddzielać od siebie będziemy <strong>lewymi ukośnikami</strong> zaś elementy tablicy pionowej oddzielamy <strong>średnikami</strong>. Tak więc przykładowa formuła: <strong>={1\2\3\4\5\6\7} </strong>oznaczać będzie tablicę umieszczoną w wierszu zaś formuła: <strong>={1;2;3;4;5;6;7}</strong> tablicę umieszczoną w kolumnie. Aby wprowadzić opisane formuły należy zaznaczyć siedem komórek arkusza (siedem gdyż tablica zawiera siedem elementów) i zatwierdzić wpis klawiszami: Ctrl+Shift+Enter</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image20.png" alt="image20" width="700" height="317" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>W przypadku tablicy dwuwymiarowej definicję tablicy rozpoczynamy od zdefiniowania zawartości pierwszego wiersza by za pomocą znaku <strong>;</strong> przejść do określenia elementów wiersza kolejnego. <strong>Tablicę dwuwymiarową definiujemy wierszami</strong>. Definicja przykładowej tablicy o wymiarach 5x2 będzie wyglądać następująco: <strong>={1\2\3\4\5;6\7\8\9\10} </strong></p>
<p> </p>
<p>Ktoś mógłby zapytać - Czy ten sam efekt uzyskamy tworząc tablicę nie poprzez określenie kolejnych wierszy lecz kolumn? Formuła budująca tabelę miałaby zatem postać: <strong>={1;6\2;7\3;8\4;9\5;10} </strong>Niestety tak wprowadzona formuła zakończy się błędem.</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image21.png" alt="image21" width="700" height="221" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Przy ręcznej definicji tablic dwuwymiarowych należy być ostrożnym gdyż tablica musi zawierać taką samą liczbę elementów - każdy wiersz tablicy dwuwymiarowej musi zawierać tą samą liczbę elementów. Poniższa definicja tabeli jest nieprawidłowa, ponieważ w trzecim wierszu zostały określone tylko 4 elementy, gdy zaś w pozostałych dwóch jest ich 5: <strong>={1\2\3\4\5;6\7\8\9\10;11\12\13\14}</strong></p>
<p> </p>
<p>Dla ułatwienia budowy przyszłych odwołań definiowane tablice można nazywać. Poniżej przykład przypisania nazwy do tablicy: <strong>={"Sty";"Lut";"Mar";"Kwi";"Maj";"Cze";"Lip";"Sie";"Wrz";"Paź";"Lis";"Gru"}</strong></p>
<p> </p>
<p>W oknie <strong>Formuły/Nazwy zdefiniowane/Definiuj nazwę</strong> można określić nazwę odwołania. Poniżej na przykładzie zdefiniowana została tablica o nazwie: <strong>miesiące</strong></p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image22.png" alt="image22" width="700" height="447" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Od tego momentu do nazwy tej możemy odwoływać się w ten sam sposób jak to robimy w przypadku wywołania funkcji, zdefiniowana nazwa pojawi się na liście proponowanych.</p>
<p> </p>
<p>Nazwę możemy zdefiniować również po zaznaczeniu komórek w których znajduje się tablica (w przykładzie poniżej komórki od B2 do B13) i określeniu nazwy w <strong>Polu nazwy</strong>.</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image23.png" alt="image23" width="700" height="619" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Do tej pory pokazałem jak utworzyć tablicę tak więc parę przykładów jak przeprowadzić działania na tablicach.</p>
<p> </p>
<p>Poniższa funkcja do każdego elementu tablicy dodaje 5: <strong>={1\2\3\4\5;6\7\8\9\10}+5</strong> Oczywiście wykonane działanie nie musi ograniczać się tylko do dodawania.</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image24.png" alt="image24" width="700" height="201" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Działania mogą być przeprowadzane również z wykorzystaniem innych tablic. Na przykład poniższa formuła odejmuje od siebie poszczególne elementy tablic: <strong>={10\20\30\40\50;60\70\80\90\100}-{1\2\3\4\5;6\7\8\9\10}</strong></p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image25.png" alt="image25" width="700" height="175" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>O ile jak to zostało zaznaczone wcześniej elementem tablicy nie może być funkcja tak nic nie stoi na przeszkodzie aby daną funkcję wykorzystać do wykonania działania na elementach tablicy. Poniżej przykłady połączenia tablicy z funkcją PIERWIASTEK oraz POTĘGA.</p>
<p> </p>
<p><strong>=PIERWIASTEK({10\20\30\40\50;60\70\80\90\100})</strong></p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image26.png" alt="image26" width="700" height="201" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p><strong>=POTĘGA({10\20\30\40\50;60\70\80\90\100};2)</strong></p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image27.png" alt="image27" width="700" height="201" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Podczas pracy z tablicami bardzo często zachodzi potrzeba zmiany układu tablicy. Najprościej można to wytłumaczyć w ten sposób, że to co mamy umieszczone w wierszu należy mieć w kolumnie (oczywiście sytuacja odwrotna również jest dozwolona). Aby wykonać zadanie należy posłużyć się funkcją <strong>TRANSPONUJ</strong>.</p>
<p> </p>
<p>Zaczniemy od przykładu z funkcją jednowymiarową i spróbujemy transponować tablicę pionową do tablicy poziomej. Poniżej przykład transponowania tablicy nazwanej: <strong>tydzień</strong> W komórkach od C2 do C8 została wprowadzona funkcja tablicowa: <strong>={"Pon";"Wto";"Śro";"Czw";"Pią";"Sob";"Nie"} </strong>Aby zmienić układ tablicy posłużono się funkcją tablicową: <strong>=TRANSPONUJ(tydzień)</strong>, która została umieszczona w zakresie od F2 do L2</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image28.png" alt="image28" width="700" height="187" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Te same zadanie można by było wykonać stosując formuły: <strong>=TRANSPONUJ({"Pon";"Wto";"Śro";"Czw";"Pią";"Sob";"Nie"})</strong></p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image29.png" alt="image29" width="700" height="185" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>bądź: <strong>=TRANSPONUJ(C2:C8)</strong></p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image30.png" alt="image30" width="700" height="186" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Ciekawe przykłady obrazujące wykorzystanie funkcji tablicowych to te w których coś musimy policzyć.</p>
<p> </p>
<p>Poniżej przykład ćwiczenia w którym to powiedzmy uczniowie za poprawne zachowanie i aktywność zdobywali plusy. Na koniec miesiąca dla najaktywniejszych nauczyciel przygotował nagrodę a że konkurowały ze sobą również klasy to należy również policzyć sumę wszystkich zdobytych punktów.</p>
<p> </p>
<p>Aby wyłonić zwycięzcę należy policzyć ilość zdobytych plusów. Aby zliczyć plusy zdobyte przez ucznia należy skorzystać z funkcji <strong>DŁ</strong>. Funkcja zwraca liczbę znaków ciągu tekstowego. Aby policzyć ilość plusów pierwszego ucznia wydajemy komendę: <strong>=DŁ(E4)</strong> Formułę oczywiście kopiujemy do pozostałych komórek.</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image31.png" alt="image31" width="700" height="250" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Po wykonaniu zliczenia plusów każdego z uczniów by uzyskać ich ogólną ilość należy skorzystać z funkcji SUMA.</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image32.png" alt="image32" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Do zliczenia ilości wszystkich plusów można by było użyć o to taką funkcję: <strong>=SUMA(DŁ(E4:E8))</strong> Funkcja ta jest funkcją tablicową zliczającą ilość znaków w zakresie komórek od E4 do E8.</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image33.png" alt="image33" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Jak widać powyżej uzyskany wynik jest tożsamy z tym jaki uzyskaliśmy w poprzednik kroku.</p>
<p> </p>
<p>No to przejdźmy do kolejnego przykładu wykorzystującego funkcje tablicowe. Poniżej na zrzucie został zaprezentowany arkusz w którym zebrano wartości pomiarów dokonanych przez jakiś system pomiarowy (nie jest ważne jaki, lecz celem uproszczenia dalszego opisu przyjmijmy, że jest to temperatura). W kolejnym kroku należy z zebranych danych wyznaczyć średnią trzech najwyższych pomiarów. Aby wybrać trzy najwyższe wartości z zakresu danych należy posłużyć się funkcją: <strong>MAX.K</strong> (analogicznie działa funkcja <strong>MIN.K</strong> wybierając z zakresu danych najmniejszą wartość n). Składnia funkcji jest następująca: <strong>MAX.K(dane;n)</strong> W składni funkcji MAX.K należy określić:</p>
<ul>
<li style="padding-left: 30px;">dane - tablica lub zakres danych, z których będzie wyznaczana n-ta największą wartość,</li>
<li style="padding-left: 30px;">n - pozycja danej (od największej) w tablicy lub zakresie komórek.</li>
</ul>
<p> </p>
<p>Tak więc by wybrać wartość najwyższą z pomiarów należy posłużyć się formułą: <strong>=MAX.K(D4:D18;1</strong>) zaś by drugą najwyższą: <strong>=MAX.K(D4:D18;2)</strong> Wartości kolejne wybieramy za pomocą modyfikacji parametru n.</p>
<p> </p>
<p>Po ustaleniu trzech najwyższych wartości temperatury z wartości tych zostaje wyciągnięta średnia.</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image34.png" alt="image34" width="700" height="401" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Aby pominąć etap wyznaczenia trzech najwyższych wartości pomiaru i uzyskać od razu średnią możemy posłużyć się taką formułą: <strong>=ŚREDNIA(MAX.K(D4:D18;1);MAX.K(D4:D18;2);MAX.K(D4:D18;3))</strong></p>
<p> </p>
<p>Zastosowanie formuły da nam wynik średniej trzech najwyższych pomiarów, w przypadku gdybyśmy chcieli wyliczyć wartość dla trzech najniższych pomiarów funkcję MAX.K należy zastąpić MIN.K</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image35.png" alt="image35" width="700" height="401" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Przedstawiona powyżej formuła jest tożsama z formułą: <strong>=ŚREDNIA(MAX.K(D4:D18;{1\2\3}))</strong> w której do wyliczenia średniej użyto stałej tablicowej.</p>
<p> <img src="http://slow7.pl/images/stories/office/excel_9/image36.png" alt="image36" width="700" height="401" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p> </p>
<p>Podsumowując i kończąc ten wpis należy stwierdzić, że przykładów z użyciem tablic może być wiele a te przedstawione mają za cel pokazanie jak wykorzystać tą funkcjonalność Excela (taki zarys) a także wyższości rozwiązania opartego na tablicach nad tradycyjnym. Mam nadzieję, że po lekturze artykułu część z Was w swoich arkuszach ten mechanizm zacznie stosować a w przypadku zetknięcia się z arkuszami, które zostały zbudowane na bazie funkcji tablicowych ich ewentualna modyfikacja nie sprawi Wam problemów.</p></div>Excel w zadaniach. Data i czas.2015-11-05T21:01:55+00:002015-11-05T21:01:55+00:00http://slow7.pl/office/item/106-excel-w-zadaniach-data-i-czaspikolo<div class="K2FeedImage"><img src="http://slow7.pl/media/k2/items/cache/d6e7bc44feb1613d041d5385e5745b10_S.jpg" alt="Excel w zadaniach. Data i czas." /></div><div class="K2FeedIntroText"><p>W codziennej pracy z arkuszem Excela często musimy operować datami bądź czasem. Dla przykładu tworzone są arkusze sprzedaży produktów, analizy wyników czy harmonogramy. Początkowa praca z datami może wydawać się trudna i skomplikowana, ale po poznaniu zasad rządzących tym typem danych okazuje się, że nie taki diabeł straszny. Tak więc by posiąść tą wiedzę zapraszam do lektury wpisu. </p>
</div><div class="K2FeedFullText">
<p style="margin-bottom: 0.0001pt;">Zanim przejdziemy dalej kilka słów wstępu i uwag ogólnych. Ustalmy, że w przykładach będziemy operować na dacie w formacie: <strong>rok-miesiąc-dzień</strong>. Oznacza to, że przykładowa data 12 luty 1980r przyjmie postać: 1980-02-12 (jak zmienić format daty pokażę w dalszej części wpisu).</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Aby móc operować na datach w pierwszej kolejności musimy zrozumieć jak Excel intrepretuje datę. Dla programu data jest po prostu liczbą. Liczba ta bądź tzw. numer seryjny odpowiada liczbie dni jaka upłynęła od daty początkowej, którą ustalono na dzień 0 stycznia 1900 roku. Niektórym po przeczytaniu ostatniego zdania od razu zapali się „czerwona lampka” - przecież taka data jak 0 stycznia 1900 rok nie istnieje. Oczywiście jest to prawda, ale trzeba było przy operowaniu datami (a raczej jak już wiesz kolejnymi numerami sekwencyjnymi) wykorzystać liczbę 0. Tak więc fikcyjna data 1900-01-00 odpowiada liczbie 0, a każda kolejna data jest związana ze zwiększaniem numeru sekwencyjnego o 1. Dla przykładu numer seryjny równy 1 to dzień 1 stycznia 1900 roku, numer seryjny równy 2 to dzień 2 stycznia 1900 roku itd.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Aby sprawdzić w działaniu efekt wykorzystania kolejnych numerów sekwencyjnych w dowolnej komórce arkusza wpisujemy liczbę i zmieniamy format wyświetlania. Proces ten możemy wykonać dwojako:</p>
<ul>
<li style="list-style-type: none;">
<ul>
<li style="list-style-type: none;">
<ul>
<li>wybieramy format z rozwijanej listy w naszym przypadku <strong>Data krótka</strong> bądź <strong>Data długa</strong>,</li>
<li>po kliknięciu na komórkę PPM z menu kontekstowego wybieramy <strong>Formatuj komórki</strong> a następnie na karcie <strong>Liczby</strong> w sekcji <strong>Kategoria</strong> interesujący nas format daty.</li>
</ul>
</li>
</ul>
</li>
</ul>
<p> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image1.png" alt="image1" width="700" height="530" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Excel potrafi operować na datach z zakresu od 1 stycznia 1900 r. do 31 grudnia 9999 r. (numer seryjny 2 958 465). Każda inna data nie mieszcząca się w tym zakresie zostanie sformatowana jako tekst.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Poniżej przedstawiono kilka sposobów na wprowadzenie daty do arkusza.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<table border="0" style="border-collapse: collapse;" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td style="width: 76.3pt; border: 1pt solid windowtext; padding: 0cm 5.4pt;" valign="top" width="102">80-2-12</td>
<td style="width: 5cm; border-width: 1pt 1pt 1pt medium; border-style: solid solid solid none; border-color: windowtext windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">12 luty 1980</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">1980-2-12</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">12 luty 1980</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">12 lut 1980</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">12 luty 1980</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">12-luty-1980</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">12 luty 1980</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">80/2/12</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">12 luty 1980</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">1980/2/12</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">12 luty 1980</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">80/2-12</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">12 luty 1980</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">1980/2/12</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">12 luty 1980</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">lut 12</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">12 lutego bieżącego roku</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">12 lut</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">12 lutego bieżącego roku</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">2/12</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">12 lutego bieżącego roku</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">2-12</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">12 lutego bieżącego roku</td>
</tr>
</tbody>
</table>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Możliwe jest zastosowanie skrótów miesiąca. Oznacza to, że gdy wpiszemy trzy pierwsze litery miesiąca zostanie to zinterpretowane przez program jako nazwa miesiąca. Zasada ta nie dotyczy miesiąca sierpnia - by skorzystać ze skrótu należy użyć: sier</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Ale data to nie tylko dzień, miesiąc i rok, ale również godziny, minuty oraz sekundy. Excel umożliwia nam również pracę na danych reprezentujących czas. Czas w Excelu jest reprezentowany poprzez wartość dziesiętną, która jest dodawana do numeru seryjnego. Oznacza to, że w przypadku wpisania numeru seryjnego 42186, numer ten zostanie zinterpretowany (oczywiście po zmianie formatowania) jako data: 1 lipca 2015, godzina zostanie ustawiona na północ. Poszerzenie liczby o wartość dziesiętną spowoduje dodanie do daty informacji o czasie. Do tego samego numeru sekwencyjnego 42186 dodajemy połówkę - 42186,5 - Excel tak wyrażoną liczbę po sformatowaniu (format Data długa) będzie traktował jako datę: 1 lipca 2015, godzina 12.00</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Poniżej przedstawiono przykładowe wartości dziesiętne określające czas (w pierwszej kolumnie wartość godziny):</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<table border="1" style="border-collapse: collapse;" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td style="width: 76.3pt; border: 1pt solid windowtext; padding: 0cm 5.4pt;" valign="top" width="102">3</td>
<td style="width: 5cm; border-width: 1pt 1pt 1pt medium; border-style: solid solid solid none; border-color: windowtext windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">0,125</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">6</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">0,25</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">9</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">0,375</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">12</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">0,5</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">15</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">0,625</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">18</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">0,75</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">21</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">0,875</td>
</tr>
</tbody>
</table>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Lecz co w przypadku gdy chcemy skorzystać z czasu w formie bardziej zaawansowanej tak by móc określić czas w obrębie pojedynczych minut? Oczywiście zadanie to sprowadza się do wpisania odpowiedniej wartości, która jest wyliczana przy wykorzystaniu formuły: =1/(24*60). Uzyskana wartość 0,00069444 odpowiada jednej minucie. Np. chcąc uzyskać datę: 1 lipca 2015 godzina 11:32 należy użyć wartości: 42186,48056. Obliczenie konkretnej wartości czasu może okazać się nieco problematyczne, gdyż należy uważać na zaokrąglenia wartości.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p>Dodatkowo, by w ten sposób zacząć wprowadzać czas, w którym będą uwzględnione sekundy, trzeba posłużyć się wartością: 0,00001157 (formuła: =1/(24*60*60) - 1/(godziny*minuty*sekundy), która odpowiada jednej sekundzie. Na przykład dacie: 2015-12-31 23:59:59 odpowiada wartość: 42369,9999884259.</p>
<p> </p>
<p style="margin-bottom: 0.0001pt;">Aby do arkusz wprowadzić informację o czasie tak, by Excel poprawnie zinterpretował te dane, można skorzystać z jednego przedstawionych poniżej formatów wprowadzania czasu:</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<table border="1" style="border-collapse: collapse;" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td style="width: 76.3pt; border: 1pt solid windowtext; padding: 0cm 5.4pt;" valign="top" width="102">10:30:00 am</td>
<td style="width: 5cm; border-width: 1pt 1pt 1pt medium; border-style: solid solid solid none; border-color: windowtext windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">10:30 AM</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">10:30:00 AM</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">10:30 AM</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">10:30 pm</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">10:30 PM</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">10:30</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">10:30</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">17:30</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">17:30</td>
</tr>
</tbody>
</table>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Podczas procesu wprowadzania dat do arkusza kalkulacyjnego należy być bardzo uważnym, gdyż format daty, do której najczęściej jesteśmy przyzwyczajeni: <strong>dzień:miesiąc:rok </strong>nie zostanie poprawnie zinterpretowany przez program jako data. Na szczęście możemy to zmienić. By dokonać tej zmiany musimy przejść do <strong>Panelu sterowania,</strong> a następnie do <strong>Region</strong> bądź <strong>Opcje regionalne i językowe</strong> (zależne od posiadanej wersji systemu Windows). W nowo otwartym oknie, na karcie <strong>Formaty,</strong> wybieramy <strong>Ustawienia dodatkowe</strong>. W kolejnym oknie <strong>Dostosowywanie formatu,</strong> na karcie <strong>Data,</strong> w sekcji <strong>Formaty daty</strong> określamy obowiązujący format (punkt 1). Format daty definiujemy za pomocą znaków: d - dzień; M - miesiąc; r - rok. Chcąc by obowiązującym formatem daty był zapis np. 23.04.1980 format musimy zdefiniować jako: <strong>dd.MM.rrrr</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image2.png" alt="image2" width="700" height="549" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">W przypadku definiowania daty dodatkową uwagę należy zwrócić na sytuację, w której rok podajemy jako zapis dwucyfrowy. Excel dwucyfrowe daty lat z zakresu od 00 do 29 traktuje jako lata XXI wieku, zaś daty lat z zakresu od 30 do 99 zostaną potraktowane jako lata wieku XX. By zmienić to ustawienie należy przejść do tego samego okna, w którym definiowaliśmy obowiązujący format daty i w sekcji <strong>Kalendarz</strong> zdefiniować podział wieku (punkt 2). By przypisać wszystkie dwucyfrowe daty lat do wieku XXI należy w polu <strong>do</strong> wpisać wartość 2100 (wartość 00 będzie traktowana jako rok 2100).</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Po tym krótkim wstępie teoretycznym przejdziemy do zadań związanych z datami i czasem.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Pierwszą z funkcji, którą chciałbym zaprezentować jest funkcja: <strong>DZIŚ().</strong> Zadaniem tej funkcji jest wyświetlenie bieżącej daty, przy czym wyświetlana data nie jest związana z czasem wstawienia funkcji do arkusza. Oznacza to, że funkcja ta będzie automatycznie korygować bieżącą datę. Gdy otworzymy arkusz 1 kwietnia 2015 roku zostanie wyświetlona ta data, zaś gdy ten sam arkusz otworzymy dzień później data zmieni się na 2 kwietnia 2015 roku. Funkcja ta nie posiada żadnych paramentów, tak więc by jej użyć stosujemy zapis: <strong>=DZIŚ()</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Możliwe jest połączenie funkcji <strong>DZIŚ</strong> z tekstem. Aby np. wyświetlić zapis: <strong>Dzisiaj jest: 13-10-2015 (wtorek)</strong> należy użyć formuły: <strong>="Dzisiaj jest: "&TEKST(DZIŚ(); "d-mm-rrrr (dddd)")</strong> Do wyświetlenia tej formułki została dodatkowo użyta funkcja <strong>TEKST</strong>, której działania wybacz Czytelniku w tym wpisie nie będę tłumaczył (funkcjami tekstowymi zajmiemy się wkrótce). Z funkcją <strong>DZIŚ</strong> możemy stosować dodatkowo operatory dodawania (+) oraz odejmowania (-), np. zapis: <strong>=DZIŚ()+3</strong> spowoduje wyświetlenie daty o trzy dni do przodu.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Analogicznie, by do arkusza wprowadzić informację o czasie, należy użyć funkcji: <strong>TERAZ</strong>. Formuła: <strong>=TERAZ()</strong> spowoduje wyświetlenie bieżącej daty w połączeniu z aktualną godziną. Funkcja <strong>TERAZ</strong> również zaktualizuje czas po ponownym otwarciu arkusza (by ręcznie wymusić aktualizację czasu wciśnij klawisz F9). W tej funkcji również możliwe jest użycie operatorów dodawania (+) oraz odejmowania (-).</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image3.png" alt="image3" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Aby wprowadzić datę i czas można posłużyć się dodatkowo skrótami:</p>
<ul>
<li style="list-style-type: none;">
<ul>
<li style="list-style-type: none;">
<ul>
<li>aby wstawić bieżącą datę, naciśnij kombinację klawiszy CTRL+; (średnik).</li>
<li>aby wstawić bieżącą godzinę, naciśnij kombinację klawiszy CTRL+SHIFT+; (średnik).</li>
<li>aby wstawić bieżącą datę i godzinę, naciśnij kombinację klawiszy CTRL+; (średnik), naciśnij klawisz spacji, a następnie naciśnij kombinację klawiszy CTRL+SHIFT+; (średnik).</li>
</ul>
</li>
</ul>
</li>
</ul>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Dowolną datę możemy również wprowadzić do arkusza z wykorzystaniem funkcji: <strong>DATA.</strong> Przykładowy zapis formuły: <strong>=DATA(1980;4;21) </strong>wprowadzi do arkusza datę 21 kwietnia 1980 roku. Oczywiście zamiast definiowania konkretnej wartości daty w definicji formuły możemy użyć odwołania do komórek, tak jak na poniższym przykładzie.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image4.png" alt="image4" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Analogicznie działa funkcja: <strong>CZAS.</strong> Zapis formuły: <strong>=CZAS(14;34;15)</strong> spowoduje wprowadzenie do arkusza godziny 14 minut 34 i 15 sekund. I tu również zamiast definiować stałe wartości możemy je pobrać z określonych komórek.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image5.png" alt="image5" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Aby uzyskać wartość liczbową konkretnej daty możemy posłużyć się funkcją <strong>DATA.WARTOŚĆ</strong> Funkcja ta zamienia wprowadzony tekst spełniający wymogi formatu data na jej numer sekwencyjny. Poniżej na zrzucie przedstawiono zamianę daty 2000-01-01 na jej odpowiednik liczbowy.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image6.png" alt="image6" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Podczas pracy z Excelem często zachodzi potrzeba wypełnienia komórek sekwencją dat. Daty te z reguły różnią się od siebie jakimś stałym odstępem czasowym, np. dniami czy miesiącami. Aby wygenerować taką sekwencję dat możemy posłużyć się mechanizmem autowypełnienia. Generowanie dat sprowadza się do wpisania pierwszej daty, a następnie na kliknięciu PPM na uchwyt wypełnienia (dla przypomnienia kwadracik w dolnym lewym rogu komórki) i wybraniu interesującego nas interwału. Do dyspozycji mamy cztery opcje: wypełnij dniami; wypełnij dniami powszednimi; wypełnij miesiącami oraz wypełnij latami.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><span style="background-color: #ffff00;"><img src="http://slow7.pl/images/stories/office/excel_8/image7.png" alt="image7" style="display: block; margin-left: auto; margin-right: auto;" /></span></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Niestety Excel nie oferuje nam wypełnienia serią dat, których interwał obejmowałby tydzień. Ale jest i na to rada gdyż by rozwiązać ten problem możemy posłużyć się odpowiednią formułą. Aby daty były odległe od siebie o 7 dni możemy użyć o to takiej formuły: <strong>=C1+7</strong> Oczywiście w komórce C1 umieszczamy datę początkową.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image8.png" alt="image8" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Aby daty odległe były od siebie o jeden miesiąc użyj formuły: <strong>=DATA(ROK(C1);MIESIĄC(C1)+1;DZIEŃ(C1))</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image9.png" alt="image9" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Zaś by otrzymać serię dat z interwałem wynoszącym rok: <strong>=DATA(ROK(C1)+1;MIESIĄC(C1);DZIEŃ(C1))</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image10.png" alt="image10" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Serię dni tygodnia bez weekendów (sobót i niedziel) wygenerujesz za pomocą funkcji (początkowy dzień nie może być ani sobotą ani niedzielą): <strong>=JEŻELI(DZIEŃ.TYG(C1)=6;C1+3;C1+1)</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><strong><img src="http://slow7.pl/images/stories/office/excel_8/image11.png" alt="image11" style="display: block; margin-left: auto; margin-right: auto;" /></strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Całkiem innym zagadnieniem jest gdy daty importujemy z np. pliku tekstowego, który jest wynikiem utworzenia np. z jakiegoś systemu pomiarowego. Aby zamienić przykładowy tekst reprezentujący datę na format daty akceptowalny przez Excela można wykorzystać taką oto formułę (data w formacie tekstowym to: 29082015): <strong>=DATA(PRAWY(C1;4);FRAGMENT.TEKSTU(C1;3;2);LEWY(C1;2))</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image12.png" alt="image12" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Oczywiście różnych wariantów reprezentacji daty może być wiele ale wtedy wystarczy zmodyfikować powyższą formułę. Do zbudowania formuły zostały użyte funkcje tekstowe <strong>PRAWY</strong>, <strong>LEWY</strong>, <strong>FRAGMENT.TEKSTU</strong> Działanie tych funkcji wykracza poza temat wpisu więc by zrozumieć ich działanie odsyłam do pomocy.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Poniżej przedstawiam kilka modyfikacji przedstawionej formuły:</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Dla daty 20150809 - formuła: <strong>=DATA(LEWY(C1;4);FRAGMENT.TEKSTU(C1;5;2);PRAWY(C1;2))</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image13.png" alt="image13" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Dla daty 2015 08 09 - formuła: <strong>=DATA(LEWY(C1;4);FRAGMENT.TEKSTU(C1;6;2);PRAWY(C1;2))</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image14.png" alt="image14" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Dla daty 29/08/2015 - formuła: <strong>=DATA(PRAWY(C1;4);FRAGMENT.TEKSTU(C1;4;2);LEWY(C1;2))</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image15.png" alt="image15" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Częstym zadaniem, które wykonujemy jest obliczenie ilości dni pomiędzy datami i tak naprawdę by wykonać tę czynność jedyne co musimy wykonać jest to wykonanie operacji odejmowania. Już wiesz Czytelniku, że Excel datę uważa jako liczbę tak więc wynikiem działania będzie odjęcie od liczby reprezentującej datę początkową liczby przypisanej do daty końcowej. Tak więc obliczenie dni pomiędzy datami 2015-03-21 a 2015-02-19 da nam liczbę 30 dni.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image16.png" alt="image16" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">W przypadku wykonania działania odwrotnego uzyskamy wartość: -30 ponieważ odejmowaliśmy datę wcześniejszą od daty późniejszej. Aby uzyskać wynik dodatni możemy użyć funkcji: <strong>MODUŁ.LICZBY</strong> w takiej oto przykładowej formule: <strong>=MODUŁ.LICZBY(D5-D3)</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Tworząc wszelkiego typu raporty np. pracownicze w których prowadzimy ewidencję dni pracy pracowników często potrzebujemy wyliczyć liczbę dni lecz uzyskany wynik nie powinien obejmować weekendów, świąt oraz dni w których pracownik nie był obecny w pracy z jakichkolwiek innych przyczyn. W wyliczeniu dni w których pracownik wykonywał swoje obowiązki pomoże nam funkcja: <strong>DNI.ROBOCZE</strong>. W przykładzie poniżej w zakresie komórek E2:E4 umieszczono daty świąt czyli dni ustawowo wolnych oraz w zakresie E9:E10 zamieszczono daty nieobecności pracownika w pracy z jakichkolwiek innych przyczyn (np. L4, art. 188 czy urlop okolicznościowy) W następnym kroku został wyliczony okres dni obejmujący obecność pracownika. Ilość dni przepracowanych zostało wyliczone w dwóch przedziałach czasowych tj. od 2015-01-01 do 2015-01-07 oraz dla całego roku kalendarzowego. W wyliczeniu dni obecności zastosowano już wspomnianą funkcję <strong>DNI.ROBOCZE </strong>Ogólna składnia funkcji wygląda następująco <strong>=DNI.ROBOCZE(data_początkowa;data_końcowa;święta)</strong>. W przykładzie poniżej dzień początkowy został wpisany do komórki <strong>F15</strong> a dzień końcowy do komórki <strong>G15</strong> natomiast w kolumnie <strong>E</strong> zostały wpisane święta oraz dni w których pracownika w pracy nie było. Po wywołaniu formuły: <strong>=DNI.ROBOCZE(F15;G15;E2:E11) </strong>liczba dni roboczych została ustalona na 3. Zdefiniowany parametr <strong>święta</strong> daje nam możliwość określenia dat dni dodatkowych, które powinny być w ustaleniu liczby dni roboczych pominięte, parametr <strong>święta</strong> jest opcjonalny. W całym roku kalendarzowym liczba dni roboczych została ustalona na 259.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image17.png" alt="image17" width="700" height="361" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Czasem w niektórych firmach dzień weekendu jest ustalony na inne dni niż standardowo i funkcja <strong>DNI.ROBOCZE</strong> tu nam nie pomoże ale na szczęście istnieje jeszcze jedna funkcja, którą możemy użyć do obliczenia dni roboczych pracownika. Mowa tu o funkcji: <strong>DNI.ROBOCZE.NIESTAND</strong> Funkcja ta pozwala nam na określenie, które dni tygodnia są dniami weekendowymi. Ogólna składnia funkcji to: <strong>=DNI.ROBOCZE.NIESTAND(data_początkowa;data_końcowa;weekend,święta)</strong>. W składni funkcji został dodany jeden dodatkowy, opcjonalny argument weekend. Argument ten określa dni tygodnia będące dniami weekendowymi nieuwzględnianymi w liczbie pełnych dni roboczych między datą początkową i datą końcową. Argument ten określa się jako liczbę. Poszczególne liczby oznaczają:</p>
<ul>
<li style="list-style-type: none;">
<ul>
<li style="list-style-type: none;">
<ul>
<li>1 lub pominięty - Sobota, niedziela</li>
<li>2 - Niedziela, poniedziałek</li>
<li>3 - Poniedziałek, wtorek</li>
<li>4 - Wtorek, środa</li>
<li>5 - Środa, czwartek</li>
<li>6 - Czwartek, piątek</li>
<li>7 - Piątek, sobota</li>
<li>11 - tylko niedziela</li>
<li>12 - Tylko poniedziałek</li>
<li>13 - tylko wtorek</li>
<li>14 - tylko środa</li>
<li>15 - tylko czwartek</li>
<li>16 - tylko piątek</li>
<li>17 - tylko sobota</li>
</ul>
</li>
</ul>
</li>
</ul>
<p style="margin-bottom: 0.0001pt;">Poniżej przykład w którym została użyta funkcja <strong>DNI.ROBOCZE.NIESTAND</strong> lecz weekend został ustalony na dni czwartek i piątek.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image18.png" alt="image18" width="700" height="415" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Aby określić większą liczbę dni weekendu i dni, które nie leżą bezpośrednio obok siebie można skorzystać z opcjonalnego sposobu zdefiniowania dni weekendowych. Dni te określa się za pomocą ciągu o długości siedmiu znaków, z których każdy reprezentuje jeden dzień tygodnia, zaczynając od poniedziałku. Cyfra 1 oznacza dzień wolny, natomiast cyfra 0 oznacza dzień roboczy. W tym ciągu dozwolone są tylko znaki 1 i 0. Użycie ciągu 1111111 zawsze spowoduje zwrócenie ciągu 0. Tak więc jeśli dniami weekendowymi byłby dni środa i niedziela ciąg przyjmie postać 0010001. W definicji funkcji ciąg ten należy umieścić w cudzysłowie. Przykładowa funkcja mogłaby by przyjąć postać: <strong>=DNI.ROBOCZE.NIESTAND(M15;N15;"0010001";L2:L11)</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">W pracy z funkcjami daty bardzo często przydaje się obliczenie wieku danej osoby aby wykonać tę czynność można skorzystać z funkcji: <strong>DATA.RÓŻNICA</strong> W przykładzie poniżej obliczono wiek osoby urodzonej w dniu 17.02.1980 (wiek osoby obliczono odnośnie daty 29.20.2015)</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image19.png" alt="image19" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Funkcja <strong>DATA.RÓŻNICA</strong> jest dość zagadkową funkcją bo nic na jej temat nie znajdziemy w pomocy programu Excel, nie widnieje na liście funkcji ani nie pojawia się na liście podczas procesu wpisywania funkcji do komórki arkusza. By z niej skorzystać musimy ją w całości wprowadzić ręcznie. Ogólna składnia funkcji jest następująca: =<strong> DATA.RÓŻNICA(data_początkowa;data_końcowa;"jednostka")</strong> Funkcja <strong>DATA.RÓŻNICA</strong> oprócz obliczenia lat pomiędzy dwoma datami potrafi również obliczyć liczbę dni czy miesięcy. Wszystko zależy od tego jaką jednostkę daty wybierzemy. Jednostkę tę definiujemy za pomocą zmiennych:</p>
<ul>
<li style="list-style-type: none;">
<ul>
<li style="list-style-type: none;">
<ul>
<li><strong>y</strong> - liczba pełnych lat,</li>
<li><strong>m</strong> - liczba pełnych miesięcy,</li>
<li><strong>d</strong> - liczba dni,</li>
<li><strong>md</strong> - różnica między wartościami dni - miesiące i lata nie są uwzględniane,</li>
<li><strong>ym</strong> - różnica między miesiącami - lata i dni nie są uwzględniane,</li>
<li><strong>yd</strong> - różnica między dniami - lata nie są uwzględniane.</li>
</ul>
</li>
</ul>
</li>
</ul>
<p style="margin-bottom: 0.0001pt;">Aby wyliczyć dokładny wiek osoby z dodatkowym uwzględnieniem ilości miesięcy i dni można posłużyć się funkcją: <strong>=DATA.RÓŻNICA(K4;K5;"y")&" lat "&DATA.RÓŻNICA(K4;K5;"YM")&" miesięcy "&DATA.RÓŻNICA(K4;K5;"MD")&" dni"</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image20.png" alt="image20" width="700" height="155" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Jak widać powyżej wiek osoby został ustalony na 35 lat 8 miesięcy i 12 dni.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Kolejne przykłady funkcji pozwalają nam na wyliczenie dnia roku, ilości dni które do końca roku pozostały oraz do określenia daty podanego dnia roku. Dwa pierwsze przykłady zostały wykonane dla daty 2015-10-29 trzeci zaś dla 67 dnia roku 2015.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image21.png" alt="image21" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<ul>
<li style="list-style-type: none;">
<ul>
<li style="list-style-type: none;">
<ul>
<li><strong>przykład pierwszy</strong>: podana data, którym jest dniem roku? - funkcja: <strong>=F5-DATA(ROK(F5);1;0)</strong> przy założeniu, że data znajduje się w komórce <strong>F5</strong>, dla daty dzisiejszej: <strong>=DZIŚ()-DATA(ROK(DZIŚ());1;0)</strong>,</li>
<li><strong>przykład drugi</strong>: ile pozostało dni do końca roku? - funkcja: <strong>=DATA(ROK(F5);12;31)-F5</strong> przy założeniu, że data znajduje się w komórce <strong>F5</strong>, dla daty dzisiejszej:<strong> =DATA(ROK(DZIŚ());12;31)-DZIŚ()</strong></li>
<li><strong>przykład trzeci</strong>: chcemy znać datę określonego dnia roku: funkcja: <strong>=DATA(D9;1;F9)</strong> przy założeniu, że w komórce <strong>D9</strong> znajduje się rok a w komórce <strong>F9</strong> szukany dzień roku.</li>
</ul>
</li>
</ul>
</li>
</ul>
<p style="margin-bottom: 0.0001pt;">Aby wyznaczyć dzień tygodnia należy posłużyć się funkcją: <strong>DZIEŃ.TYG</strong> Po określeniu daty, funkcja zwraca nam jako wynik liczbę od 1 do 7. Numer ten oznacza kolejny dzień tygodnia. Domyślnie pierwszym dniem tygodnia jest niedziela. Poniżej dla daty 2015-10-29 (czwartek) została wywołana funkcja <strong>DZIEŃ.TYG</strong> w pierwszym przykładzie funkcja zwraca wartość 5 gdyż domyślnie czwartek jest piątym dniem tygodnia (funkcja<strong>: =DZIEŃ.TYG(R5)</strong>) natomiast w drugim przykładzie uzyskano wynik 4 ponieważ funkcja <strong>DZIEŃ.TYG</strong> pozwala nam na zmianę domyślnego numerowania początku tygodnia. W drugim przykładzie tydzień rozpoczyna się od poniedziałku (funkcja: <strong>=DZIEŃ.TYG(R10;2)</strong>) Definicja początku tygodnia odbywa się poprzez podanie odpowiedniej wartości parametru <strong>zwracany_typ</strong>.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image22.png" alt="image22" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Aby zwrócić dzień tygodnia jako tekst możemy posłużyć się następującą funkcją: <strong>=TEKST(M19;"dddd")</strong> Funkcja zadziała jeśli w komórce <strong>M19</strong> będzie znajdować poprawnie wprowadzona data.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image23.png" alt="image23" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Rozwiązaniem, które też jest możliwe jest połączenie funkcji <strong>DZIEŃ.TYG</strong> oraz <strong>WYBIERZ</strong> Wypisanie dnia tygodnia zrealizuje oto taka funkcja: <strong>=WYBIERZ(DZIEŃ.TYG(M19;2);"Poniedziałek";"Wtorek";"Środa";"Czwartek";"Piątek";"Sobota";"Niedziela")</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image24.png" alt="image24" width="700" height="111" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Aby wyznaczyć numer tygodnia w roku należy posłużyć się funkcją: <strong>NUM.TYG</strong> Dla daty 2015-10-29 uzyskamy wynik 44 Przykładowa funkcja może przyjąć postać: <strong>=NUM.TYG(K5)</strong> - przy założeniu, że w komórce <strong>K5</strong> została wpisana data.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Aby wyznaczyć pierwszy dzień tygodnia po określonej dacie można posłużyć się formułą: <strong>=D17+F17-DZIEŃ.TYG(D17;2)+(F17<DZIEŃ.TYG(D17;2))*7</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Formuła ta zadziała jeśli:</p>
<ul>
<li style="list-style-type: none;">
<ul>
<li style="list-style-type: none;">
<ul>
<li>w komórce D17 umieścimy datę.</li>
<li>w komórce F17 określimy dzień tygodnia - kolejno dla poniedziałku 1 natomiast dla niedzieli 7</li>
</ul>
</li>
</ul>
</li>
</ul>
<p> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image25.png" alt="image25" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Dla daty 2015-10-29 data pierwszego poniedziałku to 2015-11-02.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">W niektórych sytuacjach do określonej daty musimy dodać odpowiednią liczbę miesięcy (bądź od daty odjąć daną liczbę miesięcy). Sytuacja ta jest trochę problematyczna ponieważ miesiące mają różną liczbę dni. Ale na szczęście z pomocą przychodzi nam funkcja: <strong>NR.SER.DATY</strong> (funkcja ta została wprowadzona w Excel 2010 zastępując funkcję <strong>EDATE</strong>, funkcja <strong>EDATE</strong> dostępna jest po instalacji dodatku <strong>Analysis ToolPak</strong>). Wystarczy, że do komórki wpiszemy formułę: <strong>=NR.SER.DATY(M32;1)</strong> której zadaniem jest do daty umieszczonej w komórce M32 dodanie jednego miesiąca. Wynikiem dodania do dnia 2015-10-31 jednego miesiąca jest dzień 2015-11-30 ponieważ listopad 2015 roku liczy 30 dni.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image26.png" alt="image26" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Aby odjąć miesiące w formule należy zdefiniować ujemną liczbę reprezentującą ilość odejmowanych miesięcy np. <strong>=NR.SER.DATY(M32;-2)</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Aby wyznaczyć ostatni dzień miesiąca należy skorzystać z funkcji <strong>NR.SER.OST.DN.MIES</strong> (funkcja ta została wprowadzona w Excel 2010 zastępując funkcję <strong>EOMONTH</strong>, funkcja ta dostępna jest po instalacji dodatku <strong>Analysis ToolPak</strong>). Zadaniem funkcji jest wyliczenie ostatniego dnia miesiąca, w którym wystąpi data podana jako pierwszy argument zwiększona o liczbę miesięcy podanych jako argument drugi.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Poniżej przykład użycia funkcji odnośnie daty 2015-10-29, zadaniem zastosowanej formuły jest wyświetlenie ostatniego dnia przyszłego miesiąca.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image27.png" alt="image27" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Wszystko fajnie ale co w przypadku w którym będziemy chcieli operować na datach przed rokiem 1900. Niestety program Excel w przypadku tego typu dat nie pozwoli nam na operacje, które przedstawiłem powyżej. Ale na szczęście można ze strony: <a href="http://j-walk.com/ss/excel/files/xdate.htm">http://j-walk.com/ss/excel/files/xdate.htm</a> pobrać dodatek <strong>XDATE</strong>, który z datami sprzed 1900 rokiem sobie poradzi. Dodatek tak naprawdę jest zestawem makr, których zadaniem jest umożliwienie użytkownikowi na operowaniu na datach sprzed roku 1900. Autorem dodatku jest John Walkenbach.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Po pobraniu odpowiednich plików należy je zainstalować tak by Excel mógł obsłużyć funkcje oferowane przez ten dodatek. W tym celu przechodzimy do <strong>Opcji</strong> programu (Plik – Opcje) i w nowo otwartym oknie wybieramy <strong>Dodatki</strong> a następnie w dolnej części okna wybieramy <strong>Przejdź</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image28.png" alt="image28" width="700" height="459" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">W nowym oknie wybieramy <strong>Przeglądaj</strong> i lokalizujemy ściągnięty plik: <strong>xdate.xla</strong> (plik znajduje się w archiwum, należy go uprzednio rozpakować).</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image29.png" alt="image29" width="700" height="489" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Po kliknięciu na <strong>OK</strong> w oknie <strong>Dodatki</strong> powinna pojawić się nowa pozycja <strong>Extended Date Functions</strong> Od tej pory możemy korzystać z funkcji zawartych w tym dodatku.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Poniżej został pokazany przykład arkusza w którym zostały użyte daty sprzed roku 1900 z użyciem funkcji zawartych w dodatku <strong>XDATE</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image30.png" alt="image30" width="700" height="225" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Dodatek oferuje nam następujące funkcje:</p>
<ul>
<li style="list-style-type: none;">
<ul>
<li style="list-style-type: none;">
<ul>
<li><strong>XDATE(rok;miesiąc,dzień,format):</strong> funkcja zwraca datę z podanego roku, miesiąca i dnia. Opcją dodatkową jest określenie formatu przedstawianej daty.</li>
<li><strong>XDATEADD(data;liczba_dni,format)</strong>: dodanie do daty określoną liczbę dni. Opcją dodatkową jest określenie formatu przedstawianej daty.</li>
<li><strong>XDATEDIF(data_1,data_2)</strong>: różnica dni pomiędzy datami.</li>
<li><strong>XDATEYEARDIF(data_1,data_2)</strong>: różnica pełnych lat między datami.</li>
<li><strong>XDATEYEAR(data)</strong>: zwraca rok zawarty w dacie.</li>
<li><strong>XDATEMONTH(data)</strong>: zwraca miesiąc zawarty w dacie.</li>
<li><strong>XDATEDAY(data)</strong>: zwraca dzień zawarty w dacie.</li>
<li><strong>XDATEDOW(data)</strong>: dzień tygodnia, wynikiem wywołania funkcji jest liczba z przedziału od 1 do 7 – numeracja zaczyna się od niedzieli.</li>
</ul>
</li>
</ul>
</li>
</ul>
<p style="margin-bottom: 0.0001pt;">Funkcje związane z datą mamy omówione przejdźmy zatem do funkcji związanych z czasem.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Aby wstawić do arkusza bieżącą datę i czas należy skorzystać z funkcji: <strong>TERAZ()</strong> aby uzyskać sam czas stosujemy formułę: <strong>=TERAZ()-DZIŚ()</strong> (w przypadku uzyskania liczby komórkę formatujemy jako czas).</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image31.png" alt="image31" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Czas do komórek wprowadzamy z użyciem dwukropka (:) np. 7:45 ale można również użyć funkcji: <strong>CZAS</strong> W przykładzie poniżej w komórce <strong>B4</strong> została wpisana godzina w komórce <strong>C4</strong> minuta natomiast w komórce <strong>D4</strong> sekunda.</p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image32.png" alt="image32" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Aby połączyć czas z datą można użyć funkcji <strong>CZAS</strong> w połączeniu z funkcją <strong>DATA</strong> np. <strong>=DATA(2015;10;29)+CZAS(7;30;0)</strong> Formuła ta zwraca liczbę 42306,3125, która oznacza godzinę 7:30 dnia 29 października 2015.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Aby poznać numer seryjny, który odpowiada konkretnej godzinie możemy skorzystać z funkcji <strong>CZAS.WARTOŚĆ</strong> Funkcja ta zamienia tekst (tekst ten musi być zgodny z formatem czasu) na numer seryjny czasu. Np. formuła: <strong>=CZAS.WARTOŚĆ("7:45") </strong>zwraca liczbę 0,3229166667, numer ten odpowiada godzinie 7:45.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Czas jak już wiesz jest reprezentowany za pomocą kolejnych numerów seryjnych tak więc podobnie jak data można wykonać odejmowanie czasu wcześniejszego od późniejszego.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image33.png" alt="image33" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Powyżej w przykładzie za pomocą formuły: <strong>=B4-B5 </strong>wykonano odejmowanie od godziny 18:45 godzinę 12:30 uzyskany wynik to 6 godzin i 15 minut.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Wykonanie działania odwrotnego czyli: <strong>=B5-B4</strong> da wynik nieprawidłowy i Excel w takiej sytuacji wyświetli serię znaków: <strong>######</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image34.png" alt="image34" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Sytuacja taka ma miejsce ponieważ uzyskany wynik byłby liczbą ujemną (czas jest podany bez daty dlatego przyjmowane jest 0). Jeżeli zależy nam na wykonaniu takiego działania można użyć funkcji: <strong>MODUŁ.LICZBY</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image35.png" alt="image35" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Ale zastosowanie funkcji <strong>MODUŁ.LICZBY</strong> nie rozwiązuje wszystkich problemów. Prześledźmy o to taki przykład. Na zrzucie poniżej przedstawiono czas pracy pewnego pracownika jak widać czasy te są obliczone prawidłowo poza jednym przypadkiem obejmującym godziny od 23:00 do 6:00 W przypadku standardowego odjęcia otrzymujemy brak wyniku a zastosowanie funkcji <strong>MODUŁ.LICZBY</strong> daje wynik nieprawidłowy – zamiast 7 godzin otrzymujemy 17.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image36.png" alt="image36" width="700" height="207" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Ten problem wyliczenia czasu bardzo często pojawi się w sytuacji w której obliczany czas obejmuje północ. Aby poradzić sobie z tym problemem można zastosować oto taką funkcję: <strong>=JEŻELI(C7>D7;D7+1;D7)-C7</strong> Cały trik z zastosowaną funkcją polega na dodaniu do godziny wartości 1 tak by po odjęciu wynik nie przyjmował wartości ujemnych. Dodanie jedynki następuje tylko w sytuacji w której czas początku pracy jest większy od czasu jej zakończenia.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image37.png" alt="image37" width="700" height="197" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Kontynuujmy nasz przykład i spróbujmy podliczyć czas spędzony w pracy przez pracownika i w tym celu wykonajmy operację sumowania.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image38.png" alt="image38" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Jak widać po powyższym rysunku uzyskany czas pracy jest nieprawidłowy. Problem tkwi w sposobie formatowania komórki innymi słowy wynik jest prawidłowy lecz formatowanie komórki ucina nam informację o dniach. Rozwiązaniem problemu jest zastosowanie formatowania niestandardowego, wystarczy, że jako typ formatowania wprowadzimy: <strong>[g]:mm:ss</strong>. Umieszczenie symbolu godziny w nawiasie kwadratowym informuje Excela by czas traktować jako ciągłość.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image39.png" alt="image39" width="700" height="329" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">W niektórych sytuacjach zachodzi potrzeba zaokrąglenia czasu tak więc zaokrąglenie możemy wykonać w zależności do określonej jednostki.</p>
<ul>
<li style="list-style-type: none;">
<ul>
<li style="list-style-type: none;">
<ul>
<li>zaokrąglenie do minuty: <strong>=ZAOKR(C4*1440;0)/1440</strong></li>
<li>zaokrąglenie do kwadransa: <strong>=ZAOKR(C4*24/0,25;0)*(0,25/24)</strong></li>
<li>zaokrąglenie do pół godziny: <strong>=ZAOKR(C4*24/0,5;0)*(0,5/24)</strong></li>
<li>zaokrąglenie do godziny: <strong>=ZAOKR(C4*24;0)/24</strong></li>
</ul>
</li>
</ul>
</li>
</ul>
<p> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image40.png" alt="image40" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">I na koniec parę słów o formatowaniu daty i czasu. Prawidłowo wpisaną datę możemy sobie wyświetlić w wielu różnych formatach, to od nas zależy jak data czy czas mają być reprezentowane. Aby zdefiniować wyświetlany format daty bądź czasu z rozwijanego menu na zakładce <strong>Narzędzia główne</strong> wybieramy odpowiedni typ.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image41.png" alt="image41" width="700" height="494" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Bądź decydujemy się sami na zdefiniowanie sposobu wyświetlania. W tym celu z menu wybieramy z menu <strong>Więcej formatów liczb</strong> i w sekcji <strong>Typ</strong> definiujemy własny sposób wyświetlania daty bądź czasu.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image42.png" alt="image42" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">W definiowaniu własnego formatowania pomocne nam będą następujące zmienne:</p>
<p style="margin-bottom: 0.0001pt;"><strong><span style="color: #000000;">Data:</span></strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<table border="1" style="border-collapse: collapse;" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td style="width: 189.7pt; border: 1pt solid windowtext; padding: 0cm 5.4pt;" valign="top" width="253">miesiąc jako 1-12</td>
<td style="width: 3cm; border-width: 1pt 1pt 1pt medium; border-style: solid solid solid none; border-color: windowtext windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">m</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">miesiąc jako 01-12</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">mm</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">miesiąc jako Sty-Gru</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">mmm</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">miesiąc jako Styczeń-Grudzień</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">mmmm</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">miesiąc jako pierwsza litera miesiąca</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">mmmmm</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">dzień jako 1-31</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">d</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">dzień jako 01-31</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">dd</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">dzień jako Nie-Sob</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">ddd</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">dni jako Niedziela-Sobota</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">dddd</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">lata jako 00-99</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">rr</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">lata jako 1900-9999</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">rrrr</td>
</tr>
</tbody>
</table>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><strong><span style="color: #000000;">Czas:</span></strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<table border="1" style="border-collapse: collapse;" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td style="width: 189.7pt; border: 1pt solid windowtext; padding: 0cm 5.4pt;" valign="top" width="253">godzina jako 0-23</td>
<td style="width: 3cm; border-width: 1pt 1pt 1pt medium; border-style: solid solid solid none; border-color: windowtext windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">g</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">godzina jako 00-23</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">gg</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">minuta jako 0-59</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">m</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">minuta jako 00-59</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">mm</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">sekunda jako 0-59</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">s</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">sekunda jako 00-59</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">ss</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">godzina jako AM (duże)</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">g AM/PM</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">godzina jako pm (małe)</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">g:mm am/pm</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">czas jako 5:15:09 p</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">g:mm:ss a/p</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">kontynuacja czasu w godzinach</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">[g]:mm</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">kontynuacja czasu w minutach</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">[mm]:ss</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">kontynuacja czasu w sekundach</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">[ss]</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">ułamki sekund</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">g:mm:ss.00</td>
</tr>
</tbody>
</table>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Poniżej na zrzucie kilka przykładów różnych definicji formatu daty i czasu.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image43.png" alt="image43" width="700" height="190" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Ostatnia porada, którą chciałbym zaprezentować jest funkcja znaleziona na stronie wyżej już wspominanego Johna Walkenbacha. Funkcja ta wstawia nam do arkusza kalendarz. Myślę, że dla osób często wykonujących operację na datach taki kalendarz umiejscowiony gdzieś w arkuszu naprawdę ułatwi sprawę (źródło: <a href="http://spreadsheetpage.com/index.php/file/yearly_calendar_with_holidays/">http://spreadsheetpage.com/index.php/file/yearly_calendar_with_holidays/</a>).</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image44.png" alt="image44" width="700" height="278" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Nasz kalendarz zaczniemy od wpisania w komórce <strong>H3</strong> roku oraz komórce <strong>J3</strong> numeru miesiąca. W scalonej komórce <strong>D5</strong> została wprowadzona funkcja: <strong>=DATA(H3;J3;1)</strong>, której zadaniem jest pobranie z komórki <strong>H3</strong> oraz komórki <strong>J3</strong> informacji o roku i miesiącu. Komórka <strong>D5</strong> została sformatowana jako: <strong>mmmm</strong> tak by została wyświetlona nazwa miesiąca. Poniżej w komórkach od <strong>D6</strong> do <strong>J6</strong> zostały wpisane nazwy dni tygodnia. Następnie po zaznaczeniu kolejnych 5 wierszy (od D7 do J11) została wprowadzona funkcja tablicowa: <strong>{=JEŻELI(MIESIĄC(DATA(ROK(D5);MIESIĄC(D5);1))<>MIESIĄC(DATA(ROK(D5);MIESIĄC(D5);1)-(DZIEŃ.TYG(DATA(ROK(D5);MIESIĄC(D5);1))-1)+{0;1;2;3;4;5}*7+{1\2\3\4\5\6\7}-1);"";DATA(ROK(D5);MIESIĄC(D5);1)-(DZIEŃ.TYG(DATA(ROK(D5);MIESIĄC(D5);1))-1)+{0;1;2;3;4;5}*7+{1\2\3\4\5\6\7}-1)} </strong>Funkcję tą zatwierdzamy klawiszami CTRL+SHIFT+ENTER Po zatwierdzeniu komórki powinny wypełnić się serią numerów. Numery te odpowiadają, kolejnym dniom miesiąca. Aby kalendarz był kompletny komórki te formatujemy jako: <strong>d</strong> Kalendarz jest gotowy.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">I na tym chciałby zakończyć. Mam nadzieję, że po lekturze tego wpisu już nikt nie będzie miał problemów z prawidłową pracą z danymi jakimi są data i czas.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<hr />
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">BIBLIOGRAFIA:</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="https://support.office.com/pl-pl/article/Wstawianie-bie%C5%BC%C4%85cej-daty-i-godziny-do-kom%C3%B3rki-b5663451-10b0-40ab-9e71-6b0ce5768138?ui=pl-PL&rs=pl-PL&ad=PL">https://support.office.com/pl-pl/article/Wstawianie-bie%C5%BC%C4%85cej-daty-i-godziny-do-kom%C3%B3rki-b5663451-10b0-40ab-9e71-6b0ce5768138?ui=pl-PL&rs=pl-PL&ad=PL</a></p>
<p style="margin-bottom: 0.0001pt;"><a href="http://excelowiec.blogspot.com/2012/11/nowe-nazwy-funkcji-w-excel-2010.html">http://excelowiec.blogspot.com/2012/11/nowe-nazwy-funkcji-w-excel-2010.html</a></p>
<p style="margin-bottom: 0.0001pt;"><a href="http://j-walk.com/ss/excel/files/xdate.htm">http://j-walk.com/ss/excel/files/xdate.htm</a></p></div><div class="K2FeedImage"><img src="http://slow7.pl/media/k2/items/cache/d6e7bc44feb1613d041d5385e5745b10_S.jpg" alt="Excel w zadaniach. Data i czas." /></div><div class="K2FeedIntroText"><p>W codziennej pracy z arkuszem Excela często musimy operować datami bądź czasem. Dla przykładu tworzone są arkusze sprzedaży produktów, analizy wyników czy harmonogramy. Początkowa praca z datami może wydawać się trudna i skomplikowana, ale po poznaniu zasad rządzących tym typem danych okazuje się, że nie taki diabeł straszny. Tak więc by posiąść tą wiedzę zapraszam do lektury wpisu. </p>
</div><div class="K2FeedFullText">
<p style="margin-bottom: 0.0001pt;">Zanim przejdziemy dalej kilka słów wstępu i uwag ogólnych. Ustalmy, że w przykładach będziemy operować na dacie w formacie: <strong>rok-miesiąc-dzień</strong>. Oznacza to, że przykładowa data 12 luty 1980r przyjmie postać: 1980-02-12 (jak zmienić format daty pokażę w dalszej części wpisu).</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Aby móc operować na datach w pierwszej kolejności musimy zrozumieć jak Excel intrepretuje datę. Dla programu data jest po prostu liczbą. Liczba ta bądź tzw. numer seryjny odpowiada liczbie dni jaka upłynęła od daty początkowej, którą ustalono na dzień 0 stycznia 1900 roku. Niektórym po przeczytaniu ostatniego zdania od razu zapali się „czerwona lampka” - przecież taka data jak 0 stycznia 1900 rok nie istnieje. Oczywiście jest to prawda, ale trzeba było przy operowaniu datami (a raczej jak już wiesz kolejnymi numerami sekwencyjnymi) wykorzystać liczbę 0. Tak więc fikcyjna data 1900-01-00 odpowiada liczbie 0, a każda kolejna data jest związana ze zwiększaniem numeru sekwencyjnego o 1. Dla przykładu numer seryjny równy 1 to dzień 1 stycznia 1900 roku, numer seryjny równy 2 to dzień 2 stycznia 1900 roku itd.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Aby sprawdzić w działaniu efekt wykorzystania kolejnych numerów sekwencyjnych w dowolnej komórce arkusza wpisujemy liczbę i zmieniamy format wyświetlania. Proces ten możemy wykonać dwojako:</p>
<ul>
<li style="list-style-type: none;">
<ul>
<li style="list-style-type: none;">
<ul>
<li>wybieramy format z rozwijanej listy w naszym przypadku <strong>Data krótka</strong> bądź <strong>Data długa</strong>,</li>
<li>po kliknięciu na komórkę PPM z menu kontekstowego wybieramy <strong>Formatuj komórki</strong> a następnie na karcie <strong>Liczby</strong> w sekcji <strong>Kategoria</strong> interesujący nas format daty.</li>
</ul>
</li>
</ul>
</li>
</ul>
<p> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image1.png" alt="image1" width="700" height="530" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Excel potrafi operować na datach z zakresu od 1 stycznia 1900 r. do 31 grudnia 9999 r. (numer seryjny 2 958 465). Każda inna data nie mieszcząca się w tym zakresie zostanie sformatowana jako tekst.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Poniżej przedstawiono kilka sposobów na wprowadzenie daty do arkusza.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<table border="0" style="border-collapse: collapse;" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td style="width: 76.3pt; border: 1pt solid windowtext; padding: 0cm 5.4pt;" valign="top" width="102">80-2-12</td>
<td style="width: 5cm; border-width: 1pt 1pt 1pt medium; border-style: solid solid solid none; border-color: windowtext windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">12 luty 1980</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">1980-2-12</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">12 luty 1980</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">12 lut 1980</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">12 luty 1980</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">12-luty-1980</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">12 luty 1980</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">80/2/12</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">12 luty 1980</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">1980/2/12</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">12 luty 1980</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">80/2-12</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">12 luty 1980</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">1980/2/12</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">12 luty 1980</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">lut 12</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">12 lutego bieżącego roku</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">12 lut</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">12 lutego bieżącego roku</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">2/12</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">12 lutego bieżącego roku</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">2-12</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">12 lutego bieżącego roku</td>
</tr>
</tbody>
</table>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Możliwe jest zastosowanie skrótów miesiąca. Oznacza to, że gdy wpiszemy trzy pierwsze litery miesiąca zostanie to zinterpretowane przez program jako nazwa miesiąca. Zasada ta nie dotyczy miesiąca sierpnia - by skorzystać ze skrótu należy użyć: sier</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Ale data to nie tylko dzień, miesiąc i rok, ale również godziny, minuty oraz sekundy. Excel umożliwia nam również pracę na danych reprezentujących czas. Czas w Excelu jest reprezentowany poprzez wartość dziesiętną, która jest dodawana do numeru seryjnego. Oznacza to, że w przypadku wpisania numeru seryjnego 42186, numer ten zostanie zinterpretowany (oczywiście po zmianie formatowania) jako data: 1 lipca 2015, godzina zostanie ustawiona na północ. Poszerzenie liczby o wartość dziesiętną spowoduje dodanie do daty informacji o czasie. Do tego samego numeru sekwencyjnego 42186 dodajemy połówkę - 42186,5 - Excel tak wyrażoną liczbę po sformatowaniu (format Data długa) będzie traktował jako datę: 1 lipca 2015, godzina 12.00</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Poniżej przedstawiono przykładowe wartości dziesiętne określające czas (w pierwszej kolumnie wartość godziny):</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<table border="1" style="border-collapse: collapse;" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td style="width: 76.3pt; border: 1pt solid windowtext; padding: 0cm 5.4pt;" valign="top" width="102">3</td>
<td style="width: 5cm; border-width: 1pt 1pt 1pt medium; border-style: solid solid solid none; border-color: windowtext windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">0,125</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">6</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">0,25</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">9</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">0,375</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">12</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">0,5</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">15</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">0,625</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">18</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">0,75</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">21</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">0,875</td>
</tr>
</tbody>
</table>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Lecz co w przypadku gdy chcemy skorzystać z czasu w formie bardziej zaawansowanej tak by móc określić czas w obrębie pojedynczych minut? Oczywiście zadanie to sprowadza się do wpisania odpowiedniej wartości, która jest wyliczana przy wykorzystaniu formuły: =1/(24*60). Uzyskana wartość 0,00069444 odpowiada jednej minucie. Np. chcąc uzyskać datę: 1 lipca 2015 godzina 11:32 należy użyć wartości: 42186,48056. Obliczenie konkretnej wartości czasu może okazać się nieco problematyczne, gdyż należy uważać na zaokrąglenia wartości.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p>Dodatkowo, by w ten sposób zacząć wprowadzać czas, w którym będą uwzględnione sekundy, trzeba posłużyć się wartością: 0,00001157 (formuła: =1/(24*60*60) - 1/(godziny*minuty*sekundy), która odpowiada jednej sekundzie. Na przykład dacie: 2015-12-31 23:59:59 odpowiada wartość: 42369,9999884259.</p>
<p> </p>
<p style="margin-bottom: 0.0001pt;">Aby do arkusz wprowadzić informację o czasie tak, by Excel poprawnie zinterpretował te dane, można skorzystać z jednego przedstawionych poniżej formatów wprowadzania czasu:</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<table border="1" style="border-collapse: collapse;" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td style="width: 76.3pt; border: 1pt solid windowtext; padding: 0cm 5.4pt;" valign="top" width="102">10:30:00 am</td>
<td style="width: 5cm; border-width: 1pt 1pt 1pt medium; border-style: solid solid solid none; border-color: windowtext windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">10:30 AM</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">10:30:00 AM</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">10:30 AM</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">10:30 pm</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">10:30 PM</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">10:30</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">10:30</td>
</tr>
<tr>
<td style="width: 76.3pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="102">17:30</td>
<td style="width: 5cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="189">17:30</td>
</tr>
</tbody>
</table>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Podczas procesu wprowadzania dat do arkusza kalkulacyjnego należy być bardzo uważnym, gdyż format daty, do której najczęściej jesteśmy przyzwyczajeni: <strong>dzień:miesiąc:rok </strong>nie zostanie poprawnie zinterpretowany przez program jako data. Na szczęście możemy to zmienić. By dokonać tej zmiany musimy przejść do <strong>Panelu sterowania,</strong> a następnie do <strong>Region</strong> bądź <strong>Opcje regionalne i językowe</strong> (zależne od posiadanej wersji systemu Windows). W nowo otwartym oknie, na karcie <strong>Formaty,</strong> wybieramy <strong>Ustawienia dodatkowe</strong>. W kolejnym oknie <strong>Dostosowywanie formatu,</strong> na karcie <strong>Data,</strong> w sekcji <strong>Formaty daty</strong> określamy obowiązujący format (punkt 1). Format daty definiujemy za pomocą znaków: d - dzień; M - miesiąc; r - rok. Chcąc by obowiązującym formatem daty był zapis np. 23.04.1980 format musimy zdefiniować jako: <strong>dd.MM.rrrr</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image2.png" alt="image2" width="700" height="549" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">W przypadku definiowania daty dodatkową uwagę należy zwrócić na sytuację, w której rok podajemy jako zapis dwucyfrowy. Excel dwucyfrowe daty lat z zakresu od 00 do 29 traktuje jako lata XXI wieku, zaś daty lat z zakresu od 30 do 99 zostaną potraktowane jako lata wieku XX. By zmienić to ustawienie należy przejść do tego samego okna, w którym definiowaliśmy obowiązujący format daty i w sekcji <strong>Kalendarz</strong> zdefiniować podział wieku (punkt 2). By przypisać wszystkie dwucyfrowe daty lat do wieku XXI należy w polu <strong>do</strong> wpisać wartość 2100 (wartość 00 będzie traktowana jako rok 2100).</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Po tym krótkim wstępie teoretycznym przejdziemy do zadań związanych z datami i czasem.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Pierwszą z funkcji, którą chciałbym zaprezentować jest funkcja: <strong>DZIŚ().</strong> Zadaniem tej funkcji jest wyświetlenie bieżącej daty, przy czym wyświetlana data nie jest związana z czasem wstawienia funkcji do arkusza. Oznacza to, że funkcja ta będzie automatycznie korygować bieżącą datę. Gdy otworzymy arkusz 1 kwietnia 2015 roku zostanie wyświetlona ta data, zaś gdy ten sam arkusz otworzymy dzień później data zmieni się na 2 kwietnia 2015 roku. Funkcja ta nie posiada żadnych paramentów, tak więc by jej użyć stosujemy zapis: <strong>=DZIŚ()</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Możliwe jest połączenie funkcji <strong>DZIŚ</strong> z tekstem. Aby np. wyświetlić zapis: <strong>Dzisiaj jest: 13-10-2015 (wtorek)</strong> należy użyć formuły: <strong>="Dzisiaj jest: "&TEKST(DZIŚ(); "d-mm-rrrr (dddd)")</strong> Do wyświetlenia tej formułki została dodatkowo użyta funkcja <strong>TEKST</strong>, której działania wybacz Czytelniku w tym wpisie nie będę tłumaczył (funkcjami tekstowymi zajmiemy się wkrótce). Z funkcją <strong>DZIŚ</strong> możemy stosować dodatkowo operatory dodawania (+) oraz odejmowania (-), np. zapis: <strong>=DZIŚ()+3</strong> spowoduje wyświetlenie daty o trzy dni do przodu.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Analogicznie, by do arkusza wprowadzić informację o czasie, należy użyć funkcji: <strong>TERAZ</strong>. Formuła: <strong>=TERAZ()</strong> spowoduje wyświetlenie bieżącej daty w połączeniu z aktualną godziną. Funkcja <strong>TERAZ</strong> również zaktualizuje czas po ponownym otwarciu arkusza (by ręcznie wymusić aktualizację czasu wciśnij klawisz F9). W tej funkcji również możliwe jest użycie operatorów dodawania (+) oraz odejmowania (-).</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image3.png" alt="image3" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Aby wprowadzić datę i czas można posłużyć się dodatkowo skrótami:</p>
<ul>
<li style="list-style-type: none;">
<ul>
<li style="list-style-type: none;">
<ul>
<li>aby wstawić bieżącą datę, naciśnij kombinację klawiszy CTRL+; (średnik).</li>
<li>aby wstawić bieżącą godzinę, naciśnij kombinację klawiszy CTRL+SHIFT+; (średnik).</li>
<li>aby wstawić bieżącą datę i godzinę, naciśnij kombinację klawiszy CTRL+; (średnik), naciśnij klawisz spacji, a następnie naciśnij kombinację klawiszy CTRL+SHIFT+; (średnik).</li>
</ul>
</li>
</ul>
</li>
</ul>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Dowolną datę możemy również wprowadzić do arkusza z wykorzystaniem funkcji: <strong>DATA.</strong> Przykładowy zapis formuły: <strong>=DATA(1980;4;21) </strong>wprowadzi do arkusza datę 21 kwietnia 1980 roku. Oczywiście zamiast definiowania konkretnej wartości daty w definicji formuły możemy użyć odwołania do komórek, tak jak na poniższym przykładzie.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image4.png" alt="image4" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Analogicznie działa funkcja: <strong>CZAS.</strong> Zapis formuły: <strong>=CZAS(14;34;15)</strong> spowoduje wprowadzenie do arkusza godziny 14 minut 34 i 15 sekund. I tu również zamiast definiować stałe wartości możemy je pobrać z określonych komórek.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image5.png" alt="image5" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Aby uzyskać wartość liczbową konkretnej daty możemy posłużyć się funkcją <strong>DATA.WARTOŚĆ</strong> Funkcja ta zamienia wprowadzony tekst spełniający wymogi formatu data na jej numer sekwencyjny. Poniżej na zrzucie przedstawiono zamianę daty 2000-01-01 na jej odpowiednik liczbowy.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image6.png" alt="image6" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Podczas pracy z Excelem często zachodzi potrzeba wypełnienia komórek sekwencją dat. Daty te z reguły różnią się od siebie jakimś stałym odstępem czasowym, np. dniami czy miesiącami. Aby wygenerować taką sekwencję dat możemy posłużyć się mechanizmem autowypełnienia. Generowanie dat sprowadza się do wpisania pierwszej daty, a następnie na kliknięciu PPM na uchwyt wypełnienia (dla przypomnienia kwadracik w dolnym lewym rogu komórki) i wybraniu interesującego nas interwału. Do dyspozycji mamy cztery opcje: wypełnij dniami; wypełnij dniami powszednimi; wypełnij miesiącami oraz wypełnij latami.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><span style="background-color: #ffff00;"><img src="http://slow7.pl/images/stories/office/excel_8/image7.png" alt="image7" style="display: block; margin-left: auto; margin-right: auto;" /></span></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Niestety Excel nie oferuje nam wypełnienia serią dat, których interwał obejmowałby tydzień. Ale jest i na to rada gdyż by rozwiązać ten problem możemy posłużyć się odpowiednią formułą. Aby daty były odległe od siebie o 7 dni możemy użyć o to takiej formuły: <strong>=C1+7</strong> Oczywiście w komórce C1 umieszczamy datę początkową.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image8.png" alt="image8" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Aby daty odległe były od siebie o jeden miesiąc użyj formuły: <strong>=DATA(ROK(C1);MIESIĄC(C1)+1;DZIEŃ(C1))</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image9.png" alt="image9" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Zaś by otrzymać serię dat z interwałem wynoszącym rok: <strong>=DATA(ROK(C1)+1;MIESIĄC(C1);DZIEŃ(C1))</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image10.png" alt="image10" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Serię dni tygodnia bez weekendów (sobót i niedziel) wygenerujesz za pomocą funkcji (początkowy dzień nie może być ani sobotą ani niedzielą): <strong>=JEŻELI(DZIEŃ.TYG(C1)=6;C1+3;C1+1)</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><strong><img src="http://slow7.pl/images/stories/office/excel_8/image11.png" alt="image11" style="display: block; margin-left: auto; margin-right: auto;" /></strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Całkiem innym zagadnieniem jest gdy daty importujemy z np. pliku tekstowego, który jest wynikiem utworzenia np. z jakiegoś systemu pomiarowego. Aby zamienić przykładowy tekst reprezentujący datę na format daty akceptowalny przez Excela można wykorzystać taką oto formułę (data w formacie tekstowym to: 29082015): <strong>=DATA(PRAWY(C1;4);FRAGMENT.TEKSTU(C1;3;2);LEWY(C1;2))</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image12.png" alt="image12" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Oczywiście różnych wariantów reprezentacji daty może być wiele ale wtedy wystarczy zmodyfikować powyższą formułę. Do zbudowania formuły zostały użyte funkcje tekstowe <strong>PRAWY</strong>, <strong>LEWY</strong>, <strong>FRAGMENT.TEKSTU</strong> Działanie tych funkcji wykracza poza temat wpisu więc by zrozumieć ich działanie odsyłam do pomocy.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Poniżej przedstawiam kilka modyfikacji przedstawionej formuły:</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Dla daty 20150809 - formuła: <strong>=DATA(LEWY(C1;4);FRAGMENT.TEKSTU(C1;5;2);PRAWY(C1;2))</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image13.png" alt="image13" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Dla daty 2015 08 09 - formuła: <strong>=DATA(LEWY(C1;4);FRAGMENT.TEKSTU(C1;6;2);PRAWY(C1;2))</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image14.png" alt="image14" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Dla daty 29/08/2015 - formuła: <strong>=DATA(PRAWY(C1;4);FRAGMENT.TEKSTU(C1;4;2);LEWY(C1;2))</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image15.png" alt="image15" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Częstym zadaniem, które wykonujemy jest obliczenie ilości dni pomiędzy datami i tak naprawdę by wykonać tę czynność jedyne co musimy wykonać jest to wykonanie operacji odejmowania. Już wiesz Czytelniku, że Excel datę uważa jako liczbę tak więc wynikiem działania będzie odjęcie od liczby reprezentującej datę początkową liczby przypisanej do daty końcowej. Tak więc obliczenie dni pomiędzy datami 2015-03-21 a 2015-02-19 da nam liczbę 30 dni.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image16.png" alt="image16" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">W przypadku wykonania działania odwrotnego uzyskamy wartość: -30 ponieważ odejmowaliśmy datę wcześniejszą od daty późniejszej. Aby uzyskać wynik dodatni możemy użyć funkcji: <strong>MODUŁ.LICZBY</strong> w takiej oto przykładowej formule: <strong>=MODUŁ.LICZBY(D5-D3)</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Tworząc wszelkiego typu raporty np. pracownicze w których prowadzimy ewidencję dni pracy pracowników często potrzebujemy wyliczyć liczbę dni lecz uzyskany wynik nie powinien obejmować weekendów, świąt oraz dni w których pracownik nie był obecny w pracy z jakichkolwiek innych przyczyn. W wyliczeniu dni w których pracownik wykonywał swoje obowiązki pomoże nam funkcja: <strong>DNI.ROBOCZE</strong>. W przykładzie poniżej w zakresie komórek E2:E4 umieszczono daty świąt czyli dni ustawowo wolnych oraz w zakresie E9:E10 zamieszczono daty nieobecności pracownika w pracy z jakichkolwiek innych przyczyn (np. L4, art. 188 czy urlop okolicznościowy) W następnym kroku został wyliczony okres dni obejmujący obecność pracownika. Ilość dni przepracowanych zostało wyliczone w dwóch przedziałach czasowych tj. od 2015-01-01 do 2015-01-07 oraz dla całego roku kalendarzowego. W wyliczeniu dni obecności zastosowano już wspomnianą funkcję <strong>DNI.ROBOCZE </strong>Ogólna składnia funkcji wygląda następująco <strong>=DNI.ROBOCZE(data_początkowa;data_końcowa;święta)</strong>. W przykładzie poniżej dzień początkowy został wpisany do komórki <strong>F15</strong> a dzień końcowy do komórki <strong>G15</strong> natomiast w kolumnie <strong>E</strong> zostały wpisane święta oraz dni w których pracownika w pracy nie było. Po wywołaniu formuły: <strong>=DNI.ROBOCZE(F15;G15;E2:E11) </strong>liczba dni roboczych została ustalona na 3. Zdefiniowany parametr <strong>święta</strong> daje nam możliwość określenia dat dni dodatkowych, które powinny być w ustaleniu liczby dni roboczych pominięte, parametr <strong>święta</strong> jest opcjonalny. W całym roku kalendarzowym liczba dni roboczych została ustalona na 259.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image17.png" alt="image17" width="700" height="361" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Czasem w niektórych firmach dzień weekendu jest ustalony na inne dni niż standardowo i funkcja <strong>DNI.ROBOCZE</strong> tu nam nie pomoże ale na szczęście istnieje jeszcze jedna funkcja, którą możemy użyć do obliczenia dni roboczych pracownika. Mowa tu o funkcji: <strong>DNI.ROBOCZE.NIESTAND</strong> Funkcja ta pozwala nam na określenie, które dni tygodnia są dniami weekendowymi. Ogólna składnia funkcji to: <strong>=DNI.ROBOCZE.NIESTAND(data_początkowa;data_końcowa;weekend,święta)</strong>. W składni funkcji został dodany jeden dodatkowy, opcjonalny argument weekend. Argument ten określa dni tygodnia będące dniami weekendowymi nieuwzględnianymi w liczbie pełnych dni roboczych między datą początkową i datą końcową. Argument ten określa się jako liczbę. Poszczególne liczby oznaczają:</p>
<ul>
<li style="list-style-type: none;">
<ul>
<li style="list-style-type: none;">
<ul>
<li>1 lub pominięty - Sobota, niedziela</li>
<li>2 - Niedziela, poniedziałek</li>
<li>3 - Poniedziałek, wtorek</li>
<li>4 - Wtorek, środa</li>
<li>5 - Środa, czwartek</li>
<li>6 - Czwartek, piątek</li>
<li>7 - Piątek, sobota</li>
<li>11 - tylko niedziela</li>
<li>12 - Tylko poniedziałek</li>
<li>13 - tylko wtorek</li>
<li>14 - tylko środa</li>
<li>15 - tylko czwartek</li>
<li>16 - tylko piątek</li>
<li>17 - tylko sobota</li>
</ul>
</li>
</ul>
</li>
</ul>
<p style="margin-bottom: 0.0001pt;">Poniżej przykład w którym została użyta funkcja <strong>DNI.ROBOCZE.NIESTAND</strong> lecz weekend został ustalony na dni czwartek i piątek.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image18.png" alt="image18" width="700" height="415" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Aby określić większą liczbę dni weekendu i dni, które nie leżą bezpośrednio obok siebie można skorzystać z opcjonalnego sposobu zdefiniowania dni weekendowych. Dni te określa się za pomocą ciągu o długości siedmiu znaków, z których każdy reprezentuje jeden dzień tygodnia, zaczynając od poniedziałku. Cyfra 1 oznacza dzień wolny, natomiast cyfra 0 oznacza dzień roboczy. W tym ciągu dozwolone są tylko znaki 1 i 0. Użycie ciągu 1111111 zawsze spowoduje zwrócenie ciągu 0. Tak więc jeśli dniami weekendowymi byłby dni środa i niedziela ciąg przyjmie postać 0010001. W definicji funkcji ciąg ten należy umieścić w cudzysłowie. Przykładowa funkcja mogłaby by przyjąć postać: <strong>=DNI.ROBOCZE.NIESTAND(M15;N15;"0010001";L2:L11)</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">W pracy z funkcjami daty bardzo często przydaje się obliczenie wieku danej osoby aby wykonać tę czynność można skorzystać z funkcji: <strong>DATA.RÓŻNICA</strong> W przykładzie poniżej obliczono wiek osoby urodzonej w dniu 17.02.1980 (wiek osoby obliczono odnośnie daty 29.20.2015)</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image19.png" alt="image19" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Funkcja <strong>DATA.RÓŻNICA</strong> jest dość zagadkową funkcją bo nic na jej temat nie znajdziemy w pomocy programu Excel, nie widnieje na liście funkcji ani nie pojawia się na liście podczas procesu wpisywania funkcji do komórki arkusza. By z niej skorzystać musimy ją w całości wprowadzić ręcznie. Ogólna składnia funkcji jest następująca: =<strong> DATA.RÓŻNICA(data_początkowa;data_końcowa;"jednostka")</strong> Funkcja <strong>DATA.RÓŻNICA</strong> oprócz obliczenia lat pomiędzy dwoma datami potrafi również obliczyć liczbę dni czy miesięcy. Wszystko zależy od tego jaką jednostkę daty wybierzemy. Jednostkę tę definiujemy za pomocą zmiennych:</p>
<ul>
<li style="list-style-type: none;">
<ul>
<li style="list-style-type: none;">
<ul>
<li><strong>y</strong> - liczba pełnych lat,</li>
<li><strong>m</strong> - liczba pełnych miesięcy,</li>
<li><strong>d</strong> - liczba dni,</li>
<li><strong>md</strong> - różnica między wartościami dni - miesiące i lata nie są uwzględniane,</li>
<li><strong>ym</strong> - różnica między miesiącami - lata i dni nie są uwzględniane,</li>
<li><strong>yd</strong> - różnica między dniami - lata nie są uwzględniane.</li>
</ul>
</li>
</ul>
</li>
</ul>
<p style="margin-bottom: 0.0001pt;">Aby wyliczyć dokładny wiek osoby z dodatkowym uwzględnieniem ilości miesięcy i dni można posłużyć się funkcją: <strong>=DATA.RÓŻNICA(K4;K5;"y")&" lat "&DATA.RÓŻNICA(K4;K5;"YM")&" miesięcy "&DATA.RÓŻNICA(K4;K5;"MD")&" dni"</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image20.png" alt="image20" width="700" height="155" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Jak widać powyżej wiek osoby został ustalony na 35 lat 8 miesięcy i 12 dni.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Kolejne przykłady funkcji pozwalają nam na wyliczenie dnia roku, ilości dni które do końca roku pozostały oraz do określenia daty podanego dnia roku. Dwa pierwsze przykłady zostały wykonane dla daty 2015-10-29 trzeci zaś dla 67 dnia roku 2015.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image21.png" alt="image21" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<ul>
<li style="list-style-type: none;">
<ul>
<li style="list-style-type: none;">
<ul>
<li><strong>przykład pierwszy</strong>: podana data, którym jest dniem roku? - funkcja: <strong>=F5-DATA(ROK(F5);1;0)</strong> przy założeniu, że data znajduje się w komórce <strong>F5</strong>, dla daty dzisiejszej: <strong>=DZIŚ()-DATA(ROK(DZIŚ());1;0)</strong>,</li>
<li><strong>przykład drugi</strong>: ile pozostało dni do końca roku? - funkcja: <strong>=DATA(ROK(F5);12;31)-F5</strong> przy założeniu, że data znajduje się w komórce <strong>F5</strong>, dla daty dzisiejszej:<strong> =DATA(ROK(DZIŚ());12;31)-DZIŚ()</strong></li>
<li><strong>przykład trzeci</strong>: chcemy znać datę określonego dnia roku: funkcja: <strong>=DATA(D9;1;F9)</strong> przy założeniu, że w komórce <strong>D9</strong> znajduje się rok a w komórce <strong>F9</strong> szukany dzień roku.</li>
</ul>
</li>
</ul>
</li>
</ul>
<p style="margin-bottom: 0.0001pt;">Aby wyznaczyć dzień tygodnia należy posłużyć się funkcją: <strong>DZIEŃ.TYG</strong> Po określeniu daty, funkcja zwraca nam jako wynik liczbę od 1 do 7. Numer ten oznacza kolejny dzień tygodnia. Domyślnie pierwszym dniem tygodnia jest niedziela. Poniżej dla daty 2015-10-29 (czwartek) została wywołana funkcja <strong>DZIEŃ.TYG</strong> w pierwszym przykładzie funkcja zwraca wartość 5 gdyż domyślnie czwartek jest piątym dniem tygodnia (funkcja<strong>: =DZIEŃ.TYG(R5)</strong>) natomiast w drugim przykładzie uzyskano wynik 4 ponieważ funkcja <strong>DZIEŃ.TYG</strong> pozwala nam na zmianę domyślnego numerowania początku tygodnia. W drugim przykładzie tydzień rozpoczyna się od poniedziałku (funkcja: <strong>=DZIEŃ.TYG(R10;2)</strong>) Definicja początku tygodnia odbywa się poprzez podanie odpowiedniej wartości parametru <strong>zwracany_typ</strong>.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image22.png" alt="image22" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Aby zwrócić dzień tygodnia jako tekst możemy posłużyć się następującą funkcją: <strong>=TEKST(M19;"dddd")</strong> Funkcja zadziała jeśli w komórce <strong>M19</strong> będzie znajdować poprawnie wprowadzona data.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image23.png" alt="image23" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Rozwiązaniem, które też jest możliwe jest połączenie funkcji <strong>DZIEŃ.TYG</strong> oraz <strong>WYBIERZ</strong> Wypisanie dnia tygodnia zrealizuje oto taka funkcja: <strong>=WYBIERZ(DZIEŃ.TYG(M19;2);"Poniedziałek";"Wtorek";"Środa";"Czwartek";"Piątek";"Sobota";"Niedziela")</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image24.png" alt="image24" width="700" height="111" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Aby wyznaczyć numer tygodnia w roku należy posłużyć się funkcją: <strong>NUM.TYG</strong> Dla daty 2015-10-29 uzyskamy wynik 44 Przykładowa funkcja może przyjąć postać: <strong>=NUM.TYG(K5)</strong> - przy założeniu, że w komórce <strong>K5</strong> została wpisana data.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Aby wyznaczyć pierwszy dzień tygodnia po określonej dacie można posłużyć się formułą: <strong>=D17+F17-DZIEŃ.TYG(D17;2)+(F17<DZIEŃ.TYG(D17;2))*7</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Formuła ta zadziała jeśli:</p>
<ul>
<li style="list-style-type: none;">
<ul>
<li style="list-style-type: none;">
<ul>
<li>w komórce D17 umieścimy datę.</li>
<li>w komórce F17 określimy dzień tygodnia - kolejno dla poniedziałku 1 natomiast dla niedzieli 7</li>
</ul>
</li>
</ul>
</li>
</ul>
<p> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image25.png" alt="image25" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Dla daty 2015-10-29 data pierwszego poniedziałku to 2015-11-02.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">W niektórych sytuacjach do określonej daty musimy dodać odpowiednią liczbę miesięcy (bądź od daty odjąć daną liczbę miesięcy). Sytuacja ta jest trochę problematyczna ponieważ miesiące mają różną liczbę dni. Ale na szczęście z pomocą przychodzi nam funkcja: <strong>NR.SER.DATY</strong> (funkcja ta została wprowadzona w Excel 2010 zastępując funkcję <strong>EDATE</strong>, funkcja <strong>EDATE</strong> dostępna jest po instalacji dodatku <strong>Analysis ToolPak</strong>). Wystarczy, że do komórki wpiszemy formułę: <strong>=NR.SER.DATY(M32;1)</strong> której zadaniem jest do daty umieszczonej w komórce M32 dodanie jednego miesiąca. Wynikiem dodania do dnia 2015-10-31 jednego miesiąca jest dzień 2015-11-30 ponieważ listopad 2015 roku liczy 30 dni.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image26.png" alt="image26" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Aby odjąć miesiące w formule należy zdefiniować ujemną liczbę reprezentującą ilość odejmowanych miesięcy np. <strong>=NR.SER.DATY(M32;-2)</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Aby wyznaczyć ostatni dzień miesiąca należy skorzystać z funkcji <strong>NR.SER.OST.DN.MIES</strong> (funkcja ta została wprowadzona w Excel 2010 zastępując funkcję <strong>EOMONTH</strong>, funkcja ta dostępna jest po instalacji dodatku <strong>Analysis ToolPak</strong>). Zadaniem funkcji jest wyliczenie ostatniego dnia miesiąca, w którym wystąpi data podana jako pierwszy argument zwiększona o liczbę miesięcy podanych jako argument drugi.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Poniżej przykład użycia funkcji odnośnie daty 2015-10-29, zadaniem zastosowanej formuły jest wyświetlenie ostatniego dnia przyszłego miesiąca.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image27.png" alt="image27" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Wszystko fajnie ale co w przypadku w którym będziemy chcieli operować na datach przed rokiem 1900. Niestety program Excel w przypadku tego typu dat nie pozwoli nam na operacje, które przedstawiłem powyżej. Ale na szczęście można ze strony: <a href="http://j-walk.com/ss/excel/files/xdate.htm">http://j-walk.com/ss/excel/files/xdate.htm</a> pobrać dodatek <strong>XDATE</strong>, który z datami sprzed 1900 rokiem sobie poradzi. Dodatek tak naprawdę jest zestawem makr, których zadaniem jest umożliwienie użytkownikowi na operowaniu na datach sprzed roku 1900. Autorem dodatku jest John Walkenbach.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Po pobraniu odpowiednich plików należy je zainstalować tak by Excel mógł obsłużyć funkcje oferowane przez ten dodatek. W tym celu przechodzimy do <strong>Opcji</strong> programu (Plik – Opcje) i w nowo otwartym oknie wybieramy <strong>Dodatki</strong> a następnie w dolnej części okna wybieramy <strong>Przejdź</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image28.png" alt="image28" width="700" height="459" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">W nowym oknie wybieramy <strong>Przeglądaj</strong> i lokalizujemy ściągnięty plik: <strong>xdate.xla</strong> (plik znajduje się w archiwum, należy go uprzednio rozpakować).</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image29.png" alt="image29" width="700" height="489" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Po kliknięciu na <strong>OK</strong> w oknie <strong>Dodatki</strong> powinna pojawić się nowa pozycja <strong>Extended Date Functions</strong> Od tej pory możemy korzystać z funkcji zawartych w tym dodatku.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Poniżej został pokazany przykład arkusza w którym zostały użyte daty sprzed roku 1900 z użyciem funkcji zawartych w dodatku <strong>XDATE</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image30.png" alt="image30" width="700" height="225" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Dodatek oferuje nam następujące funkcje:</p>
<ul>
<li style="list-style-type: none;">
<ul>
<li style="list-style-type: none;">
<ul>
<li><strong>XDATE(rok;miesiąc,dzień,format):</strong> funkcja zwraca datę z podanego roku, miesiąca i dnia. Opcją dodatkową jest określenie formatu przedstawianej daty.</li>
<li><strong>XDATEADD(data;liczba_dni,format)</strong>: dodanie do daty określoną liczbę dni. Opcją dodatkową jest określenie formatu przedstawianej daty.</li>
<li><strong>XDATEDIF(data_1,data_2)</strong>: różnica dni pomiędzy datami.</li>
<li><strong>XDATEYEARDIF(data_1,data_2)</strong>: różnica pełnych lat między datami.</li>
<li><strong>XDATEYEAR(data)</strong>: zwraca rok zawarty w dacie.</li>
<li><strong>XDATEMONTH(data)</strong>: zwraca miesiąc zawarty w dacie.</li>
<li><strong>XDATEDAY(data)</strong>: zwraca dzień zawarty w dacie.</li>
<li><strong>XDATEDOW(data)</strong>: dzień tygodnia, wynikiem wywołania funkcji jest liczba z przedziału od 1 do 7 – numeracja zaczyna się od niedzieli.</li>
</ul>
</li>
</ul>
</li>
</ul>
<p style="margin-bottom: 0.0001pt;">Funkcje związane z datą mamy omówione przejdźmy zatem do funkcji związanych z czasem.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Aby wstawić do arkusza bieżącą datę i czas należy skorzystać z funkcji: <strong>TERAZ()</strong> aby uzyskać sam czas stosujemy formułę: <strong>=TERAZ()-DZIŚ()</strong> (w przypadku uzyskania liczby komórkę formatujemy jako czas).</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image31.png" alt="image31" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Czas do komórek wprowadzamy z użyciem dwukropka (:) np. 7:45 ale można również użyć funkcji: <strong>CZAS</strong> W przykładzie poniżej w komórce <strong>B4</strong> została wpisana godzina w komórce <strong>C4</strong> minuta natomiast w komórce <strong>D4</strong> sekunda.</p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image32.png" alt="image32" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Aby połączyć czas z datą można użyć funkcji <strong>CZAS</strong> w połączeniu z funkcją <strong>DATA</strong> np. <strong>=DATA(2015;10;29)+CZAS(7;30;0)</strong> Formuła ta zwraca liczbę 42306,3125, która oznacza godzinę 7:30 dnia 29 października 2015.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Aby poznać numer seryjny, który odpowiada konkretnej godzinie możemy skorzystać z funkcji <strong>CZAS.WARTOŚĆ</strong> Funkcja ta zamienia tekst (tekst ten musi być zgodny z formatem czasu) na numer seryjny czasu. Np. formuła: <strong>=CZAS.WARTOŚĆ("7:45") </strong>zwraca liczbę 0,3229166667, numer ten odpowiada godzinie 7:45.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Czas jak już wiesz jest reprezentowany za pomocą kolejnych numerów seryjnych tak więc podobnie jak data można wykonać odejmowanie czasu wcześniejszego od późniejszego.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image33.png" alt="image33" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Powyżej w przykładzie za pomocą formuły: <strong>=B4-B5 </strong>wykonano odejmowanie od godziny 18:45 godzinę 12:30 uzyskany wynik to 6 godzin i 15 minut.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Wykonanie działania odwrotnego czyli: <strong>=B5-B4</strong> da wynik nieprawidłowy i Excel w takiej sytuacji wyświetli serię znaków: <strong>######</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image34.png" alt="image34" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Sytuacja taka ma miejsce ponieważ uzyskany wynik byłby liczbą ujemną (czas jest podany bez daty dlatego przyjmowane jest 0). Jeżeli zależy nam na wykonaniu takiego działania można użyć funkcji: <strong>MODUŁ.LICZBY</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image35.png" alt="image35" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Ale zastosowanie funkcji <strong>MODUŁ.LICZBY</strong> nie rozwiązuje wszystkich problemów. Prześledźmy o to taki przykład. Na zrzucie poniżej przedstawiono czas pracy pewnego pracownika jak widać czasy te są obliczone prawidłowo poza jednym przypadkiem obejmującym godziny od 23:00 do 6:00 W przypadku standardowego odjęcia otrzymujemy brak wyniku a zastosowanie funkcji <strong>MODUŁ.LICZBY</strong> daje wynik nieprawidłowy – zamiast 7 godzin otrzymujemy 17.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image36.png" alt="image36" width="700" height="207" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Ten problem wyliczenia czasu bardzo często pojawi się w sytuacji w której obliczany czas obejmuje północ. Aby poradzić sobie z tym problemem można zastosować oto taką funkcję: <strong>=JEŻELI(C7>D7;D7+1;D7)-C7</strong> Cały trik z zastosowaną funkcją polega na dodaniu do godziny wartości 1 tak by po odjęciu wynik nie przyjmował wartości ujemnych. Dodanie jedynki następuje tylko w sytuacji w której czas początku pracy jest większy od czasu jej zakończenia.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image37.png" alt="image37" width="700" height="197" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Kontynuujmy nasz przykład i spróbujmy podliczyć czas spędzony w pracy przez pracownika i w tym celu wykonajmy operację sumowania.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image38.png" alt="image38" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Jak widać po powyższym rysunku uzyskany czas pracy jest nieprawidłowy. Problem tkwi w sposobie formatowania komórki innymi słowy wynik jest prawidłowy lecz formatowanie komórki ucina nam informację o dniach. Rozwiązaniem problemu jest zastosowanie formatowania niestandardowego, wystarczy, że jako typ formatowania wprowadzimy: <strong>[g]:mm:ss</strong>. Umieszczenie symbolu godziny w nawiasie kwadratowym informuje Excela by czas traktować jako ciągłość.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image39.png" alt="image39" width="700" height="329" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">W niektórych sytuacjach zachodzi potrzeba zaokrąglenia czasu tak więc zaokrąglenie możemy wykonać w zależności do określonej jednostki.</p>
<ul>
<li style="list-style-type: none;">
<ul>
<li style="list-style-type: none;">
<ul>
<li>zaokrąglenie do minuty: <strong>=ZAOKR(C4*1440;0)/1440</strong></li>
<li>zaokrąglenie do kwadransa: <strong>=ZAOKR(C4*24/0,25;0)*(0,25/24)</strong></li>
<li>zaokrąglenie do pół godziny: <strong>=ZAOKR(C4*24/0,5;0)*(0,5/24)</strong></li>
<li>zaokrąglenie do godziny: <strong>=ZAOKR(C4*24;0)/24</strong></li>
</ul>
</li>
</ul>
</li>
</ul>
<p> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image40.png" alt="image40" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">I na koniec parę słów o formatowaniu daty i czasu. Prawidłowo wpisaną datę możemy sobie wyświetlić w wielu różnych formatach, to od nas zależy jak data czy czas mają być reprezentowane. Aby zdefiniować wyświetlany format daty bądź czasu z rozwijanego menu na zakładce <strong>Narzędzia główne</strong> wybieramy odpowiedni typ.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image41.png" alt="image41" width="700" height="494" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Bądź decydujemy się sami na zdefiniowanie sposobu wyświetlania. W tym celu z menu wybieramy z menu <strong>Więcej formatów liczb</strong> i w sekcji <strong>Typ</strong> definiujemy własny sposób wyświetlania daty bądź czasu.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image42.png" alt="image42" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">W definiowaniu własnego formatowania pomocne nam będą następujące zmienne:</p>
<p style="margin-bottom: 0.0001pt;"><strong><span style="color: #000000;">Data:</span></strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<table border="1" style="border-collapse: collapse;" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td style="width: 189.7pt; border: 1pt solid windowtext; padding: 0cm 5.4pt;" valign="top" width="253">miesiąc jako 1-12</td>
<td style="width: 3cm; border-width: 1pt 1pt 1pt medium; border-style: solid solid solid none; border-color: windowtext windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">m</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">miesiąc jako 01-12</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">mm</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">miesiąc jako Sty-Gru</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">mmm</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">miesiąc jako Styczeń-Grudzień</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">mmmm</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">miesiąc jako pierwsza litera miesiąca</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">mmmmm</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">dzień jako 1-31</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">d</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">dzień jako 01-31</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">dd</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">dzień jako Nie-Sob</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">ddd</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">dni jako Niedziela-Sobota</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">dddd</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">lata jako 00-99</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">rr</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">lata jako 1900-9999</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">rrrr</td>
</tr>
</tbody>
</table>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><strong><span style="color: #000000;">Czas:</span></strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<table border="1" style="border-collapse: collapse;" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td style="width: 189.7pt; border: 1pt solid windowtext; padding: 0cm 5.4pt;" valign="top" width="253">godzina jako 0-23</td>
<td style="width: 3cm; border-width: 1pt 1pt 1pt medium; border-style: solid solid solid none; border-color: windowtext windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">g</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">godzina jako 00-23</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">gg</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">minuta jako 0-59</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">m</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">minuta jako 00-59</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">mm</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">sekunda jako 0-59</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">s</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">sekunda jako 00-59</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">ss</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">godzina jako AM (duże)</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">g AM/PM</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">godzina jako pm (małe)</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">g:mm am/pm</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">czas jako 5:15:09 p</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">g:mm:ss a/p</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">kontynuacja czasu w godzinach</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">[g]:mm</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">kontynuacja czasu w minutach</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">[mm]:ss</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">kontynuacja czasu w sekundach</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">[ss]</td>
</tr>
<tr>
<td style="width: 189.7pt; border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt;" valign="top" width="253">ułamki sekund</td>
<td style="width: 3cm; border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt;" valign="top" width="113">g:mm:ss.00</td>
</tr>
</tbody>
</table>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Poniżej na zrzucie kilka przykładów różnych definicji formatu daty i czasu.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image43.png" alt="image43" width="700" height="190" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Ostatnia porada, którą chciałbym zaprezentować jest funkcja znaleziona na stronie wyżej już wspominanego Johna Walkenbacha. Funkcja ta wstawia nam do arkusza kalendarz. Myślę, że dla osób często wykonujących operację na datach taki kalendarz umiejscowiony gdzieś w arkuszu naprawdę ułatwi sprawę (źródło: <a href="http://spreadsheetpage.com/index.php/file/yearly_calendar_with_holidays/">http://spreadsheetpage.com/index.php/file/yearly_calendar_with_holidays/</a>).</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><img src="http://slow7.pl/images/stories/office/excel_8/image44.png" alt="image44" width="700" height="278" style="display: block; margin-left: auto; margin-right: auto;" /></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Nasz kalendarz zaczniemy od wpisania w komórce <strong>H3</strong> roku oraz komórce <strong>J3</strong> numeru miesiąca. W scalonej komórce <strong>D5</strong> została wprowadzona funkcja: <strong>=DATA(H3;J3;1)</strong>, której zadaniem jest pobranie z komórki <strong>H3</strong> oraz komórki <strong>J3</strong> informacji o roku i miesiącu. Komórka <strong>D5</strong> została sformatowana jako: <strong>mmmm</strong> tak by została wyświetlona nazwa miesiąca. Poniżej w komórkach od <strong>D6</strong> do <strong>J6</strong> zostały wpisane nazwy dni tygodnia. Następnie po zaznaczeniu kolejnych 5 wierszy (od D7 do J11) została wprowadzona funkcja tablicowa: <strong>{=JEŻELI(MIESIĄC(DATA(ROK(D5);MIESIĄC(D5);1))<>MIESIĄC(DATA(ROK(D5);MIESIĄC(D5);1)-(DZIEŃ.TYG(DATA(ROK(D5);MIESIĄC(D5);1))-1)+{0;1;2;3;4;5}*7+{1\2\3\4\5\6\7}-1);"";DATA(ROK(D5);MIESIĄC(D5);1)-(DZIEŃ.TYG(DATA(ROK(D5);MIESIĄC(D5);1))-1)+{0;1;2;3;4;5}*7+{1\2\3\4\5\6\7}-1)} </strong>Funkcję tą zatwierdzamy klawiszami CTRL+SHIFT+ENTER Po zatwierdzeniu komórki powinny wypełnić się serią numerów. Numery te odpowiadają, kolejnym dniom miesiąca. Aby kalendarz był kompletny komórki te formatujemy jako: <strong>d</strong> Kalendarz jest gotowy.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">I na tym chciałby zakończyć. Mam nadzieję, że po lekturze tego wpisu już nikt nie będzie miał problemów z prawidłową pracą z danymi jakimi są data i czas.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<hr />
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">BIBLIOGRAFIA:</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="https://support.office.com/pl-pl/article/Wstawianie-bie%C5%BC%C4%85cej-daty-i-godziny-do-kom%C3%B3rki-b5663451-10b0-40ab-9e71-6b0ce5768138?ui=pl-PL&rs=pl-PL&ad=PL">https://support.office.com/pl-pl/article/Wstawianie-bie%C5%BC%C4%85cej-daty-i-godziny-do-kom%C3%B3rki-b5663451-10b0-40ab-9e71-6b0ce5768138?ui=pl-PL&rs=pl-PL&ad=PL</a></p>
<p style="margin-bottom: 0.0001pt;"><a href="http://excelowiec.blogspot.com/2012/11/nowe-nazwy-funkcji-w-excel-2010.html">http://excelowiec.blogspot.com/2012/11/nowe-nazwy-funkcji-w-excel-2010.html</a></p>
<p style="margin-bottom: 0.0001pt;"><a href="http://j-walk.com/ss/excel/files/xdate.htm">http://j-walk.com/ss/excel/files/xdate.htm</a></p></div>Excel w zadaniach. Funkcja AGREGUJ oraz SUMY.CZĘŚCIOWE2015-06-03T09:14:29+00:002015-06-03T09:14:29+00:00http://slow7.pl/office/item/99-excel-w-zadaniach-funkcja-agreguj-oraz-sumy-czesciowepikolo[email protected]<div class="K2FeedImage"><img src="http://slow7.pl/media/k2/items/cache/063ee9aeb9f60efa02823e51450f82ce_S.jpg" alt="Excel w zadaniach. Funkcja AGREGUJ oraz SUMY.CZĘŚCIOWE" /></div><div class="K2FeedIntroText"><p style="margin-bottom: 0.0001pt;">Jedną z nowszych funkcji, która została wprowadzona w Excel 2010 jest funkcja AGREGUJ. Standardowe funkcje takie jak SUMA, ŚREDNIA czym MAX przerywają swoje działanie gdy w zdefiniowanym zakresie wystąpi błąd. Do ominięcia tego ograniczenia możemy właśnie wykorzystać funkcję AGREGUJ. Jej uniwersalność wynika z faktu, że (opcjonalnie) może ona ignorować ukryte komórki i wartości błędów. Funkcja AGREGUJ jest w zasadzie multifunkcją czyli taką funkcją, która potrafi operować na kilkunastu innych, różnych funkcjach czy to liczących czy sumujących. W składni formuły za pomocą wartości numerycznej (każda z funkcji ma przypisany swój numer) określamy z jakiej funkcji będziemy korzystać a dodatkowo również za pomocą wartości numerycznej określamy sposób zachowania się funkcji np. w sytuacji błędu czy wystąpienia wierszy ukrytych.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
</div><div class="K2FeedFullText">
<p style="margin-bottom: 0.0001pt;">Arkusz na którym będę przeprowadzał ćwiczenia można pobrać tu: <a href="http://slow7.pl/images/stories/office/excel_7/agreguj.xlsx">arkusz</a></p>
<p style="margin-bottom: 0.0001pt;">Ogólna składnia funkcji jest następująca: <strong>AGREGUJ(funkcja_nr;opcje;odwołanie1; odwołanie2;...)</strong></p>
<p style="margin-bottom: 0.0001pt;">gdzie:</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;"><strong>funkcja_nr</strong> – jest liczbą od 1 do 19, określająca funkcję, która ma zostać użyta,</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;"><strong>opcje</strong> – czyli wartość liczbowa określająca, sposób zachowania się funkcji,</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;"><strong>odwołanie1</strong> – pierwszy argument liczbowy dla funkcji przyjmujących kilka argumentów liczbowych,</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;"><strong>odwołanie2</strong> – od 2 do 253 opcjonalnych argumentów liczbowych, dla których ma być agregowana wartość.</p>
<p style="margin-bottom: 0.0001pt;">Oznaczenie poszczególnych wartości parametru funkcja_nr przedstawiono poniżej:</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">1 - ŚREDNIA</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">2 - ILE.LICZB</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">3 - ILE.NIEPUSTYCH</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">4 - MAX</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">5 - MIN</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">6 - ILOCZYN</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">7 - ODCH.STANDARD.PRÓBKI</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">8 - ODCH.STAND.POPUL</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">9 - SUMA</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">10 - WARIANCJA.PRÓBKI</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">11 - WARIANCJA.POP</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">12 - MEDIANA</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">13 - WYST.NAJCZĘŚCIEJ.WART</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">14 - MAX.K</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">15 - MIN.K</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">16 - PERCENTYL.PRZEDZ.ZAMK</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">17 - KWARTYL.PRZEDZ.ZAMK</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">18 - PERCENTYL.PRZEDZ.OTW</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">19 - KWARTYL.PRZEDZ.OTW</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Natomiast oznaczenie parametru <strong>opcje</strong> przedstawia się następująco:</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">0 lub pominięte - Ignoruj zagnieżdżone funkcje SUMY.CZĘŚCIOWE i AGREGUJ</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">1 - Ignoruj ukryte wiersze oraz zagnieżdżone funkcje SUMY.CZĘŚCIOWE i AGREGUJ</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">2 - Ignoruj wartości błędów oraz zagnieżdżone funkcje SUMY.CZĘŚCIOWE i AGREGUJ</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">3 - Ignoruj ukryte wiersze, wartości błędów oraz zagnieżdżone funkcje SUMY.CZĘŚCIOWE i AGREGUJ</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">4 - Nie ignoruj niczego</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">5 - Ignoruj ukryte wiersze</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">6 - Ignoruj wartości błędów</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">7 - Ignoruj ukryte wiersze i wartości błędów</p>
<p style="margin-bottom: 0.0001pt;">Wszystkie wartości parametrów będą podawane jako podpowiedź podczas definiowania funkcji.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image1.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image1.png" alt="image1" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">OK to na tyle wstępu teoretycznego czas przejść do zadania i pokazać funkcję w konkretnym zastosowaniu.</p>
<p style="margin-bottom: 0.0001pt;">Załóżmy, że prowadzimy księgarnie i w arkuszu mamy prowadzoną ewidencję zamówień np. taką jak poniżej.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image2.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image2.png" alt="image2" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Wykonajmy obliczenia ilości wszystkich książek oraz ich wartości. Zadanie wykonamy dwojako: pierwszy sposób - użyjemy tradycyjnej funkcji SUMA oraz drugi sposób - użyjemy funkcji AGREGUJ</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image3.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image3.png" alt="image3" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">W przypadku pierwszego sposobu zostały użyte formuły:</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">ilość książek - <strong>=SUMA(D2:D22)</strong></p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">wartość - <strong>=SUMA(F2:F22)</strong></p>
<p style="margin-bottom: 0.0001pt;">Zaś w przypadku drugiego sposobu:</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">ilość książek - <strong>=AGREGUJ(9;7;D2:D22)</strong></p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">wartość - <strong>=AGREGUJ(9;7;F2:F22)</strong></p>
<p style="margin-bottom: 0.0001pt;">Funkcji SUMA nie trzeba tłumaczyć zatrzymajmy się chwilę przy funkcji AGREGUJ. W formule jako pierwszy parametr (<strong>funkcja_nr</strong>) została użyta wartość <strong>9</strong> ponieważ odpowiada ona działaniu funkcji SUMA, kolejny parametr <strong>7</strong> (<strong>opcje</strong>) nakazuje ignorować ukryte wiersze i wartości błędów, zaś zakres (<strong>odwołanie1</strong>) jest przekazywany do użytej funkcji.</p>
<p style="margin-bottom: 0.0001pt;">Oba użyte sposoby reprezentują te same wyniki, rodzi się pytanie - Gdzie jest haczyk i w czym oba użyte rozwiązania się różnią? Nie od dziś wiadomo, że diabeł tkwi w szczegółach więc by pokazać różnicę wykonajmy filtrowanie tak by pokazać zamówienia tylko firmy AAA.</p>
<p style="margin-bottom: 0.0001pt;">Filtrowanie w programie Excel umożliwia nam wyświetlenie wyników spełniających dane kryterium bądź kryteria. W naszym scenariuszu filtr powinien pokazywać tylko zamówienia należące do firmy AAA. Aby zastosować filtr w pierwszej kolejności zaznaczamy nagłówek tabeli i na karcie <strong>Narzędzia główne</strong> klikamy ikonę „lejka” a następnie <strong>Filtruj</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image4.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image4.png" alt="image4" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Po wybraniu opcji w nagłówku tabeli pojawią się strzałki umożliwiające nam wybranie i zastosowanie danego filtru. Wartości filtru odpowiadają wartością zawartym w danej kolumnie. Po rozwinięciu filtru wybieramy pole odpowiadające firmie AAA</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image5.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image5.png" alt="image5" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Innym alternatywnym sposobem włączenia filtrowania jest zaznaczenie komórki w której znajduje się informacja co do której będzie stosowane filtrowanie. W naszym przypadku w kolumnie Firma wybieramy tą w której znajduje się nazwa firmy AAA i po kliknięciu PPM z menu kontekstowego odszukujemy <strong>Filtruj</strong> i następnie <strong>Filtruj według wartości wybranej komórki</strong>.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image6.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image6.png" alt="image6" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Po zastosowaniu filtru pokazującego zamówienia firmy AAA widać już pierwszą różnicę - obliczane wartości nie są takie same. A więc rodzi się kolejne pytanie - Które wartości są prawidłowe? Szybki rzut na obliczenia i dochodzimy do wniosku, że te użyte z wykorzystanie funkcji AGREGUJ. Przykład ten pokazuje jeden z atutów stosowania funkcji AGREGUJ niż SUMA - w przypadku użycia filtrowania nie musimy się martwić o obliczenia gdyż funkcja ta zadba o to aby samemu wykonać odpowiednia przeliczenia w zależności od wyświetlanej zawartości arkusza (użyta opcja numer 7 kazała zignorować ukryte wiersze).</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image7.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image7.png" alt="image7" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">By pokazać kolejny atut stosowania funkcji AGREGUJ zmodyfikujmy lekko nasz przykład i w kolumnie <strong>Ilość</strong> wpiszmy wartości określające nam stan poszczególnych książek np. przy braku książki w magazynie - słowo: <strong>zamówić</strong> a przy zakończeniu nakładu - słowo: <strong>wyczerpano</strong>.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image8.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image8.png" alt="image8" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Zastosowanie takiego rozwiązania oczywiście w kolumnie <strong>Wartość całość</strong> spowoduje wygenerowanie błędu gdyż nie można pomnożyć wartości tekstowej poprzez liczbę – błąd: #ARG To z kolei przełoży się na błąd w sumowanej wartości książek (komórka F25). Ale jak można zauważyć nie dotyczy to funkcji AGREGUJ. Formuła przy której wykorzystano tą funkcję zwraca poprawną wartość sumy wartości wszystkich książek (użyta opcja numer 7 kazała zignorować błędy).</p>
<p style="margin-bottom: 0.0001pt;">W przypadku obliczenia ilości książek tradycyjna funkcja SUMA sprawdza się gdyż ignoruje ona komórki zawierające tekst.</p>
<p style="margin-bottom: 0.0001pt;">Myślę, że przedstawione atuty tej funkcji przemawiają same za siebie a użycie tej funkcji w budowaniu formuł może nam zaoszczędzić niepotrzebnych komplikacji jakie mogą wystąpić gdy korzystamy z tradycyjnych funkcji.</p>
<p style="margin-bottom: 0.0001pt;">W programie Excel istnieje jeszcze jedna funkcja zbliżona działaniem do funkcji AGREGUJ a mianowicie SUMY.CZĘŚCIOWE. Funkcja ta również potrafi ignorować ukryte dane np. podczas włączenia automatycznego filtrowania ale w przypadku ukrycia ręcznego musimy oddzielnie uwzględnić ten przypadek.</p>
<p style="margin-bottom: 0.0001pt;">Składnia funkcji SUMY.CZĘŚCIOWE jest bardzo podobna do funkcji AGREGUJ lecz brak jest w niej definicji sposobu zachowania się formuły w przypadku wystąpienia błędów a także ofert współpracujących funkcji jest znacznie mniejsza.</p>
<p>Składnia funkcji jest następująca: <strong>SUMY.CZĘŚCIOWE(funkcja_nr;odwołanie1; odwołanie2;...)</strong></p>
<p>gdzie:</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;"><strong>funkcja_nr</strong> – jest liczbą od 1 do 11 lub od 101 do 111, określająca funkcję, która ma zostać użyta z uwzględnieniem wartości ukrytych bądź ich ignorowaniem,</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;"><strong>odwołanie1</strong> – pierwszy argument liczbowy dla funkcji przyjmujących kilka argumentów liczbowych,</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;"><strong>odwołanie2</strong> – od 2 do 254 opcjonalnych argumentów liczbowych, dla których ma zostać obliczona suma częściowa.</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;"> </p>
<table border="1" style="border-collapse: collapse;" cellspacing="0" cellpadding="0" align="center">
<tbody>
<tr>
<td style="border: 1pt solid windowtext; padding: 0cm 5.4pt; text-align: left;" valign="top">Funkcja_nr<br /> (uwzględnianie wartości ukrytych)</td>
<td style="border-width: 1pt 1pt 1pt medium; border-style: solid solid solid none; border-color: windowtext windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">Funkcja_nr<br /> (ignorowanie wartości ukrytych)</td>
<td style="border-width: 1pt 1pt 1pt medium; border-style: solid solid solid none; border-color: windowtext windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">Funkcja</td>
</tr>
<tr>
<td style="border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; text-align: left;" valign="top">1</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">101</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">ŚREDNIA</td>
</tr>
<tr>
<td style="border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; text-align: left;" valign="top">2</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">102</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">ILE.LICZB</td>
</tr>
<tr>
<td style="border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; text-align: left;" valign="top">3</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">103</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">ILE.NIEPUSTYCH</td>
</tr>
<tr>
<td style="border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; text-align: left;" valign="top">4</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">104</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">MAX</td>
</tr>
<tr>
<td style="border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; text-align: left;" valign="top">5</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">105</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">MIN</td>
</tr>
<tr>
<td style="border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; text-align: left;" valign="top">6</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">106</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">ILOCZYN</td>
</tr>
<tr>
<td style="border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; text-align: left;" valign="top">7</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">107</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">ODCH.STANDARDOWE</td>
</tr>
<tr>
<td style="border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; text-align: left;" valign="top">8</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">108</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">ODCH.STANDARD.POPUL</td>
</tr>
<tr>
<td style="border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; text-align: left;" valign="top">9</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">109</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">SUMA</td>
</tr>
<tr>
<td style="border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; text-align: left;" valign="top">10</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">110</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">WARIANCJA</td>
</tr>
<tr>
<td style="border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; text-align: left;" valign="top">11</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">111</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">WARIANCJA.POPUL</td>
</tr>
</tbody>
</table>
<p> </p>
<p>Tak więc zastosujmy tą funkcję w naszym przykładzie i porównamy uzyskane wyniki z tradycyjną funkcją SUMA oraz funkcją AGREGUJ</p>
<p> </p>
<p><a href="http://slow7.pl/images/stories/office/excel_7/image9.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image9.png" alt="image9" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p> </p>
<p>Jak widać powyżej w przypadku zastosowania filtrowania automatycznego (zamówienia firmy AAA) wpływ zdefiniowanego ignorowania bądź uwzględnienia wartości ukrytych w funkcji SUMY.CZĘŚCIOWE jest bez znaczenia.</p>
<p>Sprawdźmy jak funkcję zachowają się w przypadku ukrycia ręcznego. Ukrycie wiersza dokonujemy poprzez kliknięcie na jego numer i wybraniu z menu kontekstowego opcji <strong>Ukryj</strong>.</p>
<p>Aby sprawdzić działanie funkcji ukryjmy wiersze 8 i 9.</p>
<p>Tu już mamy odmienną sytuację gdyż w przypadku zastosowania w formule opcji 9 funkcja SUMY.CZĘŚCIOWE działa tak jak tradycyjna funkcja SUMA - wartości ukryte są uwzględniane. Natomiast zastosowanie opcji 109 powoduje, ignorowanie ukrytych wartości, obliczona wartość jest tożsama z tą obliczoną przy pomocy funkcji AGREGUJ.</p>
<p> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image10.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image10.png" alt="image10" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Funkcja SUMY.CZĘŚCIOWE tak samo jak funkcja SUMA nie radzi sobie w przypadku wystąpienia błędów.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image11.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image11.png" alt="image11" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Podsumowując część obliczeń uda ci się wykonać przy użyciu funkcji SUMY.CZĘŚCIOWE lecz funkcja AGREGUJ jest bardziej elastyczna.</p>
<p style="margin-bottom: 0.0001pt;">Z funkcją SUMY.CZĘŚCIOWE jest związane jeszcze jedno przydatne narzędzia zawarte na karcie <strong>Dane</strong> a nazwane (to ci niespodzianka) <strong>Suma częściowa</strong>. Narzędzie świetnie sprawdza się do wykonania wszelkiego rodzaju podsumowań ale aby narzędzie zadziałało należy w pierwszym kroku wykonać sortowanie według kryterium, którego będziemy te podsumowanie prowadzić.</p>
<p style="margin-bottom: 0.0001pt;">Przypuśćmy, że chcemy dowiedzieć się o wartości sprzedanych książek ale w rozbiciu o firmy. Tak więc w pierwszej kolejności sortujemy nasz arkusz według firm z którymi prowadzimy współpracę. Aby dokonać sortowanie zaznaczamy wszystkie dane (bardzo ważny krok) i klikamy ikonę „lejka” lecz tym razem z dostępnych opcji wybieramy <strong>Sortuj …</strong> Do wyboru mamy trzy opcje: myślę, że dwie pierwsze nie wymagają tłumaczenia (<strong>Sortuj od A do Z</strong> oraz <strong>Sortuj od Z do A</strong>) natomiast zatrzymajmy się na chwilę przy trzeciej opcji a mianowicie <strong>Sortowanie niestandardowe</strong>. Wybranie tej opcji pozwoli nam na wykonanie sortowania według kilku kryteriów. Przypuśćmy, że chcemy nasze dane ułożyć w kolejności <strong>firm</strong> i dodatkowo największej sprzedanej <strong>ilości</strong> pozycji. Po zaznaczeniu danych i wybraniu <strong>Sortowanie niestandardowe</strong> w nowo otwartym oknie definiujemy poziomy sortowania. Aby dodać nowy poziom należy wybrać: <strong>Dodaj poziom</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image12.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image12.png" alt="image12" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Efekt wykonanej operacji sortowania przedstawia się następująco, firmy są ułożone w kolejności od A do Z natomiast w obrębie firmy dane dodatkowo są ułożone według malejącej ilości sprzedanych egzemplarzy.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image13.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image13.png" alt="image13" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Oczywiście proces ten możemy powtarzać według wielu kryteriów lecz co najważniejsze pamiętaj abyś zawsze zaznaczał wszystkie dane. Może zastanawiasz się - Czemu jest to tak ważne? Gdy nie zaznaczysz wszystkich danych i wykonasz sortowanie według jednej ustalonej kolumny to wiersze zawarte w tej kolumnie ulegną wymieszaniu tj. posortujesz dane zawarte tylko w tej jednej zaznaczonej kolumnie, inne dane umiejscowione w innych kolumnach pozostaną na swoim miejscu. Na szczęście przed wykonaniem tego błędu chroni nas dodatkowy komunikat, który pojawia się w przypadku wykrycia zaznaczenia, które może spowodować zaburzenie spójności naszych danych.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image14.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image14.png" alt="image14" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Myślę że najlepiej to przedstawi przykład. Posortujmy nasze zamówienia wg. <strong>numeru zamówienia</strong> lecz w pierwszym przypadku zaznaczymy sortowanie tylko pierwszej kolumny a w drugim sortowanie wszystkich danych.</p>
<p style="margin-bottom: 0.0001pt;">Dane oryginalne:</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image15.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image15.png" alt="image15" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Sortowanie tylko wg. numeru zamówienia</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image16.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image16.png" alt="image16" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Sortowanie całości</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image17.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image17.png" alt="image17" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">W pierwszym przypadku sortowaniu uległa tylko pierwsza kolumna, reszta danych pozostała bez zmian, sortowanie to zostało przeprowadzone błędnie gdyż w ten sposób straciliśmy integralność wprowadzonych danych tj. numer zamówienia nie odpowiada rzeczywistym zamówieniom.</p>
<p style="margin-bottom: 0.0001pt;">W drugim zaś przypadku sortowaniu uległy wszystkie dane tj. numer zamówienia zmienił położenie ale również reszta danych też. Dzięki temu integralność danych nie została zaburzona.</p>
<p style="margin-bottom: 0.0001pt;">Wracamy do naszego przykładu z narzędziem <strong>Suma częściowa</strong>. Aby uzyskać informację o wartości książek sprzedanych każdej z firm wykonujemy sortowanie według firm a w następnym kroku przechodzimy na kartę <strong>Dane</strong> i wybieramy <strong>Suma częściowa </strong>(po uprzednim zaznaczeniu wszystkich danych wraz z nagłówkami). W nowo otwartym oknie w polu <strong>Dla każdej zmiany</strong> wybieramy <strong>Firma</strong>, w polu <strong>Użyj funkcji</strong> definiujemy funkcję jaka ma być użyta natomiast w sekcji <strong>Dodaj sumę częściową do</strong> zaznaczamy kolumnę do której wybrana funkcja będzie miała zastosowanie.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image18.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image18.png" alt="image18" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Poniżej mamy jeszcze do dyspozycji trzy opcje, które możemy dodatkowo zdefiniować:</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;"><strong>Zamień bieżące sumy częściowe</strong> - zamienia istniejące sumy częściowe na nowo zdefiniowane,</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;"><strong>Podział strony pomiędzy grupami </strong>- ustawia podział strony na grupy, przydatne gdy chcemy wydrukować utworzone zestawienie dla każdej sekcji danych z osobna. W naszym przypadku na każdym z wydruków znalazłby się dane dotyczące tylko jednej z firm.</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;"><strong>Podsumowanie poniżej danych</strong> - włącza podsumowanie poniżej każdej z grup.</p>
<p style="margin-bottom: 0.0001pt;">Po określeniu opcji narzędzia <strong>Suma częściowa</strong> klikamy na OK.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image19.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image19.png" alt="image19" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Jak można zauważyć powyżej dla każdej z firm została obliczona suma wartości wszystkich zamówień z wyjątkiem wartości zamówienia firmy CCC i całkowitego podsumowania wszystkich firm. Stało się tak ponieważ jak już wiesz czytelniku funkcja SUMY.CZĘŚCIOWE nie radzi sobie z błędami.</p>
<p style="margin-bottom: 0.0001pt;">Nowo utworzone pole (z lewej strony z cyframi 1,2 oraz 3) służy do „zawinięcia” danych.</p>
<p style="margin-bottom: 0.0001pt;">Spróbujmy błąd wyeliminować i zaobserwować zmiany.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image20.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image20.png" alt="image20" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Jak można zauważyć po zmianie w komórce D18 gdzie znikło słowo „zamówić” a pojawiła się wartość liczbowa obliczenia są wykonane poprawnie za to ciekawe spostrzeżenia możemy dokonać poniżej. Jak widać funkcja SUMA nie radzi sobie z utworzonymi sumami częściowymi ponieważ są one wliczone do ogólnej wartości zamówień co prowadzi do błędnych obliczeń - zamiast prawidłowego wyniku jakim jest wartość 73380 zł funkcja pokazuje nam wynik 11608zł (stało się tak ponieważ wartości obliczone poprzez narzędzie <strong>Suma częściowa</strong> zostały wstawione wewnątrz zakresu zdefiniowanego w funkcji SUMA).</p>
<p style="margin-bottom: 0.0001pt;">Funkcja AGREGUJ również nie poradziła sobie z wyliczeniem poprawnej wartości ale jest to błąd spowodowany nieprawidłowym zdefiniowaniem opcji ignorowania - opcja 7 nakazuje zignorować ukryte wiersze i wartości błędów a nie zagnieżdżone funkcje SUMY.CZĘŚCIOWE Aby wynik był prawidłowy wystarczy opcję zmienić np. na 3 (ignorowane będzie wszystko)</p>
<p style="margin-bottom: 0.0001pt;">Dwie pozostałe ręcznie zdefiniowane funkcje SUMY.CZĘŚCIOWE pokazują poprawne wyniki ponieważ funkcja ta domyślnie ignoruje inne funkcje SUMY.CZĘSCIOWE</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image21.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image21.png" alt="image21" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Jeżeli w naszym arkuszu będziemy chcieli korzystać z komórek, które zawierają tekst będziemy musieli niestety utworzone definicje formuł zawierających funkcję SUMY.CZĘŚCIOWE ręcznie zmodyfikować.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image22.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image22.png" alt="image22" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Jakbyś Czytelniku znał jakiś inny sposób poza ręczną modyfikacją formuł zawartych w komórkach to Ja bardzo chętnie go poznam.</p>
<p style="margin-bottom: 0.0001pt;">Na koniec chciałbym jeszcze przedstawić dwie funkcje, które na pewno wzbogacą arkusz w kontekście tworzenia zestawień. Dlatego też w naszym arkuszu wprowadzę jeszcze jedną kolumnę a mianowicie pole <strong>Data</strong>.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image23.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image23.png" alt="image23" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Naszym zadaniem będzie utworzenie takiej formuły, która wyliczy nam wartość zamówienia obejmująca dany okres. Przyjmijmy, że interesuje nas wartość zamówień za miesiąc luty 2015. Zadanie to zrealizujemy za pomocą podanie wiersza w której znajduje się data początkowa (w przykładzie wiersz 5 – data: 2015-02-04) interesującego nas okresu oraz podanie drugiego numeru wiersza tym razem z datą końcową (w przykładzie wiersz 11 – data: 2015-03-28)</p>
<p style="margin-bottom: 0.0001pt;">Aby wykonać zadanie będziemy musieli skorzystać z dwóch nowych funkcji a mianowicie funkcji ADRES oraz funkcji ADR.POŚR</p>
<p style="margin-bottom: 0.0001pt;">Zadaniem pierwszej funkcji ADRES jest utworzenie tekstu będącego adresem komórki o określonych przez nas współrzędnych. Składnia funkcji prezentuje się następująco: <strong>ADRES(nr_wiersza;nr_kolumny ;typ_adresu;A1;tekst_arkusz)</strong></p>
<p style="margin-bottom: 0.0001pt;">gdzie poszczególne parametry oznaczają:</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;"><strong>nr_wiersza </strong>- wymagany, wartość liczbowa określająca numer wiersza, który ma zostać użyty w odwołaniu do komórki,</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;"><strong>nr_kolumny</strong> - wymagany, wartość liczbowa określająca numer kolumny, który ma zostać użyty w odwołaniu do komórki,</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;"><strong>typ_adresu</strong> – opcjonalny, wartość liczbowa określająca, jakiego typu odwołanie będzie zwracane przez funkcję. Zwracany typ odwołania</p>
<p style="margin: 0cm 0cm 0.0001pt 60px;">1 - lub pominięte Bezwzględne (bezwzględne odwołanie do komórki: W formule jest to dokładny adres komórki, niezależny od położenia komórki, która zawiera formułę. Bezwzględne odwołanie do komórki ma postać $A$1.)</p>
<p style="margin: 0cm 0cm 0.0001pt 60px;">2 Bezwzględne wiersza, względne kolumny np. A$1</p>
<p style="margin: 0cm 0cm 0.0001pt 60px;">3 Względne wiersza, bezwzględne kolumny np. $A1</p>
<p style="margin: 0cm 0cm 0.0001pt 60px;">4 Względne np. A1</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;"><strong>A1 </strong>- opcjonalny, wartość logiczna określająca styl odwołań A1 lub W1K1.</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;"><strong>tekst_arkusz</strong> – opcjonalny, wartość tekstowa określająca nazwę arkusza używanego jako odwołanie zewnętrzne. Na przykład formuła =ADRES(1;1;;;"Arkusz2") zwraca wartość Arkusz2!$A$1. Jeśli argument tekst_arkusz jest pominięty, nazwa arkusza nie jest używana, a adres zwracany przez funkcję odwołuje się do komórki w bieżącym arkuszu.</p>
<p style="margin-bottom: 0.0001pt;">To przykład ilustrujący działanie funkcji ADRES</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image24.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image24.png" alt="image24" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Druga z funkcji ADR.POŚR jest funkcją, która jest używana do zamiany argumentu tekstowego opisującego odwołanie do obszaru na normalne odwołanie do zakresu komórek.</p>
<p style="margin-bottom: 0.0001pt;">Składnia funkcji ADR.POŚR jest następująca: <strong>ADR.POŚR(adres_tekst; A1)</strong></p>
<p style="margin-bottom: 0.0001pt;">gdzie parametry oznaczają:</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;"><strong>adres_tekst</strong> - wymagany, odwołanie do komórki zawierającej odwołanie w trybie adresowania A1 lub W1K1 albo nazwę zdefiniowaną jako odwołanie bądź odwołanie do komórki jako ciągu tekstowego.</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;"><strong>A1 </strong>– opcjonalny, wartość logiczna określająca, jaki typ odwołania znajduje się w komórce adres_tekst.</p>
<p style="margin-bottom: 0.0001pt;">Tak więc mały przykład.</p>
<p style="margin-bottom: 0.0001pt;">W komórkach od D4 do D11 mamy wpisane wartości, natomiast w komórce G4 oraz G5 będziemy wpisywali zakres komórek, który będzie sumowany. Wpisane adresy komórek są wpisanym tekstem. Za pomocą funkcji ADR.POŚR tekst ten zamienimy na normalne odwołanie i połączymy je z funkcją SUMA.</p>
<p style="margin-bottom: 0.0001pt;">Formuła, która pozwoli nam na zsumowanie zdefiniowanego zakresu przyjmie postać: =SUMA(ADR.POŚR(G4):(ADR.POŚR(G5))) Działanie formuły sprowadza się do pobrania zawartości komórek G4 oraz G5 i przy pomocy funkcji ADR.POŚR zamienienie ich na odwołanie. Odwołanie przyjmuje postać zakresu od D5 do D9 Zakres ten jest argumentem funkcji SUMA czego efektem jest dodanie do siebie wszystkich wartości zawartych w komórkach od D5 do D9.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image25.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image25.png" alt="image25" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Uzbrojeni w wiedzę o sposobie działania funkcji ADRES oraz ADR.POŚR wracamy do naszego przykładu.</p>
<p style="margin-bottom: 0.0001pt;">Formuła, która pozwoli nam na wyliczenie wartości zamówień w zależności od podania wiersza daty początkowej i wiersza daty końcowej przyjmie postać: =AGREGUJ(9;3;ADR.POŚR(ADRES(J4;7)):ADR.POŚR(ADRES(J5;7)))</p>
<ul>
<li>funkcja ADRES pobiera nam z komórek J4 oraz J5 numery wierszy, natomiast numer kolumny jest zdefiniowany na 7 ponieważ potrzebujemy dodać do siebie wartości zamówień, pobrane adresy są tekstem,</li>
<li>funkcja ADR.POŚR zamienia adresy tekstowe na normalne odwołania,</li>
<li>utworzony zakres stanowi argument funkcji AGREGUJ, nakazujący zsumowanie wartości znajdujących się w zakresie (opcja 9) z ignorowaniem ukrytych wierszy, wartości błędów oraz zagnieżdżonych funkcji SUMY.CZĘŚCIOWE i AGREGUJ</li>
</ul>
<p style="margin-bottom: 0.0001pt;">Nasz cel został osiągnięty, można by zadać pytanie – Czy nie da się tego zrobić prościej? Ten sam efekt otrzymamy przy użyciu funkcji: =SUMA(ADR.POŚR("G"&J4&":G"&J5))</p>
<p style="margin-bottom: 0.0001pt;">Jak można zauważyć w formule tej nie użyliśmy funkcji ADRES lecz by otrzymać zakres został użyty operator konkatenacji łączący adres kolumny z adresem wiersza wprowadzonym w komórkach J4 oraz J5.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image26.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image26.png" alt="image26" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">I tu pozwól czytelniku, że przykład tej formuły będzie wstępem do kolejnego wpisu w którym omówię sposoby łączenia ze sobą danych z różnych komórek.</p>
<hr />
<p style="margin-bottom: 0.0001pt;">Bibliografia:</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="https://support.office.com/pl-pl/article/AGREGUJ-funkcja-c8caed56-07df-4aeb-9741-23693ffbe525">https://support.office.com/pl-pl/article/AGREGUJ-funkcja-c8caed56-07df-4aeb-9741-23693ffbe525</a></p>
<p style="margin-bottom: 0.0001pt;"><a href="https://support.office.com/pl-pl/article/ADRES-funkcja-47657e92-81ae-47f8-87cd-62d4f30c774d">https://support.office.com/pl-pl/article/ADRES-funkcja-47657e92-81ae-47f8-87cd-62d4f30c774d</a></p></div><div class="K2FeedImage"><img src="http://slow7.pl/media/k2/items/cache/063ee9aeb9f60efa02823e51450f82ce_S.jpg" alt="Excel w zadaniach. Funkcja AGREGUJ oraz SUMY.CZĘŚCIOWE" /></div><div class="K2FeedIntroText"><p style="margin-bottom: 0.0001pt;">Jedną z nowszych funkcji, która została wprowadzona w Excel 2010 jest funkcja AGREGUJ. Standardowe funkcje takie jak SUMA, ŚREDNIA czym MAX przerywają swoje działanie gdy w zdefiniowanym zakresie wystąpi błąd. Do ominięcia tego ograniczenia możemy właśnie wykorzystać funkcję AGREGUJ. Jej uniwersalność wynika z faktu, że (opcjonalnie) może ona ignorować ukryte komórki i wartości błędów. Funkcja AGREGUJ jest w zasadzie multifunkcją czyli taką funkcją, która potrafi operować na kilkunastu innych, różnych funkcjach czy to liczących czy sumujących. W składni formuły za pomocą wartości numerycznej (każda z funkcji ma przypisany swój numer) określamy z jakiej funkcji będziemy korzystać a dodatkowo również za pomocą wartości numerycznej określamy sposób zachowania się funkcji np. w sytuacji błędu czy wystąpienia wierszy ukrytych.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
</div><div class="K2FeedFullText">
<p style="margin-bottom: 0.0001pt;">Arkusz na którym będę przeprowadzał ćwiczenia można pobrać tu: <a href="http://slow7.pl/images/stories/office/excel_7/agreguj.xlsx">arkusz</a></p>
<p style="margin-bottom: 0.0001pt;">Ogólna składnia funkcji jest następująca: <strong>AGREGUJ(funkcja_nr;opcje;odwołanie1; odwołanie2;...)</strong></p>
<p style="margin-bottom: 0.0001pt;">gdzie:</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;"><strong>funkcja_nr</strong> – jest liczbą od 1 do 19, określająca funkcję, która ma zostać użyta,</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;"><strong>opcje</strong> – czyli wartość liczbowa określająca, sposób zachowania się funkcji,</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;"><strong>odwołanie1</strong> – pierwszy argument liczbowy dla funkcji przyjmujących kilka argumentów liczbowych,</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;"><strong>odwołanie2</strong> – od 2 do 253 opcjonalnych argumentów liczbowych, dla których ma być agregowana wartość.</p>
<p style="margin-bottom: 0.0001pt;">Oznaczenie poszczególnych wartości parametru funkcja_nr przedstawiono poniżej:</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">1 - ŚREDNIA</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">2 - ILE.LICZB</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">3 - ILE.NIEPUSTYCH</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">4 - MAX</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">5 - MIN</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">6 - ILOCZYN</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">7 - ODCH.STANDARD.PRÓBKI</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">8 - ODCH.STAND.POPUL</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">9 - SUMA</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">10 - WARIANCJA.PRÓBKI</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">11 - WARIANCJA.POP</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">12 - MEDIANA</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">13 - WYST.NAJCZĘŚCIEJ.WART</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">14 - MAX.K</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">15 - MIN.K</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">16 - PERCENTYL.PRZEDZ.ZAMK</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">17 - KWARTYL.PRZEDZ.ZAMK</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">18 - PERCENTYL.PRZEDZ.OTW</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">19 - KWARTYL.PRZEDZ.OTW</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Natomiast oznaczenie parametru <strong>opcje</strong> przedstawia się następująco:</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">0 lub pominięte - Ignoruj zagnieżdżone funkcje SUMY.CZĘŚCIOWE i AGREGUJ</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">1 - Ignoruj ukryte wiersze oraz zagnieżdżone funkcje SUMY.CZĘŚCIOWE i AGREGUJ</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">2 - Ignoruj wartości błędów oraz zagnieżdżone funkcje SUMY.CZĘŚCIOWE i AGREGUJ</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">3 - Ignoruj ukryte wiersze, wartości błędów oraz zagnieżdżone funkcje SUMY.CZĘŚCIOWE i AGREGUJ</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">4 - Nie ignoruj niczego</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">5 - Ignoruj ukryte wiersze</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">6 - Ignoruj wartości błędów</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">7 - Ignoruj ukryte wiersze i wartości błędów</p>
<p style="margin-bottom: 0.0001pt;">Wszystkie wartości parametrów będą podawane jako podpowiedź podczas definiowania funkcji.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image1.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image1.png" alt="image1" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">OK to na tyle wstępu teoretycznego czas przejść do zadania i pokazać funkcję w konkretnym zastosowaniu.</p>
<p style="margin-bottom: 0.0001pt;">Załóżmy, że prowadzimy księgarnie i w arkuszu mamy prowadzoną ewidencję zamówień np. taką jak poniżej.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image2.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image2.png" alt="image2" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Wykonajmy obliczenia ilości wszystkich książek oraz ich wartości. Zadanie wykonamy dwojako: pierwszy sposób - użyjemy tradycyjnej funkcji SUMA oraz drugi sposób - użyjemy funkcji AGREGUJ</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image3.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image3.png" alt="image3" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">W przypadku pierwszego sposobu zostały użyte formuły:</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">ilość książek - <strong>=SUMA(D2:D22)</strong></p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">wartość - <strong>=SUMA(F2:F22)</strong></p>
<p style="margin-bottom: 0.0001pt;">Zaś w przypadku drugiego sposobu:</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">ilość książek - <strong>=AGREGUJ(9;7;D2:D22)</strong></p>
<p style="margin: 0cm 0cm 0.0001pt 30px;">wartość - <strong>=AGREGUJ(9;7;F2:F22)</strong></p>
<p style="margin-bottom: 0.0001pt;">Funkcji SUMA nie trzeba tłumaczyć zatrzymajmy się chwilę przy funkcji AGREGUJ. W formule jako pierwszy parametr (<strong>funkcja_nr</strong>) została użyta wartość <strong>9</strong> ponieważ odpowiada ona działaniu funkcji SUMA, kolejny parametr <strong>7</strong> (<strong>opcje</strong>) nakazuje ignorować ukryte wiersze i wartości błędów, zaś zakres (<strong>odwołanie1</strong>) jest przekazywany do użytej funkcji.</p>
<p style="margin-bottom: 0.0001pt;">Oba użyte sposoby reprezentują te same wyniki, rodzi się pytanie - Gdzie jest haczyk i w czym oba użyte rozwiązania się różnią? Nie od dziś wiadomo, że diabeł tkwi w szczegółach więc by pokazać różnicę wykonajmy filtrowanie tak by pokazać zamówienia tylko firmy AAA.</p>
<p style="margin-bottom: 0.0001pt;">Filtrowanie w programie Excel umożliwia nam wyświetlenie wyników spełniających dane kryterium bądź kryteria. W naszym scenariuszu filtr powinien pokazywać tylko zamówienia należące do firmy AAA. Aby zastosować filtr w pierwszej kolejności zaznaczamy nagłówek tabeli i na karcie <strong>Narzędzia główne</strong> klikamy ikonę „lejka” a następnie <strong>Filtruj</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image4.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image4.png" alt="image4" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Po wybraniu opcji w nagłówku tabeli pojawią się strzałki umożliwiające nam wybranie i zastosowanie danego filtru. Wartości filtru odpowiadają wartością zawartym w danej kolumnie. Po rozwinięciu filtru wybieramy pole odpowiadające firmie AAA</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image5.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image5.png" alt="image5" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Innym alternatywnym sposobem włączenia filtrowania jest zaznaczenie komórki w której znajduje się informacja co do której będzie stosowane filtrowanie. W naszym przypadku w kolumnie Firma wybieramy tą w której znajduje się nazwa firmy AAA i po kliknięciu PPM z menu kontekstowego odszukujemy <strong>Filtruj</strong> i następnie <strong>Filtruj według wartości wybranej komórki</strong>.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image6.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image6.png" alt="image6" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Po zastosowaniu filtru pokazującego zamówienia firmy AAA widać już pierwszą różnicę - obliczane wartości nie są takie same. A więc rodzi się kolejne pytanie - Które wartości są prawidłowe? Szybki rzut na obliczenia i dochodzimy do wniosku, że te użyte z wykorzystanie funkcji AGREGUJ. Przykład ten pokazuje jeden z atutów stosowania funkcji AGREGUJ niż SUMA - w przypadku użycia filtrowania nie musimy się martwić o obliczenia gdyż funkcja ta zadba o to aby samemu wykonać odpowiednia przeliczenia w zależności od wyświetlanej zawartości arkusza (użyta opcja numer 7 kazała zignorować ukryte wiersze).</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image7.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image7.png" alt="image7" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">By pokazać kolejny atut stosowania funkcji AGREGUJ zmodyfikujmy lekko nasz przykład i w kolumnie <strong>Ilość</strong> wpiszmy wartości określające nam stan poszczególnych książek np. przy braku książki w magazynie - słowo: <strong>zamówić</strong> a przy zakończeniu nakładu - słowo: <strong>wyczerpano</strong>.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image8.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image8.png" alt="image8" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Zastosowanie takiego rozwiązania oczywiście w kolumnie <strong>Wartość całość</strong> spowoduje wygenerowanie błędu gdyż nie można pomnożyć wartości tekstowej poprzez liczbę – błąd: #ARG To z kolei przełoży się na błąd w sumowanej wartości książek (komórka F25). Ale jak można zauważyć nie dotyczy to funkcji AGREGUJ. Formuła przy której wykorzystano tą funkcję zwraca poprawną wartość sumy wartości wszystkich książek (użyta opcja numer 7 kazała zignorować błędy).</p>
<p style="margin-bottom: 0.0001pt;">W przypadku obliczenia ilości książek tradycyjna funkcja SUMA sprawdza się gdyż ignoruje ona komórki zawierające tekst.</p>
<p style="margin-bottom: 0.0001pt;">Myślę, że przedstawione atuty tej funkcji przemawiają same za siebie a użycie tej funkcji w budowaniu formuł może nam zaoszczędzić niepotrzebnych komplikacji jakie mogą wystąpić gdy korzystamy z tradycyjnych funkcji.</p>
<p style="margin-bottom: 0.0001pt;">W programie Excel istnieje jeszcze jedna funkcja zbliżona działaniem do funkcji AGREGUJ a mianowicie SUMY.CZĘŚCIOWE. Funkcja ta również potrafi ignorować ukryte dane np. podczas włączenia automatycznego filtrowania ale w przypadku ukrycia ręcznego musimy oddzielnie uwzględnić ten przypadek.</p>
<p style="margin-bottom: 0.0001pt;">Składnia funkcji SUMY.CZĘŚCIOWE jest bardzo podobna do funkcji AGREGUJ lecz brak jest w niej definicji sposobu zachowania się formuły w przypadku wystąpienia błędów a także ofert współpracujących funkcji jest znacznie mniejsza.</p>
<p>Składnia funkcji jest następująca: <strong>SUMY.CZĘŚCIOWE(funkcja_nr;odwołanie1; odwołanie2;...)</strong></p>
<p>gdzie:</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;"><strong>funkcja_nr</strong> – jest liczbą od 1 do 11 lub od 101 do 111, określająca funkcję, która ma zostać użyta z uwzględnieniem wartości ukrytych bądź ich ignorowaniem,</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;"><strong>odwołanie1</strong> – pierwszy argument liczbowy dla funkcji przyjmujących kilka argumentów liczbowych,</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;"><strong>odwołanie2</strong> – od 2 do 254 opcjonalnych argumentów liczbowych, dla których ma zostać obliczona suma częściowa.</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;"> </p>
<table border="1" style="border-collapse: collapse;" cellspacing="0" cellpadding="0" align="center">
<tbody>
<tr>
<td style="border: 1pt solid windowtext; padding: 0cm 5.4pt; text-align: left;" valign="top">Funkcja_nr<br /> (uwzględnianie wartości ukrytych)</td>
<td style="border-width: 1pt 1pt 1pt medium; border-style: solid solid solid none; border-color: windowtext windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">Funkcja_nr<br /> (ignorowanie wartości ukrytych)</td>
<td style="border-width: 1pt 1pt 1pt medium; border-style: solid solid solid none; border-color: windowtext windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">Funkcja</td>
</tr>
<tr>
<td style="border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; text-align: left;" valign="top">1</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">101</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">ŚREDNIA</td>
</tr>
<tr>
<td style="border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; text-align: left;" valign="top">2</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">102</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">ILE.LICZB</td>
</tr>
<tr>
<td style="border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; text-align: left;" valign="top">3</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">103</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">ILE.NIEPUSTYCH</td>
</tr>
<tr>
<td style="border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; text-align: left;" valign="top">4</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">104</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">MAX</td>
</tr>
<tr>
<td style="border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; text-align: left;" valign="top">5</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">105</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">MIN</td>
</tr>
<tr>
<td style="border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; text-align: left;" valign="top">6</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">106</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">ILOCZYN</td>
</tr>
<tr>
<td style="border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; text-align: left;" valign="top">7</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">107</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">ODCH.STANDARDOWE</td>
</tr>
<tr>
<td style="border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; text-align: left;" valign="top">8</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">108</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">ODCH.STANDARD.POPUL</td>
</tr>
<tr>
<td style="border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; text-align: left;" valign="top">9</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">109</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">SUMA</td>
</tr>
<tr>
<td style="border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; text-align: left;" valign="top">10</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">110</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">WARIANCJA</td>
</tr>
<tr>
<td style="border-width: medium 1pt 1pt; border-style: none solid solid; border-color: -moz-use-text-color windowtext windowtext; padding: 0cm 5.4pt; text-align: left;" valign="top">11</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">111</td>
<td style="border-width: medium 1pt 1pt medium; border-style: none solid solid none; border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; padding: 0cm 5.4pt; text-align: left;" valign="top">WARIANCJA.POPUL</td>
</tr>
</tbody>
</table>
<p> </p>
<p>Tak więc zastosujmy tą funkcję w naszym przykładzie i porównamy uzyskane wyniki z tradycyjną funkcją SUMA oraz funkcją AGREGUJ</p>
<p> </p>
<p><a href="http://slow7.pl/images/stories/office/excel_7/image9.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image9.png" alt="image9" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p> </p>
<p>Jak widać powyżej w przypadku zastosowania filtrowania automatycznego (zamówienia firmy AAA) wpływ zdefiniowanego ignorowania bądź uwzględnienia wartości ukrytych w funkcji SUMY.CZĘŚCIOWE jest bez znaczenia.</p>
<p>Sprawdźmy jak funkcję zachowają się w przypadku ukrycia ręcznego. Ukrycie wiersza dokonujemy poprzez kliknięcie na jego numer i wybraniu z menu kontekstowego opcji <strong>Ukryj</strong>.</p>
<p>Aby sprawdzić działanie funkcji ukryjmy wiersze 8 i 9.</p>
<p>Tu już mamy odmienną sytuację gdyż w przypadku zastosowania w formule opcji 9 funkcja SUMY.CZĘŚCIOWE działa tak jak tradycyjna funkcja SUMA - wartości ukryte są uwzględniane. Natomiast zastosowanie opcji 109 powoduje, ignorowanie ukrytych wartości, obliczona wartość jest tożsama z tą obliczoną przy pomocy funkcji AGREGUJ.</p>
<p> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image10.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image10.png" alt="image10" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Funkcja SUMY.CZĘŚCIOWE tak samo jak funkcja SUMA nie radzi sobie w przypadku wystąpienia błędów.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image11.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image11.png" alt="image11" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Podsumowując część obliczeń uda ci się wykonać przy użyciu funkcji SUMY.CZĘŚCIOWE lecz funkcja AGREGUJ jest bardziej elastyczna.</p>
<p style="margin-bottom: 0.0001pt;">Z funkcją SUMY.CZĘŚCIOWE jest związane jeszcze jedno przydatne narzędzia zawarte na karcie <strong>Dane</strong> a nazwane (to ci niespodzianka) <strong>Suma częściowa</strong>. Narzędzie świetnie sprawdza się do wykonania wszelkiego rodzaju podsumowań ale aby narzędzie zadziałało należy w pierwszym kroku wykonać sortowanie według kryterium, którego będziemy te podsumowanie prowadzić.</p>
<p style="margin-bottom: 0.0001pt;">Przypuśćmy, że chcemy dowiedzieć się o wartości sprzedanych książek ale w rozbiciu o firmy. Tak więc w pierwszej kolejności sortujemy nasz arkusz według firm z którymi prowadzimy współpracę. Aby dokonać sortowanie zaznaczamy wszystkie dane (bardzo ważny krok) i klikamy ikonę „lejka” lecz tym razem z dostępnych opcji wybieramy <strong>Sortuj …</strong> Do wyboru mamy trzy opcje: myślę, że dwie pierwsze nie wymagają tłumaczenia (<strong>Sortuj od A do Z</strong> oraz <strong>Sortuj od Z do A</strong>) natomiast zatrzymajmy się na chwilę przy trzeciej opcji a mianowicie <strong>Sortowanie niestandardowe</strong>. Wybranie tej opcji pozwoli nam na wykonanie sortowania według kilku kryteriów. Przypuśćmy, że chcemy nasze dane ułożyć w kolejności <strong>firm</strong> i dodatkowo największej sprzedanej <strong>ilości</strong> pozycji. Po zaznaczeniu danych i wybraniu <strong>Sortowanie niestandardowe</strong> w nowo otwartym oknie definiujemy poziomy sortowania. Aby dodać nowy poziom należy wybrać: <strong>Dodaj poziom</strong></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image12.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image12.png" alt="image12" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Efekt wykonanej operacji sortowania przedstawia się następująco, firmy są ułożone w kolejności od A do Z natomiast w obrębie firmy dane dodatkowo są ułożone według malejącej ilości sprzedanych egzemplarzy.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image13.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image13.png" alt="image13" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Oczywiście proces ten możemy powtarzać według wielu kryteriów lecz co najważniejsze pamiętaj abyś zawsze zaznaczał wszystkie dane. Może zastanawiasz się - Czemu jest to tak ważne? Gdy nie zaznaczysz wszystkich danych i wykonasz sortowanie według jednej ustalonej kolumny to wiersze zawarte w tej kolumnie ulegną wymieszaniu tj. posortujesz dane zawarte tylko w tej jednej zaznaczonej kolumnie, inne dane umiejscowione w innych kolumnach pozostaną na swoim miejscu. Na szczęście przed wykonaniem tego błędu chroni nas dodatkowy komunikat, który pojawia się w przypadku wykrycia zaznaczenia, które może spowodować zaburzenie spójności naszych danych.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image14.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image14.png" alt="image14" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Myślę że najlepiej to przedstawi przykład. Posortujmy nasze zamówienia wg. <strong>numeru zamówienia</strong> lecz w pierwszym przypadku zaznaczymy sortowanie tylko pierwszej kolumny a w drugim sortowanie wszystkich danych.</p>
<p style="margin-bottom: 0.0001pt;">Dane oryginalne:</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image15.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image15.png" alt="image15" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Sortowanie tylko wg. numeru zamówienia</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image16.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image16.png" alt="image16" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Sortowanie całości</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image17.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image17.png" alt="image17" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">W pierwszym przypadku sortowaniu uległa tylko pierwsza kolumna, reszta danych pozostała bez zmian, sortowanie to zostało przeprowadzone błędnie gdyż w ten sposób straciliśmy integralność wprowadzonych danych tj. numer zamówienia nie odpowiada rzeczywistym zamówieniom.</p>
<p style="margin-bottom: 0.0001pt;">W drugim zaś przypadku sortowaniu uległy wszystkie dane tj. numer zamówienia zmienił położenie ale również reszta danych też. Dzięki temu integralność danych nie została zaburzona.</p>
<p style="margin-bottom: 0.0001pt;">Wracamy do naszego przykładu z narzędziem <strong>Suma częściowa</strong>. Aby uzyskać informację o wartości książek sprzedanych każdej z firm wykonujemy sortowanie według firm a w następnym kroku przechodzimy na kartę <strong>Dane</strong> i wybieramy <strong>Suma częściowa </strong>(po uprzednim zaznaczeniu wszystkich danych wraz z nagłówkami). W nowo otwartym oknie w polu <strong>Dla każdej zmiany</strong> wybieramy <strong>Firma</strong>, w polu <strong>Użyj funkcji</strong> definiujemy funkcję jaka ma być użyta natomiast w sekcji <strong>Dodaj sumę częściową do</strong> zaznaczamy kolumnę do której wybrana funkcja będzie miała zastosowanie.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image18.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image18.png" alt="image18" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Poniżej mamy jeszcze do dyspozycji trzy opcje, które możemy dodatkowo zdefiniować:</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;"><strong>Zamień bieżące sumy częściowe</strong> - zamienia istniejące sumy częściowe na nowo zdefiniowane,</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;"><strong>Podział strony pomiędzy grupami </strong>- ustawia podział strony na grupy, przydatne gdy chcemy wydrukować utworzone zestawienie dla każdej sekcji danych z osobna. W naszym przypadku na każdym z wydruków znalazłby się dane dotyczące tylko jednej z firm.</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;"><strong>Podsumowanie poniżej danych</strong> - włącza podsumowanie poniżej każdej z grup.</p>
<p style="margin-bottom: 0.0001pt;">Po określeniu opcji narzędzia <strong>Suma częściowa</strong> klikamy na OK.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image19.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image19.png" alt="image19" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Jak można zauważyć powyżej dla każdej z firm została obliczona suma wartości wszystkich zamówień z wyjątkiem wartości zamówienia firmy CCC i całkowitego podsumowania wszystkich firm. Stało się tak ponieważ jak już wiesz czytelniku funkcja SUMY.CZĘŚCIOWE nie radzi sobie z błędami.</p>
<p style="margin-bottom: 0.0001pt;">Nowo utworzone pole (z lewej strony z cyframi 1,2 oraz 3) służy do „zawinięcia” danych.</p>
<p style="margin-bottom: 0.0001pt;">Spróbujmy błąd wyeliminować i zaobserwować zmiany.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image20.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image20.png" alt="image20" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Jak można zauważyć po zmianie w komórce D18 gdzie znikło słowo „zamówić” a pojawiła się wartość liczbowa obliczenia są wykonane poprawnie za to ciekawe spostrzeżenia możemy dokonać poniżej. Jak widać funkcja SUMA nie radzi sobie z utworzonymi sumami częściowymi ponieważ są one wliczone do ogólnej wartości zamówień co prowadzi do błędnych obliczeń - zamiast prawidłowego wyniku jakim jest wartość 73380 zł funkcja pokazuje nam wynik 11608zł (stało się tak ponieważ wartości obliczone poprzez narzędzie <strong>Suma częściowa</strong> zostały wstawione wewnątrz zakresu zdefiniowanego w funkcji SUMA).</p>
<p style="margin-bottom: 0.0001pt;">Funkcja AGREGUJ również nie poradziła sobie z wyliczeniem poprawnej wartości ale jest to błąd spowodowany nieprawidłowym zdefiniowaniem opcji ignorowania - opcja 7 nakazuje zignorować ukryte wiersze i wartości błędów a nie zagnieżdżone funkcje SUMY.CZĘŚCIOWE Aby wynik był prawidłowy wystarczy opcję zmienić np. na 3 (ignorowane będzie wszystko)</p>
<p style="margin-bottom: 0.0001pt;">Dwie pozostałe ręcznie zdefiniowane funkcje SUMY.CZĘŚCIOWE pokazują poprawne wyniki ponieważ funkcja ta domyślnie ignoruje inne funkcje SUMY.CZĘSCIOWE</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image21.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image21.png" alt="image21" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Jeżeli w naszym arkuszu będziemy chcieli korzystać z komórek, które zawierają tekst będziemy musieli niestety utworzone definicje formuł zawierających funkcję SUMY.CZĘŚCIOWE ręcznie zmodyfikować.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image22.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image22.png" alt="image22" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Jakbyś Czytelniku znał jakiś inny sposób poza ręczną modyfikacją formuł zawartych w komórkach to Ja bardzo chętnie go poznam.</p>
<p style="margin-bottom: 0.0001pt;">Na koniec chciałbym jeszcze przedstawić dwie funkcje, które na pewno wzbogacą arkusz w kontekście tworzenia zestawień. Dlatego też w naszym arkuszu wprowadzę jeszcze jedną kolumnę a mianowicie pole <strong>Data</strong>.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image23.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image23.png" alt="image23" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Naszym zadaniem będzie utworzenie takiej formuły, która wyliczy nam wartość zamówienia obejmująca dany okres. Przyjmijmy, że interesuje nas wartość zamówień za miesiąc luty 2015. Zadanie to zrealizujemy za pomocą podanie wiersza w której znajduje się data początkowa (w przykładzie wiersz 5 – data: 2015-02-04) interesującego nas okresu oraz podanie drugiego numeru wiersza tym razem z datą końcową (w przykładzie wiersz 11 – data: 2015-03-28)</p>
<p style="margin-bottom: 0.0001pt;">Aby wykonać zadanie będziemy musieli skorzystać z dwóch nowych funkcji a mianowicie funkcji ADRES oraz funkcji ADR.POŚR</p>
<p style="margin-bottom: 0.0001pt;">Zadaniem pierwszej funkcji ADRES jest utworzenie tekstu będącego adresem komórki o określonych przez nas współrzędnych. Składnia funkcji prezentuje się następująco: <strong>ADRES(nr_wiersza;nr_kolumny ;typ_adresu;A1;tekst_arkusz)</strong></p>
<p style="margin-bottom: 0.0001pt;">gdzie poszczególne parametry oznaczają:</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;"><strong>nr_wiersza </strong>- wymagany, wartość liczbowa określająca numer wiersza, który ma zostać użyty w odwołaniu do komórki,</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;"><strong>nr_kolumny</strong> - wymagany, wartość liczbowa określająca numer kolumny, który ma zostać użyty w odwołaniu do komórki,</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;"><strong>typ_adresu</strong> – opcjonalny, wartość liczbowa określająca, jakiego typu odwołanie będzie zwracane przez funkcję. Zwracany typ odwołania</p>
<p style="margin: 0cm 0cm 0.0001pt 60px;">1 - lub pominięte Bezwzględne (bezwzględne odwołanie do komórki: W formule jest to dokładny adres komórki, niezależny od położenia komórki, która zawiera formułę. Bezwzględne odwołanie do komórki ma postać $A$1.)</p>
<p style="margin: 0cm 0cm 0.0001pt 60px;">2 Bezwzględne wiersza, względne kolumny np. A$1</p>
<p style="margin: 0cm 0cm 0.0001pt 60px;">3 Względne wiersza, bezwzględne kolumny np. $A1</p>
<p style="margin: 0cm 0cm 0.0001pt 60px;">4 Względne np. A1</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;"><strong>A1 </strong>- opcjonalny, wartość logiczna określająca styl odwołań A1 lub W1K1.</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;"><strong>tekst_arkusz</strong> – opcjonalny, wartość tekstowa określająca nazwę arkusza używanego jako odwołanie zewnętrzne. Na przykład formuła =ADRES(1;1;;;"Arkusz2") zwraca wartość Arkusz2!$A$1. Jeśli argument tekst_arkusz jest pominięty, nazwa arkusza nie jest używana, a adres zwracany przez funkcję odwołuje się do komórki w bieżącym arkuszu.</p>
<p style="margin-bottom: 0.0001pt;">To przykład ilustrujący działanie funkcji ADRES</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image24.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image24.png" alt="image24" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Druga z funkcji ADR.POŚR jest funkcją, która jest używana do zamiany argumentu tekstowego opisującego odwołanie do obszaru na normalne odwołanie do zakresu komórek.</p>
<p style="margin-bottom: 0.0001pt;">Składnia funkcji ADR.POŚR jest następująca: <strong>ADR.POŚR(adres_tekst; A1)</strong></p>
<p style="margin-bottom: 0.0001pt;">gdzie parametry oznaczają:</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;"><strong>adres_tekst</strong> - wymagany, odwołanie do komórki zawierającej odwołanie w trybie adresowania A1 lub W1K1 albo nazwę zdefiniowaną jako odwołanie bądź odwołanie do komórki jako ciągu tekstowego.</p>
<p style="margin: 0cm 0cm 0.0001pt 30px;"><strong>A1 </strong>– opcjonalny, wartość logiczna określająca, jaki typ odwołania znajduje się w komórce adres_tekst.</p>
<p style="margin-bottom: 0.0001pt;">Tak więc mały przykład.</p>
<p style="margin-bottom: 0.0001pt;">W komórkach od D4 do D11 mamy wpisane wartości, natomiast w komórce G4 oraz G5 będziemy wpisywali zakres komórek, który będzie sumowany. Wpisane adresy komórek są wpisanym tekstem. Za pomocą funkcji ADR.POŚR tekst ten zamienimy na normalne odwołanie i połączymy je z funkcją SUMA.</p>
<p style="margin-bottom: 0.0001pt;">Formuła, która pozwoli nam na zsumowanie zdefiniowanego zakresu przyjmie postać: =SUMA(ADR.POŚR(G4):(ADR.POŚR(G5))) Działanie formuły sprowadza się do pobrania zawartości komórek G4 oraz G5 i przy pomocy funkcji ADR.POŚR zamienienie ich na odwołanie. Odwołanie przyjmuje postać zakresu od D5 do D9 Zakres ten jest argumentem funkcji SUMA czego efektem jest dodanie do siebie wszystkich wartości zawartych w komórkach od D5 do D9.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image25.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image25.png" alt="image25" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">Uzbrojeni w wiedzę o sposobie działania funkcji ADRES oraz ADR.POŚR wracamy do naszego przykładu.</p>
<p style="margin-bottom: 0.0001pt;">Formuła, która pozwoli nam na wyliczenie wartości zamówień w zależności od podania wiersza daty początkowej i wiersza daty końcowej przyjmie postać: =AGREGUJ(9;3;ADR.POŚR(ADRES(J4;7)):ADR.POŚR(ADRES(J5;7)))</p>
<ul>
<li>funkcja ADRES pobiera nam z komórek J4 oraz J5 numery wierszy, natomiast numer kolumny jest zdefiniowany na 7 ponieważ potrzebujemy dodać do siebie wartości zamówień, pobrane adresy są tekstem,</li>
<li>funkcja ADR.POŚR zamienia adresy tekstowe na normalne odwołania,</li>
<li>utworzony zakres stanowi argument funkcji AGREGUJ, nakazujący zsumowanie wartości znajdujących się w zakresie (opcja 9) z ignorowaniem ukrytych wierszy, wartości błędów oraz zagnieżdżonych funkcji SUMY.CZĘŚCIOWE i AGREGUJ</li>
</ul>
<p style="margin-bottom: 0.0001pt;">Nasz cel został osiągnięty, można by zadać pytanie – Czy nie da się tego zrobić prościej? Ten sam efekt otrzymamy przy użyciu funkcji: =SUMA(ADR.POŚR("G"&J4&":G"&J5))</p>
<p style="margin-bottom: 0.0001pt;">Jak można zauważyć w formule tej nie użyliśmy funkcji ADRES lecz by otrzymać zakres został użyty operator konkatenacji łączący adres kolumny z adresem wiersza wprowadzonym w komórkach J4 oraz J5.</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="http://slow7.pl/images/stories/office/excel_7/image26.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_7/image26.png" alt="image26" width="700" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;">I tu pozwól czytelniku, że przykład tej formuły będzie wstępem do kolejnego wpisu w którym omówię sposoby łączenia ze sobą danych z różnych komórek.</p>
<hr />
<p style="margin-bottom: 0.0001pt;">Bibliografia:</p>
<p style="margin-bottom: 0.0001pt;"> </p>
<p style="margin-bottom: 0.0001pt;"><a href="https://support.office.com/pl-pl/article/AGREGUJ-funkcja-c8caed56-07df-4aeb-9741-23693ffbe525">https://support.office.com/pl-pl/article/AGREGUJ-funkcja-c8caed56-07df-4aeb-9741-23693ffbe525</a></p>
<p style="margin-bottom: 0.0001pt;"><a href="https://support.office.com/pl-pl/article/ADRES-funkcja-47657e92-81ae-47f8-87cd-62d4f30c774d">https://support.office.com/pl-pl/article/ADRES-funkcja-47657e92-81ae-47f8-87cd-62d4f30c774d</a></p></div>Excel w zadaniach. Funkcja ORAZ i LUB2015-02-10T08:31:30+00:002015-02-10T08:31:30+00:00http://slow7.pl/office/item/21-excel-w-zadaniach-funkcja-oraz-i-lubpikolo[email protected]<div class="K2FeedImage"><img src="http://slow7.pl/media/k2/items/cache/9b2c4b44fb86522964124ed80d03c5e8_S.jpg" alt="Excel w zadaniach. Funkcja ORAZ i LUB" /></div><div class="K2FeedIntroText"><p style="text-align: left;">We wcześniejszym wpisie opisałem funkcję JEŻELI, jak mogłeś się przekonać czytelniku funkcja ta jest bardzo przydatna ale ma ona ograniczenia, które powodują, że czasami można pogubić się w drzewie zależności i warunków. Dlatego dodatkowo warto poznać dwie dodatkowe funkcje, które rozszerzą funkcjonalność zastosowania funkcji JEŻELI. Choć oczywiście funkcje o których będzie mowa w tym wpisie mogą być stosowane oddzielnie. Tak więc na „tapetę” bierzemy funkcje logiczne: <strong>LUB</strong> i <strong>ORAZ</strong>.</p>
</div><div class="K2FeedFullText">
<p style="text-align: left;"> </p>
<p style="text-align: left;">Wadą funkcji <strong>JEŻELI</strong>, jest to, że w swej najprostszej postaci może ona operować tylko na jednym warunku logicznym. Tak więc gdy chcemy wprowadzić więcej zmiennych należy funkcję <strong>JEŻELI</strong> zagnieździć. Rozwiązaniem problemu zagnieżdżania jest użycie funkcji <strong>ORAZ</strong> bądź <strong>LUB</strong>.</p>
<p style="text-align: left;">W przypadku funkcji <strong>ORAZ</strong>, aby funkcja ta zwracała w wyniku wartość <strong>PRAWDA</strong>, niezbędne jest, aby każdy z ustalonych przez nas warunków, <strong>został spełniony</strong> (wszystkie warunki muszą zwrócić wartość <strong>PRAWDA</strong>). W przypadku sytuacji w której chociaż jeden z warunków zwróci wartość <strong>FAŁSZ</strong>, cała funkcja zwraca w wyniku <strong>FAŁSZ</strong>. Tak więc nazywając sprawę po imieniu funkcja <strong>ORAZ</strong> jest iloczynem (koniunkcją) warunków. Funkcja <strong>ORAZ</strong> pozwala na zastosowanie maksymalnie 30 warunków.</p>
<p style="text-align: left;">W przypadku funkcji <strong>LUB</strong> sprawa ma się zgoła odmiennie. Aby funkcja <strong>LUB</strong> zwróciła wartość <strong>PRAWDA</strong> przynajmniej <strong>jeden</strong> z warunków musi być prawdziwy (jeden warunek musi zwrócić wartość <strong>PRAWDA</strong>). Wartość <strong>FAŁSZ</strong> zwracana jest gdy wszystkie zdefiniowane warunki zwracają wartość <strong>FAŁSZ</strong>. Funkcja <strong>LUB</strong> jest więc, sumą (alternatywą) warunków.</p>
<p style="text-align: left;">Na tyle by mówiła teoria. Osoby, które wcześniej nie miały do czynienia z opisywanymi funkcjami, tak sobie myślę, że nie za bardzo będą miały do końca pojęcie o co naprawdę chodzi. Tak więc, żeby rozwiać wszelkie wątpliwości przejdźmy to małego (leczy wymownego) przykładu.</p>
<p style="text-align: left;">Wszystkie przedstawione przykłady w tym wpisie można pobrać tu: <a href="http://slow7.pl/images/stories/office/excel_6/orazilub.xlsx">zadania funkcja ORAZ i LUB</a></p>
<p style="text-align: left;">Na początek przykład zastosowania funkcji <strong>ORAZ</strong>.</p>
<p style="text-align: left;">Naszym zadaniem jest sprawdzenie czy w dwóch komórkach została wpisana wartość 1. Jeżeli któryś z warunków nie zostanie spełniony (w komórce będzie wpisana inna wartość niż 1) ma zostać zwrócona wartość <strong>FAŁSZ</strong> a w przypadku w którym w dwóch sprawdzanych komórkach pojawi się wartość 1 ma być zwrócona wartość <strong>PRAWDA</strong>. Jak widzimy poniżej mamy cztery możliwe sytuacje i rzeczywiście wartość <strong>PRAWDA</strong> pojawia się w jednym przypadku, natomiast w pozostałych wartość <strong>FAŁSZ</strong>.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_6/image1.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_6/image1.png" alt="image1" width="700" height="298" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Do rozwiązania zadania użyliśmy funkcji <strong>ORAZ</strong> a zbudowana formuła ma postać: <strong>=ORAZ(C3=1;D3=1)</strong>. Formuła ta sprawdza czy w komórce <strong>C3</strong> oraz komórce <strong>D3</strong> jest wpisana wartość <strong>1</strong> (oczywiście w pozostałych rozwiązaniach zmieniają się odwołania do sprawdzanych komórek). Rozbijając uzyskane rozwiązania na czynniki pierwsze otrzymujemy:</p>
<p style="text-align: left;"><strong>Sytuacja pierwsza:</strong> rozwiązaniem jest wartość <strong>FAŁSZ</strong> ponieważ zarówno w komórce <strong>C3</strong> jak i <strong>D3</strong> nie ma wpisanej sprawdzanej wartości czyli <strong>1</strong>, oba sprawdzane warunki zwracają wartość <strong>FAŁSZ</strong> tak więc cała funkcja <strong>ORAZ</strong> zwraca wartość <strong>FAŁSZ</strong>.</p>
<p style="text-align: left;"><strong>Sytuacja druga:</strong> rozwiązaniem jest wartość <strong>FAŁSZ</strong> ponieważ w komórce <strong>D4</strong> brak jest wartości <strong>1</strong>, tak więc warunek ten zwraca wartość <strong>FAŁSZ</strong>, kolejny warunek jest spełniony i zwraca wartość <strong>PRAWDA</strong> (w komórce <strong>C4</strong> znajduje się jedynka), tak więc otrzymujemy <strong>FAŁSZ</strong> i <strong>PRAWDA</strong> co w konsekwencji daje nam wynik <strong>FAŁSZ</strong>. Łatwiej to sobie wyobrazić gdy do wartości <strong>FAŁSZ</strong> przypiszemy <strong>0</strong> natomiast do wartości <strong>PRAWDA</strong> przypiszemy <strong>1</strong>. Z opisu powyżej wiesz już Czytelniku, że funkcja <strong>ORAZ</strong> jest iloczynem tak więc otrzymujemy działanie: <strong>PRAWDA</strong> (komórka C4) razy <strong>FAŁSZ</strong> (komórka D4) co po podstawieniu wartości daje nam: <strong>1</strong> razy <strong>0</strong> czyli w ogólnym rozrachunku <strong>0</strong> (FAŁSZ).</p>
<p style="text-align: left;"><strong>Sytuacja trzecia:</strong> rozwiązaniem jest wartość <strong>FAŁSZ</strong> ponieważ w komórce <strong>C5</strong> brak jest wartości <strong>1</strong>, tak więc warunek ten zwraca wartość <strong>FAŁSZ</strong>, kolejny warunek jest spełniony i zwraca wartość <strong>PRAWDA</strong> (w komórce <strong>D5</strong> znajduje się jedynka), tak więc otrzymujemy <strong>FAŁSZ</strong> i <strong>PRAWDA</strong> co w konsekwencji daje nam wynik <strong>FAŁSZ</strong>. Zestawiając to z analogią opisaną powyżej: otrzymujemy działanie: <strong>FAŁSZ</strong> (komórka C5) razy <strong>PRAWDA</strong> (komórka D5) co po podstawieniu wartości daje nam: <strong>0</strong> razy <strong>1</strong> czyli w ogólnym rozrachunku <strong>0</strong> (FAŁSZ).</p>
<p style="text-align: left;"><strong>Sytuacja czwarta:</strong> rozwiązaniem jest wartość <strong>PRAWDA</strong> ponieważ zarówno w komórce <strong>C6</strong> jak i <strong>D6</strong> znajduje się sprawdzana wartość (wpisana jest wartość 1), oba sprawdzane warunki zwracają wartość <strong>PRAWDA</strong> tak więc cała funkcja <strong>ORAZ</strong> zwraca wartość <strong>PRAWDA</strong>. Po podstawieniu otrzymujemy działanie: <strong>1</strong> (PRAWDA) razy <strong>1</strong> (PRAWDA) czyli wynikiem jest <strong>1</strong> (PRAWDA).</p>
<p style="text-align: left;">Tak więc myślę, że przykład dobitnie ukazuje sposób działania funkcji <strong>ORAZ</strong>.</p>
<p style="text-align: left;">We wstępie zaznaczyłem, że funkcję <strong>ORAZ</strong> można połączyć z funkcją <strong>JEŻELI</strong>, więc zróbmy to i zmodyfikujmy nasz przykład. Zadanie polega na tym: by zamiast wartości <strong>PRAWDA</strong> i <strong>FAŁSZ</strong> pojawił się zdefiniowany przez nas komunikat: i tak dla wartości PRAWDA – komunikat: <strong>WARUNKI ZOSTAŁY SPEŁNIONE</strong> natomiast dla wartości <strong>FAŁSZ</strong> - komunikat: <strong>WARUNKI NIE ZOSTAŁY SPEŁNIONE</strong> Postawione przed nami zadanie rozwiążemy za pomocą formuły: <strong>=JEŻELI(ORAZ(C3=1;D3=1);"WARUNKI ZOSTAŁY SPEŁNIONE";"WARUNKI NIE ZOSTAŁY SPEŁNIONE")</strong></p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_6/image2.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_6/image2.png" alt="image2" width="700" height="208" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Funkcja ta działa w ten sposób, że gdy warunek określony w funkcji <strong>JEŻELI</strong> a zdefiniowany za pomocą funkcji <strong>ORAZ</strong> jest <strong>spełniony</strong> (czyli PRAWDA) zostaje wykonana <strong>WARTOŚĆ_JEŻELI_PRAWDA</strong> (wypisanie komunikatu: WARUNKI ZOSTAŁY SPEŁNIONE), jeżeli zaś zwracaną wartością jest <strong>FAŁSZ</strong> funkcja <strong>JEŻELI</strong> przechodzi do wykonania <strong>WARTOŚĆ_JEŻELI_FAŁSZ</strong> (wypisanie komunikatu: WARUNKI NIE ZOSTAŁY SPEŁNIONE).</p>
<p style="text-align: left;">Pójdźmy dalej i nasze przykładowe zadanie jeszcze bardziej skomplikujmy i zbudujmy taką formułę, która oprócz wypisania czy warunek został <strong>spełniony</strong> czy <strong>nie</strong>, umieści jeszcze informację o tym w której komórce pojawiło się <strong>0</strong> (FAŁSZ).</p>
<p style="text-align: left;">Formuła, która postawione przed nami zadanie wykona, mogłaby mieć następującą składnię: <strong>JEŻELI(ORAZ(C3=1;D3=1);"WARUNKI ZOSTAŁY SPEŁNIONE";JEŻELI(ORAZ(C3=0;D3=0);"WARUNKI NIE ZOSTAŁY SPEŁNIONE W OBU KOMÓRKACH 0";JEŻELI(C3=0;"WARUNKI NIE ZOSTAŁY SPEŁNIONE PIERWSZA KOMÓRKA 0";"WARUNKI NIE ZOSTAŁY SPEŁNIONE DRUGA KOMÓRKA 0")))</strong> – chociaż oczywiście zadanie te można by rozwiązać na kilka innych sposobów.</p>
<p style="text-align: left;">Efekt działania funkcji widzimy na rysunku poniżej.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_6/image3.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_6/image3.png" alt="image3" width="700" height="251" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Formuła ta jest już troszkę skomplikowana i początkującemu zrozumienie jej działania może (choć wcale nie musi) przysporzyć nieco problemu. Dlatego myślę, że lepszym rozwiązaniem jest przedstawienie tej formuły za pomocą schematu blokowego (teraz jak na dłoni widać jak formuła działa).</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_6/image4.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_6/image4.png" alt="image4" width="700" height="375" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Pierwsza funkcja <strong>JEŻELI</strong> sprawdza warunek: <strong>ORAZ(C3=1;D3=1)</strong> jeśli warunek jest <strong>prawdziwy</strong> zostaje wypisany komunikat: <strong>WARUNKI ZOSTAŁY SPEŁNIONE</strong>. W przypadku zwrócenia przez funkcję <strong>ORAZ</strong> wartości <strong>FAŁSZ</strong> funkcja <strong>JEŻELI</strong> przechodzi do wykonania <strong>WARTOŚĆ_JEŻELI_FAŁSZ</strong> czyli w naszym przypadku zostaje wykonana kolejna funkcja <strong>JEŻELI</strong> (druga) w której to sprawdzany jest warunek: <strong>ORAZ(C3=0;D3=0)</strong> Gdy warunek jest <strong>prawdą</strong> zostaje wykonane wyświetlenie komunikatu: <strong>WARUNKI NIE ZOSTAŁY SPEŁNIONE W OBU KOMÓRKACH 0</strong> w przeciwnym przypadku następuje przejście do następnego warunku (trzecia funkcja JEŻELI). W funkcji tej sprawdzanym warunkiem jest zapis: <strong>C3=0</strong> Jeżeli komórka <strong>C3</strong> równa się <strong>0</strong>, funkcja <strong>JEŻELI</strong> wykonuje <strong>WARTOŚĆ_JEŻELI_PRAWDA</strong> czyli wypisany jest komunikat: <strong>WARUNKI NIE ZOSTAŁY SPEŁNIONE PIERWSZA KOMÓRKA 0</strong> Ostatnią możliwością jest pojawienie się wartości <strong>0</strong> w drugiej komórce, tak więc nie pozostało nam nic innego jak ostatni komunikat: <strong>WARUNKI NIE ZOSTAŁY SPEŁNIONE DRUGA KOMÓRKA 0</strong> umieścić w sekcji <strong>WARTOŚĆ_JEŻELI_FAŁSZ</strong> gdyż jest to ostatnia możliwość, wykonywana tylko w przypadku nie spełnienia wszystkich wcześniejszych warunków.</p>
<p style="text-align: left;">Funkcja <strong>ORAZ</strong> świetnie nadaje się gdy mamy do czynienia z przedziałami. Ponieważ znacznie ułatwia nam tworzenie formuł, tworzone formuły są znacznie czytelniejsze. No to mały przykład. Przypuśćmy, że jesteśmy menadżerem, którego zadaniem jest wyliczenie prowizji naszym sprzedawcą w zależności od wartości sprzedanego towaru. Prowizję będziemy wyliczali według poniższych zasad:</p>
<ul>
<li style="list-style-type: none;">
<ul>
<li style="list-style-type: none;">
<ul>
<li style="text-align: left;"><span style="color: black;">0 – 1999 zł - 5,0%</span></li>
<li style="text-align: left;"><span style="color: black;">2000 zł – 4999 zł - 10,0%</span></li>
<li style="text-align: left;"><span style="color: black;">5000 zł – 9999 zł - 16,5%</span></li>
<li style="text-align: left;"><span style="color: black;">powyżej 10 000 zł - 25,0%</span></li>
</ul>
</li>
</ul>
</li>
</ul>
<p style="text-align: left;">Przykładowy arkusz natomiast został przedstawiony na rysunku poniżej.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_6/image5.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_6/image5.png" alt="image5" width="700" height="304" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Wyliczenie wartości prowizji zrealizujemy za pomocą formuły: <strong>=JEŻELI(ORAZ(D4>=0;D4<=1999,99);D4*0,05;JEŻELI(ORAZ(D4>=2000;D4<=4999,99);D4*0,1;JEŻELI(ORAZ(D4>=2000;D4<=9999,99);D4*0,165;JEŻELI(D4>=10000;D4*0,25;0))))</strong></p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_6/image6.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_6/image6.png" alt="image6" width="649" height="310" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">W formule powyżej każda z funkcji <strong>ORAZ</strong> została użyta do ustalenia przedziału, natomiast funkcja <strong>JEŻELI</strong> w zależności od zwróconej wartości <strong>PRAWDA</strong> bądź <strong>FAŁSZ</strong> wykonuje wyliczenie wartości prowizji bądź przejścia do sprawdzenia kolejnego warunku.</p>
<p style="text-align: left;">Tak więc myślę, że przedstawione zadania dobrze dokumentują sposób działania funkcji <strong>ORAZ</strong> i nie ma co dalej rozwodzić się nad nią (choć jeszcze do niej wrócimy) i czas by przyjrzeć się funkcji <strong>LUB</strong>. Zaczniemy od tego samego zadania od którego rozpoczęliśmy omawianie funkcji <strong>ORAZ</strong> lecz funkcję tą zastąpimy funkcją <strong>LUB</strong>.</p>
<p style="text-align: left;">Podobnie jak w zadaniu z funkcją <strong>ORAZ</strong> sprawdzamy czy w komórkach (przynajmniej jednej) pojawi się wartość <strong>1</strong>. Jak widać na rysunku poniżej, wartość <strong>PRAWDA</strong> pojawiła się w wszystkich przypadkach w których to w sprawdzanych komórkach została umieszczona cyfra <strong>1</strong>.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_6/image7.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_6/image7.png" alt="image7" width="700" height="273" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Przy opisywaniu funkcji <strong>LUB</strong> użyłem stwierdzenia, że funkcja ta jest sumą warunków. By zrozumieć czemu w wyniku działania funkcji zwracana jest wartość <strong>PRAWDA</strong> lub <strong>FAŁSZ</strong> można cząstkowym, sprawdzanym warunkom w zależności od zwróconego wyniku przypisać wartość <strong>1</strong> lub <strong>0</strong>. Jeżeli suma cząstkowych warunków wyniesie <strong>1</strong> bądź <strong>więcej</strong> zostanie zwrócona wartość <strong>PRAWDA</strong>, natomiast gdy <strong>suma</strong> ta będzie równała się <strong>0</strong> wartością zwracaną będzie <strong>FAŁSZ</strong>.</p>
<p style="text-align: left;"><strong>Sytuacja pierwsza:</strong> sprawdzany jest warunek: <strong>C3=1</strong>, warunek ten jest <strong>FAŁSZEM</strong> czyli <strong>0</strong>, kolejny sprawdzany warunek (D3=1) również zwraca <strong>FAŁSZ</strong> (ponieważ 0 nie równa się 1) tak więc znów mamy <strong>0</strong>. Suma warunków wynosi: <strong>0 + 0</strong> (FAŁSZ + FAŁSZ) co w konsekwencji daje nam <strong>0</strong> czyli wynikiem działania funkcji jest <strong>FAŁSZ</strong>.</p>
<p style="text-align: left;"><strong>Sytuacja druga:</strong> pierwszy warunek jest <strong>PRAWDĄ</strong> (wpisana wartość 1) czyli mamy <strong>1</strong>, natomiast drugi warunek jest <strong>FAŁSZEM</strong> (wpisana wartość 0) czyli mamy <strong>0</strong>. Podsumowując suma składowych warunków wynosi: <strong>1</strong> (1+0) Gdy suma alternatyw wynosi <strong>1</strong> cała formuła zwraca wartość <strong>PRAWDA</strong>.</p>
<p style="text-align: left;"><strong>Sytuacja trzecia:</strong> przypadek ten jest odwróceniem sytuacji drugiej, suma częściowych warunków wynosi również <strong>1</strong>, ponieważ pierwszy warunek zwraca <strong>FAŁSZ</strong> (0), natomiast drugi warunek zwraca <strong>PRAWDA</strong> (1), tak więc suma wynosi <strong>1</strong> (0+1).</p>
<p style="text-align: left;"><strong>Sytuacja czwarta:</strong> oba składowe warunki zwracają wartość <strong>PRAWDA</strong> tak więc wynikiem funkcji jest <strong>PRAWDA</strong> (1+1=2).</p>
<p style="text-align: left;">Gdybyśmy chcieli uzyskać komunikaty podobne do tych jak w przypadku funkcji <strong>ORAZ</strong> oczywiście należałoby użyć funkcji <strong>JEŻELI</strong>.</p>
<p style="text-align: left;">Przy używaniu funkcji <strong>ORAZ</strong> i <strong>LUB</strong> (i tak samo gdy wykorzystujemy funkcję <strong>JEŻELI</strong>) należy mieć na uwadze, że gdy sprawdzaną wartością jest <strong>słowo</strong> w warunku należy użyć <strong>cudzysłowów</strong>. No to przykład. Jesteśmy osobą, która prowadzi przesłuchania kandydatów/kandydatek na stanowisko np. kierownik sklepu. Wymagania są następujące: znajomość języka angielskiego, doświadczenie trzy lata bądź więcej, znajomość pakietu MS Office bądź LibreOffice, wykształcenie wyższe marketing i zarządzanie. Wymagania te są konieczne by kandydacie przeszli do kolejnego etapu. By ułatwić sobie zadanie został utworzony arkusz, który ma pomóc w doborze kandydatów.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_6/image8.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_6/image8.png" alt="image8" width="700" height="201" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Do rozwiązania zadania została użyta następująca formuła: <strong>=JEŻELI(ORAZ(D5="tak";E5>=3;LUB(F5="office";F5="libre");G5="tak");"dodatkowa rozmowa";"odpada")</strong></p>
<p style="text-align: left;">Formuła ta przy użyciu funkcji <strong>ORAZ</strong> i <strong>LUB</strong> (użyte w warunku funkcji <strong>JEŻELI</strong>) sprawdza poszczególne warunki częściowe natomiast funkcja <strong>JEŻELI</strong> w zależności od zwróconej wartości wyświetla odpowiedni komunikat. Komunikat: <strong>dodatkowa rozmowa</strong> zostanie zwrócono gdy: w kolumnie <strong>j. angielski</strong> pojawi się słowo <strong>tak</strong>; w kolumnie <strong>doświadczenie</strong> wpisana wartość będzie wynosić <strong>3</strong> lub <strong>więcej</strong>; w kolumnie <strong>znajomość programów</strong> pojawi się słowo <strong>office</strong> bądź <strong>libre</strong>; w kolumnie <strong>wykształcenie</strong> słowo <strong>tak</strong>. W przeciwnym przypadku jest wyświetlany komunikat: <strong>odpada</strong>. Jak można zauważyć wszystkie sprawdzane ciągi tekstowe zostały umieszczone w <strong>cudzysłowie</strong> a także <strong>wielkość użytych liter</strong> nie ma znaczenia.</p>
<p style="text-align: left;">Funkcję <strong>LUB</strong> (wraz w połączeniu z innymi funkcjami) możemy również wykorzystać w takim oto zadaniu. Przypuśćmy, że mamy listę <strong>imion</strong> i <strong>nazwisk</strong> zaimportowaną z innego programu ale niestety przed każdym imieniem mamy dodany zwrot grzecznościowy <strong>Pan</strong> bądź <strong>Pani</strong>. Naszym celem jest usunięcie tego zwrotu tak aby pozostało nam samo <strong>imię</strong> i <strong>nazwisko</strong>.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_6/image9.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_6/image9.png" alt="image9" width="700" height="271" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Zadanie to możemy zrealizować za pomocą następującej formuły: <strong>=JEŻELI(LUB(LEWY(E7;3)="Pan";LEWY(E7;4)="Pani");PRAWY(E7;DŁ(E7)-ZNAJDŹ(" ";E7));E7)</strong></p>
<p style="text-align: left;">Tak wiem, pewnie się zastanawiasz jak do diabła ta formuła działa. Więc nie pozostaje nam nic innego jak formułę tą rozbić na czynniki pierwsze.</p>
<p style="text-align: left;">W pierwszej kolejności została użyta funkcja <strong>JEŻELI</strong>, której zadaniem jest wykonanie warunku.</p>
<p style="text-align: left;">W warunku funkcji <strong>JEŻELI</strong> znajduje się wpis: <strong>LUB(LEWY(E7;3)="Pan";LEWY(E7;4)="Pani")</strong> zadaniem tej części kodu jest sprawdzenie czy w komórce <strong>E7</strong> znajduje się wyrażenie <strong>Pan</strong> bądź <strong>Pani</strong>. Sprawdzenie następuje z wykorzystaniem funkcji <strong>LEWY</strong>. Funkcja ta zwraca <strong>skrajne lewe znaki</strong> z wartości tekstowej. Tak więc wyrażenie <strong>LEWY(E7;3)="Pan"</strong> powoduje pobranie <strong>trzech</strong> pierwszych znaków z <strong>lewej</strong> strony wyrażenia znajdującego się w komórce <strong>E7</strong> i sprawdzenie czy pobrane znaki to słowo <strong>Pan</strong>. Analogicznie działa wyrażenie <strong>LEWY(E7;4)="Pani"</strong> lecz tu pobierane są <strong>cztery</strong> znaki i sprawdzanym słowem jest <strong>Pani</strong>. Gdy słowo <strong>Pan</strong> bądź <strong>Pani</strong> pojawi się w sprawdzanej komórce warunek jest spełniony.</p>
<p style="text-align: left;">W sekcji <strong>WARTOŚĆ_JEŻELI_PRAWDA</strong> znajduje się wpis: <strong>PRAWY(E7;DŁ(E7)-ZNAJDŹ(" ";E7))</strong> Do zbudowania wyrażenia zostały użyte funkcje <strong>PRAWY</strong>, <strong>ZNAJDŹ</strong> oraz <strong>DŁ</strong>. Zadaniem pierwszej funkcji (PRAWY) jest pobranie znaków z komórki <strong>E7</strong> przy czym ilość pobieranych znaków jest zależna od wykonania zapisu: <strong>DŁ(E7)-ZNAJDŹ(" ";E7)</strong> Funkcja <strong>DŁ</strong> zwraca nam długość ciągu znaków znajdujących się w komórce <strong>E7</strong> (czyli 16 - <strong>spacje też są wliczane</strong>), natomiast funkcja <strong>ZNAJDŹ</strong> w danej komórce szuka wystąpienia znaku <strong>spacja</strong> (zapis " " - do pierwszego wystąpienia), po zastosowaniu formuły zwracana jest wartość <strong>4</strong> (ponieważ spacja jest czwartym znakiem) Wykonywane jest odejmowanie, czyli w naszym przypadku: <strong>16-4=12</strong> Wartość <strong>12</strong> jest przekazywana do funkcji <strong>PRAWY</strong>, tak więc funkcja ta od <strong>prawej strony</strong> komórki <strong>E7</strong> pobiera <strong>12</strong> znaków, tym samym zwracając nam ciąg: <strong>Jan Kowalski</strong>.</p>
<p style="text-align: left;">Jeżeli warunek nie jest spełniony formuła zwraca zawartość komórki <strong>E7</strong>.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_6/image10.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_6/image10.png" alt="image10" width="700" height="271" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Omówione funkcje <strong>LEWY</strong>, <strong>PRAWY</strong>, <strong>ZNAJDŹ</strong> oraz <strong>DŁ</strong> można użyć w scenariuszu w którym to chcemy w osobnych komórkach mieć <strong>imiona</strong> i <strong>nazwiska</strong>.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_6/image11.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_6/image11.png" alt="image11" width="700" height="591" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Aby otrzymać <strong>imiona</strong> użyj formuły: <strong>=LEWY(D7;ZNAJDŹ(" ";D7)-1)</strong> natomiast by uzyskać <strong>nazwiska</strong>: <strong>=PRAWY(D15;DŁ(D15)-ZNAJDŹ(" ";D15))</strong></p>
<p style="text-align: left;">Kolejnym ciekawym zadaniem z zastosowaniem funkcji <strong>LUB</strong> jest zadanie w którym to musimy wyznaczyć <strong>dni weekendowe</strong>. Zadanie polega na wskazaniu, która z podanych dat to <strong>sobota</strong> i <strong>niedziela</strong>.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_6/image12.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_6/image12.png" alt="image12" width="700" height="457" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Jak widać powyżej przy datach, które przypadają w <strong>sobotę</strong> bądź <strong>niedzielę</strong> pojawia się zapis <strong>PRAWDA</strong>. Zadanie to zostało zrealizowane za pomocą formuły: <strong>=LUB(DZIEŃ.TYG(G6)=7;DZIEŃ.TYG(G6)=1)</strong> Jak widać po zapisie formuły w rozwiązaniu problemu dodatkowo została użyta funkcja <strong>DZIEŃ.TYG</strong> Zadaniem tej funkcji jest zwrócenie wartości, która odpowiada numerowi dnia tygodnia. Funkcja zwraca wartości <strong>od 1 do 7</strong> - wartość 1 to niedziela, wartość 2 poniedziałek, wartość 3 to wtorek itd. Tak więc nasze zadanie sprowadza się do wyszukania tych wartości, które odpowiadają <strong>sobocie</strong> (wartość 7) i <strong>niedzieli</strong> (wartość 1). Oczywiście w ten sam sposób można wyszukać inne dni tygodnia, poprzez modyfikację wartości w funkcji <strong>DZIEŃ.TYG</strong> Gdyby funkcja nie zadziałała sprawdź czy komórka zawierające datę została sformatowana jako <strong>DATA</strong>.</p>
<p style="text-align: left;">Aby zakończyć rozważania na temat funkcji logicznych to jeszcze jedno zadanie z wykorzystaniem funkcji LUB i ORAZ (takie podsumowanie). Celem zadania jest stworzenie formuły, która będzie przyznawała zniżkę na bilety miesięczne przy następujących założeniach:</p>
<p style="text-align: left;">Zniżka przysługuje osobom, które spełniają następujące warunki:</p>
<p style="text-align: left; margin-left: 60px;">a) są na emeryturze lub są studentami (niezależnie od dochodu) - zniżka 7%</p>
<p style="text-align: left; margin-left: 60px;">b) ich dochód miesięczny na osobę nie przekracza bądź równa się 600 zł - zniżka 12%</p>
<p style="text-align: left;">Jeżeli osoba spełnia zarówno kryteria z punktu a oraz b przyznaj większą zniżkę. W przypadku braku zniżki niech się pojawi stosowna informacja.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_6/image13.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_6/image13.png" alt="image13" width="700" height="189" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Zadanie to rozwiąże nam następująca formuła: <strong>=JEŻELI(G10<=600;12%;JEŻELI(G10>600;JEŻELI(LUB(E10="tak";F10="tak");7%;"brak");"brak"))</strong></p>
<p style="text-align: left;">Zaczynamy od funkcji <strong>JEŻELI</strong> ponieważ zadanie wymaga od nas wypisanie odpowiedniego komunikatu w zależności od spełnienia danych warunków. Zaczynamy od warunku: <strong>G10<=600</strong> ponieważ nijako jest to warunek nadrzędny, tylko po jego spełnieniu jest możliwość otrzymania <strong>12%</strong> zniżki. Warunek ten dostarcza nam jedno z rozwiązań. Spełnienie go (kwota od 0 do 600zł) spowoduje przyznanie <strong>12%</strong> zniżki. Zostały nam do rozważenia przypadki (3 rozwiązania) w których to: dochód jest większy od <strong>600zł</strong> i osoba jest na <strong>emeryturze</strong> bądź <strong>studentem</strong> (zniżka 7%) i rozwiązanie w którym to dochód przekracza <strong>600zł</strong> ale dana osoba <strong>nie należy</strong> do żadnej z zdefiniowanych grup (brak zniżki). Ponieważ tak naprawdę w przypadku osoby przekraczającej <strong>600zł</strong> i będącej <strong>emerytem</strong> lub <strong>studentem</strong> otrzymujemy jedno rozwiązanie, to aż prosi się by warunek ten połączyć ze sobą. Łączenie osiągniemy wykorzystując funkcję <strong>LUB</strong>. Ponieważ występuje tu rozgraniczenie pomiędzy osobami, których dochód przekracza <strong>600zł</strong> i przynależnością do <strong>danej grupy</strong> musimy ponownie użyć funkcji <strong>JEŻELI</strong>. Gdy warunek zdefiniowany za pomocą funkcji <strong>LUB</strong> okaże się <strong>PRAWDĄ</strong> zostanie przyznana <strong>7% </strong>zniżka w przeciwnym wypadku osoba nie otrzymuje rabatu.</p>
<p style="text-align: left;">Gdyby ta użyta funkcja w dalszym ciągu była nie jasna, to wszelkie wątpliwości rozwieje schemat poniżej.</p>
<p style="text-align: left;"> </p>
<p style="text-align: left;"><a href="http://slow7.pl/images/stories/office/excel_6/image14.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_6/image14.png" alt="image14" width="700" height="375" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Wnikliwy czytelnik na pewno zauważy, że jeden z podanych argumentów <strong>nigdy nie zostanie spełniony</strong>. A mowa tu o zapisie <strong>brak</strong> zapisanym w <strong>WARTOŚĆ_JEŻELI_FAŁSZ</strong> w drugiej funkcji <strong>JEŻELI</strong>. Dzieje się tak ponieważ użyte przedziały: <strong>G10<=600</strong> oraz <strong>G10>600</strong> wyczerpują wszystkie możliwe rozwiązania, jeśli liczba nie będzie mniejsza bądź równa <strong>600</strong> to musi być większa od <strong>600</strong>. Tak więc we wszystkich przypadkach będzie wykonana <strong>WARTOŚĆ_JEŻELI_PRAWDA</strong> (dalej mowa o drugiej funkcji JEŻELI).</p>
<p style="text-align: left;">Czy można by było ten sam rezultat osiągnąć za pomocą innej funkcji. Oczywiście, że tak. Formuła, która rozwiązuje postawione przed nami zadanie może wyglądać następująco: <strong>=JEŻELI(G10<=600;12%;JEŻELI(ORAZ(G10>600;LUB(E10="tak";F10="tak"));7%;"brak"))</strong></p>
<p style="text-align: left;">W formule tej wykorzystano fakt, że gdy liczba nie jest mniejsza bądź równa <strong>600</strong> to musi być większa od <strong>600</strong>. Dlatego w zapisie formuły znalazła się funkcja <strong>ORAZ</strong>, a fakt ten odzwierciedla zapis <strong>G10>600</strong> stanowiący pierwszy argument funkcji <strong>ORAZ</strong>. Drugim argumentem jest zapis <strong>LUB(E10="tak";F10="tak")</strong>, który jest <strong>PRAWDĄ</strong> w przypadku przynależności danej osoby do jednej z dwóch uprzywilejowanych grup. Użyta funkcja <strong>ORAZ</strong> zwróci nam <strong>PRAWDĘ</strong> gdy nie zostanie spełniony pierwszy argument pierwszej funkcji <strong>JEŻELI</strong> (G10<=600) i równocześnie osoba będzie <strong>studentem</strong> bądź <strong>emerytem</strong>. Po spełnieniu tych warunków zostanie zwrócony nam komunikat o <strong>7%</strong> zniżce gdyż cała funkcja <strong>ORAZ</strong> znajduje się w <strong>WARTOŚĆ_JEŻELI_PRAWDA</strong> drugiej funkcji <strong>JEŻELI</strong>. Gdy zaś osoba nie będzie znajdować się w danej grupie, funkcja <strong>ORAZ</strong> zwróci nam <strong>FAŁSZ</strong> i zostanie wykonane polecenie wyświetlenia zapisu <strong>brak</strong>.</p>
<p style="text-align: left;">I na koniec schemat blokowy, który podsumowuje użytą formułę.</p>
<p style="text-align: left;"> </p>
<p style="text-align: left;"><a href="http://slow7.pl/images/stories/office/excel_6/image15.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_6/image15.png" alt="image15" width="700" height="513" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">I na tym chciałbym zakończyć, myślę że po samodzielnym wykonaniu zadań funkcja ORAZ i LUB przed Tobą czytelniku nie będzie miała żadnych tajemnic.</p></div><div class="K2FeedImage"><img src="http://slow7.pl/media/k2/items/cache/9b2c4b44fb86522964124ed80d03c5e8_S.jpg" alt="Excel w zadaniach. Funkcja ORAZ i LUB" /></div><div class="K2FeedIntroText"><p style="text-align: left;">We wcześniejszym wpisie opisałem funkcję JEŻELI, jak mogłeś się przekonać czytelniku funkcja ta jest bardzo przydatna ale ma ona ograniczenia, które powodują, że czasami można pogubić się w drzewie zależności i warunków. Dlatego dodatkowo warto poznać dwie dodatkowe funkcje, które rozszerzą funkcjonalność zastosowania funkcji JEŻELI. Choć oczywiście funkcje o których będzie mowa w tym wpisie mogą być stosowane oddzielnie. Tak więc na „tapetę” bierzemy funkcje logiczne: <strong>LUB</strong> i <strong>ORAZ</strong>.</p>
</div><div class="K2FeedFullText">
<p style="text-align: left;"> </p>
<p style="text-align: left;">Wadą funkcji <strong>JEŻELI</strong>, jest to, że w swej najprostszej postaci może ona operować tylko na jednym warunku logicznym. Tak więc gdy chcemy wprowadzić więcej zmiennych należy funkcję <strong>JEŻELI</strong> zagnieździć. Rozwiązaniem problemu zagnieżdżania jest użycie funkcji <strong>ORAZ</strong> bądź <strong>LUB</strong>.</p>
<p style="text-align: left;">W przypadku funkcji <strong>ORAZ</strong>, aby funkcja ta zwracała w wyniku wartość <strong>PRAWDA</strong>, niezbędne jest, aby każdy z ustalonych przez nas warunków, <strong>został spełniony</strong> (wszystkie warunki muszą zwrócić wartość <strong>PRAWDA</strong>). W przypadku sytuacji w której chociaż jeden z warunków zwróci wartość <strong>FAŁSZ</strong>, cała funkcja zwraca w wyniku <strong>FAŁSZ</strong>. Tak więc nazywając sprawę po imieniu funkcja <strong>ORAZ</strong> jest iloczynem (koniunkcją) warunków. Funkcja <strong>ORAZ</strong> pozwala na zastosowanie maksymalnie 30 warunków.</p>
<p style="text-align: left;">W przypadku funkcji <strong>LUB</strong> sprawa ma się zgoła odmiennie. Aby funkcja <strong>LUB</strong> zwróciła wartość <strong>PRAWDA</strong> przynajmniej <strong>jeden</strong> z warunków musi być prawdziwy (jeden warunek musi zwrócić wartość <strong>PRAWDA</strong>). Wartość <strong>FAŁSZ</strong> zwracana jest gdy wszystkie zdefiniowane warunki zwracają wartość <strong>FAŁSZ</strong>. Funkcja <strong>LUB</strong> jest więc, sumą (alternatywą) warunków.</p>
<p style="text-align: left;">Na tyle by mówiła teoria. Osoby, które wcześniej nie miały do czynienia z opisywanymi funkcjami, tak sobie myślę, że nie za bardzo będą miały do końca pojęcie o co naprawdę chodzi. Tak więc, żeby rozwiać wszelkie wątpliwości przejdźmy to małego (leczy wymownego) przykładu.</p>
<p style="text-align: left;">Wszystkie przedstawione przykłady w tym wpisie można pobrać tu: <a href="http://slow7.pl/images/stories/office/excel_6/orazilub.xlsx">zadania funkcja ORAZ i LUB</a></p>
<p style="text-align: left;">Na początek przykład zastosowania funkcji <strong>ORAZ</strong>.</p>
<p style="text-align: left;">Naszym zadaniem jest sprawdzenie czy w dwóch komórkach została wpisana wartość 1. Jeżeli któryś z warunków nie zostanie spełniony (w komórce będzie wpisana inna wartość niż 1) ma zostać zwrócona wartość <strong>FAŁSZ</strong> a w przypadku w którym w dwóch sprawdzanych komórkach pojawi się wartość 1 ma być zwrócona wartość <strong>PRAWDA</strong>. Jak widzimy poniżej mamy cztery możliwe sytuacje i rzeczywiście wartość <strong>PRAWDA</strong> pojawia się w jednym przypadku, natomiast w pozostałych wartość <strong>FAŁSZ</strong>.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_6/image1.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_6/image1.png" alt="image1" width="700" height="298" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Do rozwiązania zadania użyliśmy funkcji <strong>ORAZ</strong> a zbudowana formuła ma postać: <strong>=ORAZ(C3=1;D3=1)</strong>. Formuła ta sprawdza czy w komórce <strong>C3</strong> oraz komórce <strong>D3</strong> jest wpisana wartość <strong>1</strong> (oczywiście w pozostałych rozwiązaniach zmieniają się odwołania do sprawdzanych komórek). Rozbijając uzyskane rozwiązania na czynniki pierwsze otrzymujemy:</p>
<p style="text-align: left;"><strong>Sytuacja pierwsza:</strong> rozwiązaniem jest wartość <strong>FAŁSZ</strong> ponieważ zarówno w komórce <strong>C3</strong> jak i <strong>D3</strong> nie ma wpisanej sprawdzanej wartości czyli <strong>1</strong>, oba sprawdzane warunki zwracają wartość <strong>FAŁSZ</strong> tak więc cała funkcja <strong>ORAZ</strong> zwraca wartość <strong>FAŁSZ</strong>.</p>
<p style="text-align: left;"><strong>Sytuacja druga:</strong> rozwiązaniem jest wartość <strong>FAŁSZ</strong> ponieważ w komórce <strong>D4</strong> brak jest wartości <strong>1</strong>, tak więc warunek ten zwraca wartość <strong>FAŁSZ</strong>, kolejny warunek jest spełniony i zwraca wartość <strong>PRAWDA</strong> (w komórce <strong>C4</strong> znajduje się jedynka), tak więc otrzymujemy <strong>FAŁSZ</strong> i <strong>PRAWDA</strong> co w konsekwencji daje nam wynik <strong>FAŁSZ</strong>. Łatwiej to sobie wyobrazić gdy do wartości <strong>FAŁSZ</strong> przypiszemy <strong>0</strong> natomiast do wartości <strong>PRAWDA</strong> przypiszemy <strong>1</strong>. Z opisu powyżej wiesz już Czytelniku, że funkcja <strong>ORAZ</strong> jest iloczynem tak więc otrzymujemy działanie: <strong>PRAWDA</strong> (komórka C4) razy <strong>FAŁSZ</strong> (komórka D4) co po podstawieniu wartości daje nam: <strong>1</strong> razy <strong>0</strong> czyli w ogólnym rozrachunku <strong>0</strong> (FAŁSZ).</p>
<p style="text-align: left;"><strong>Sytuacja trzecia:</strong> rozwiązaniem jest wartość <strong>FAŁSZ</strong> ponieważ w komórce <strong>C5</strong> brak jest wartości <strong>1</strong>, tak więc warunek ten zwraca wartość <strong>FAŁSZ</strong>, kolejny warunek jest spełniony i zwraca wartość <strong>PRAWDA</strong> (w komórce <strong>D5</strong> znajduje się jedynka), tak więc otrzymujemy <strong>FAŁSZ</strong> i <strong>PRAWDA</strong> co w konsekwencji daje nam wynik <strong>FAŁSZ</strong>. Zestawiając to z analogią opisaną powyżej: otrzymujemy działanie: <strong>FAŁSZ</strong> (komórka C5) razy <strong>PRAWDA</strong> (komórka D5) co po podstawieniu wartości daje nam: <strong>0</strong> razy <strong>1</strong> czyli w ogólnym rozrachunku <strong>0</strong> (FAŁSZ).</p>
<p style="text-align: left;"><strong>Sytuacja czwarta:</strong> rozwiązaniem jest wartość <strong>PRAWDA</strong> ponieważ zarówno w komórce <strong>C6</strong> jak i <strong>D6</strong> znajduje się sprawdzana wartość (wpisana jest wartość 1), oba sprawdzane warunki zwracają wartość <strong>PRAWDA</strong> tak więc cała funkcja <strong>ORAZ</strong> zwraca wartość <strong>PRAWDA</strong>. Po podstawieniu otrzymujemy działanie: <strong>1</strong> (PRAWDA) razy <strong>1</strong> (PRAWDA) czyli wynikiem jest <strong>1</strong> (PRAWDA).</p>
<p style="text-align: left;">Tak więc myślę, że przykład dobitnie ukazuje sposób działania funkcji <strong>ORAZ</strong>.</p>
<p style="text-align: left;">We wstępie zaznaczyłem, że funkcję <strong>ORAZ</strong> można połączyć z funkcją <strong>JEŻELI</strong>, więc zróbmy to i zmodyfikujmy nasz przykład. Zadanie polega na tym: by zamiast wartości <strong>PRAWDA</strong> i <strong>FAŁSZ</strong> pojawił się zdefiniowany przez nas komunikat: i tak dla wartości PRAWDA – komunikat: <strong>WARUNKI ZOSTAŁY SPEŁNIONE</strong> natomiast dla wartości <strong>FAŁSZ</strong> - komunikat: <strong>WARUNKI NIE ZOSTAŁY SPEŁNIONE</strong> Postawione przed nami zadanie rozwiążemy za pomocą formuły: <strong>=JEŻELI(ORAZ(C3=1;D3=1);"WARUNKI ZOSTAŁY SPEŁNIONE";"WARUNKI NIE ZOSTAŁY SPEŁNIONE")</strong></p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_6/image2.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_6/image2.png" alt="image2" width="700" height="208" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Funkcja ta działa w ten sposób, że gdy warunek określony w funkcji <strong>JEŻELI</strong> a zdefiniowany za pomocą funkcji <strong>ORAZ</strong> jest <strong>spełniony</strong> (czyli PRAWDA) zostaje wykonana <strong>WARTOŚĆ_JEŻELI_PRAWDA</strong> (wypisanie komunikatu: WARUNKI ZOSTAŁY SPEŁNIONE), jeżeli zaś zwracaną wartością jest <strong>FAŁSZ</strong> funkcja <strong>JEŻELI</strong> przechodzi do wykonania <strong>WARTOŚĆ_JEŻELI_FAŁSZ</strong> (wypisanie komunikatu: WARUNKI NIE ZOSTAŁY SPEŁNIONE).</p>
<p style="text-align: left;">Pójdźmy dalej i nasze przykładowe zadanie jeszcze bardziej skomplikujmy i zbudujmy taką formułę, która oprócz wypisania czy warunek został <strong>spełniony</strong> czy <strong>nie</strong>, umieści jeszcze informację o tym w której komórce pojawiło się <strong>0</strong> (FAŁSZ).</p>
<p style="text-align: left;">Formuła, która postawione przed nami zadanie wykona, mogłaby mieć następującą składnię: <strong>JEŻELI(ORAZ(C3=1;D3=1);"WARUNKI ZOSTAŁY SPEŁNIONE";JEŻELI(ORAZ(C3=0;D3=0);"WARUNKI NIE ZOSTAŁY SPEŁNIONE W OBU KOMÓRKACH 0";JEŻELI(C3=0;"WARUNKI NIE ZOSTAŁY SPEŁNIONE PIERWSZA KOMÓRKA 0";"WARUNKI NIE ZOSTAŁY SPEŁNIONE DRUGA KOMÓRKA 0")))</strong> – chociaż oczywiście zadanie te można by rozwiązać na kilka innych sposobów.</p>
<p style="text-align: left;">Efekt działania funkcji widzimy na rysunku poniżej.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_6/image3.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_6/image3.png" alt="image3" width="700" height="251" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Formuła ta jest już troszkę skomplikowana i początkującemu zrozumienie jej działania może (choć wcale nie musi) przysporzyć nieco problemu. Dlatego myślę, że lepszym rozwiązaniem jest przedstawienie tej formuły za pomocą schematu blokowego (teraz jak na dłoni widać jak formuła działa).</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_6/image4.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_6/image4.png" alt="image4" width="700" height="375" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Pierwsza funkcja <strong>JEŻELI</strong> sprawdza warunek: <strong>ORAZ(C3=1;D3=1)</strong> jeśli warunek jest <strong>prawdziwy</strong> zostaje wypisany komunikat: <strong>WARUNKI ZOSTAŁY SPEŁNIONE</strong>. W przypadku zwrócenia przez funkcję <strong>ORAZ</strong> wartości <strong>FAŁSZ</strong> funkcja <strong>JEŻELI</strong> przechodzi do wykonania <strong>WARTOŚĆ_JEŻELI_FAŁSZ</strong> czyli w naszym przypadku zostaje wykonana kolejna funkcja <strong>JEŻELI</strong> (druga) w której to sprawdzany jest warunek: <strong>ORAZ(C3=0;D3=0)</strong> Gdy warunek jest <strong>prawdą</strong> zostaje wykonane wyświetlenie komunikatu: <strong>WARUNKI NIE ZOSTAŁY SPEŁNIONE W OBU KOMÓRKACH 0</strong> w przeciwnym przypadku następuje przejście do następnego warunku (trzecia funkcja JEŻELI). W funkcji tej sprawdzanym warunkiem jest zapis: <strong>C3=0</strong> Jeżeli komórka <strong>C3</strong> równa się <strong>0</strong>, funkcja <strong>JEŻELI</strong> wykonuje <strong>WARTOŚĆ_JEŻELI_PRAWDA</strong> czyli wypisany jest komunikat: <strong>WARUNKI NIE ZOSTAŁY SPEŁNIONE PIERWSZA KOMÓRKA 0</strong> Ostatnią możliwością jest pojawienie się wartości <strong>0</strong> w drugiej komórce, tak więc nie pozostało nam nic innego jak ostatni komunikat: <strong>WARUNKI NIE ZOSTAŁY SPEŁNIONE DRUGA KOMÓRKA 0</strong> umieścić w sekcji <strong>WARTOŚĆ_JEŻELI_FAŁSZ</strong> gdyż jest to ostatnia możliwość, wykonywana tylko w przypadku nie spełnienia wszystkich wcześniejszych warunków.</p>
<p style="text-align: left;">Funkcja <strong>ORAZ</strong> świetnie nadaje się gdy mamy do czynienia z przedziałami. Ponieważ znacznie ułatwia nam tworzenie formuł, tworzone formuły są znacznie czytelniejsze. No to mały przykład. Przypuśćmy, że jesteśmy menadżerem, którego zadaniem jest wyliczenie prowizji naszym sprzedawcą w zależności od wartości sprzedanego towaru. Prowizję będziemy wyliczali według poniższych zasad:</p>
<ul>
<li style="list-style-type: none;">
<ul>
<li style="list-style-type: none;">
<ul>
<li style="text-align: left;"><span style="color: black;">0 – 1999 zł - 5,0%</span></li>
<li style="text-align: left;"><span style="color: black;">2000 zł – 4999 zł - 10,0%</span></li>
<li style="text-align: left;"><span style="color: black;">5000 zł – 9999 zł - 16,5%</span></li>
<li style="text-align: left;"><span style="color: black;">powyżej 10 000 zł - 25,0%</span></li>
</ul>
</li>
</ul>
</li>
</ul>
<p style="text-align: left;">Przykładowy arkusz natomiast został przedstawiony na rysunku poniżej.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_6/image5.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_6/image5.png" alt="image5" width="700" height="304" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Wyliczenie wartości prowizji zrealizujemy za pomocą formuły: <strong>=JEŻELI(ORAZ(D4>=0;D4<=1999,99);D4*0,05;JEŻELI(ORAZ(D4>=2000;D4<=4999,99);D4*0,1;JEŻELI(ORAZ(D4>=2000;D4<=9999,99);D4*0,165;JEŻELI(D4>=10000;D4*0,25;0))))</strong></p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_6/image6.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_6/image6.png" alt="image6" width="649" height="310" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">W formule powyżej każda z funkcji <strong>ORAZ</strong> została użyta do ustalenia przedziału, natomiast funkcja <strong>JEŻELI</strong> w zależności od zwróconej wartości <strong>PRAWDA</strong> bądź <strong>FAŁSZ</strong> wykonuje wyliczenie wartości prowizji bądź przejścia do sprawdzenia kolejnego warunku.</p>
<p style="text-align: left;">Tak więc myślę, że przedstawione zadania dobrze dokumentują sposób działania funkcji <strong>ORAZ</strong> i nie ma co dalej rozwodzić się nad nią (choć jeszcze do niej wrócimy) i czas by przyjrzeć się funkcji <strong>LUB</strong>. Zaczniemy od tego samego zadania od którego rozpoczęliśmy omawianie funkcji <strong>ORAZ</strong> lecz funkcję tą zastąpimy funkcją <strong>LUB</strong>.</p>
<p style="text-align: left;">Podobnie jak w zadaniu z funkcją <strong>ORAZ</strong> sprawdzamy czy w komórkach (przynajmniej jednej) pojawi się wartość <strong>1</strong>. Jak widać na rysunku poniżej, wartość <strong>PRAWDA</strong> pojawiła się w wszystkich przypadkach w których to w sprawdzanych komórkach została umieszczona cyfra <strong>1</strong>.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_6/image7.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_6/image7.png" alt="image7" width="700" height="273" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Przy opisywaniu funkcji <strong>LUB</strong> użyłem stwierdzenia, że funkcja ta jest sumą warunków. By zrozumieć czemu w wyniku działania funkcji zwracana jest wartość <strong>PRAWDA</strong> lub <strong>FAŁSZ</strong> można cząstkowym, sprawdzanym warunkom w zależności od zwróconego wyniku przypisać wartość <strong>1</strong> lub <strong>0</strong>. Jeżeli suma cząstkowych warunków wyniesie <strong>1</strong> bądź <strong>więcej</strong> zostanie zwrócona wartość <strong>PRAWDA</strong>, natomiast gdy <strong>suma</strong> ta będzie równała się <strong>0</strong> wartością zwracaną będzie <strong>FAŁSZ</strong>.</p>
<p style="text-align: left;"><strong>Sytuacja pierwsza:</strong> sprawdzany jest warunek: <strong>C3=1</strong>, warunek ten jest <strong>FAŁSZEM</strong> czyli <strong>0</strong>, kolejny sprawdzany warunek (D3=1) również zwraca <strong>FAŁSZ</strong> (ponieważ 0 nie równa się 1) tak więc znów mamy <strong>0</strong>. Suma warunków wynosi: <strong>0 + 0</strong> (FAŁSZ + FAŁSZ) co w konsekwencji daje nam <strong>0</strong> czyli wynikiem działania funkcji jest <strong>FAŁSZ</strong>.</p>
<p style="text-align: left;"><strong>Sytuacja druga:</strong> pierwszy warunek jest <strong>PRAWDĄ</strong> (wpisana wartość 1) czyli mamy <strong>1</strong>, natomiast drugi warunek jest <strong>FAŁSZEM</strong> (wpisana wartość 0) czyli mamy <strong>0</strong>. Podsumowując suma składowych warunków wynosi: <strong>1</strong> (1+0) Gdy suma alternatyw wynosi <strong>1</strong> cała formuła zwraca wartość <strong>PRAWDA</strong>.</p>
<p style="text-align: left;"><strong>Sytuacja trzecia:</strong> przypadek ten jest odwróceniem sytuacji drugiej, suma częściowych warunków wynosi również <strong>1</strong>, ponieważ pierwszy warunek zwraca <strong>FAŁSZ</strong> (0), natomiast drugi warunek zwraca <strong>PRAWDA</strong> (1), tak więc suma wynosi <strong>1</strong> (0+1).</p>
<p style="text-align: left;"><strong>Sytuacja czwarta:</strong> oba składowe warunki zwracają wartość <strong>PRAWDA</strong> tak więc wynikiem funkcji jest <strong>PRAWDA</strong> (1+1=2).</p>
<p style="text-align: left;">Gdybyśmy chcieli uzyskać komunikaty podobne do tych jak w przypadku funkcji <strong>ORAZ</strong> oczywiście należałoby użyć funkcji <strong>JEŻELI</strong>.</p>
<p style="text-align: left;">Przy używaniu funkcji <strong>ORAZ</strong> i <strong>LUB</strong> (i tak samo gdy wykorzystujemy funkcję <strong>JEŻELI</strong>) należy mieć na uwadze, że gdy sprawdzaną wartością jest <strong>słowo</strong> w warunku należy użyć <strong>cudzysłowów</strong>. No to przykład. Jesteśmy osobą, która prowadzi przesłuchania kandydatów/kandydatek na stanowisko np. kierownik sklepu. Wymagania są następujące: znajomość języka angielskiego, doświadczenie trzy lata bądź więcej, znajomość pakietu MS Office bądź LibreOffice, wykształcenie wyższe marketing i zarządzanie. Wymagania te są konieczne by kandydacie przeszli do kolejnego etapu. By ułatwić sobie zadanie został utworzony arkusz, który ma pomóc w doborze kandydatów.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_6/image8.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_6/image8.png" alt="image8" width="700" height="201" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Do rozwiązania zadania została użyta następująca formuła: <strong>=JEŻELI(ORAZ(D5="tak";E5>=3;LUB(F5="office";F5="libre");G5="tak");"dodatkowa rozmowa";"odpada")</strong></p>
<p style="text-align: left;">Formuła ta przy użyciu funkcji <strong>ORAZ</strong> i <strong>LUB</strong> (użyte w warunku funkcji <strong>JEŻELI</strong>) sprawdza poszczególne warunki częściowe natomiast funkcja <strong>JEŻELI</strong> w zależności od zwróconej wartości wyświetla odpowiedni komunikat. Komunikat: <strong>dodatkowa rozmowa</strong> zostanie zwrócono gdy: w kolumnie <strong>j. angielski</strong> pojawi się słowo <strong>tak</strong>; w kolumnie <strong>doświadczenie</strong> wpisana wartość będzie wynosić <strong>3</strong> lub <strong>więcej</strong>; w kolumnie <strong>znajomość programów</strong> pojawi się słowo <strong>office</strong> bądź <strong>libre</strong>; w kolumnie <strong>wykształcenie</strong> słowo <strong>tak</strong>. W przeciwnym przypadku jest wyświetlany komunikat: <strong>odpada</strong>. Jak można zauważyć wszystkie sprawdzane ciągi tekstowe zostały umieszczone w <strong>cudzysłowie</strong> a także <strong>wielkość użytych liter</strong> nie ma znaczenia.</p>
<p style="text-align: left;">Funkcję <strong>LUB</strong> (wraz w połączeniu z innymi funkcjami) możemy również wykorzystać w takim oto zadaniu. Przypuśćmy, że mamy listę <strong>imion</strong> i <strong>nazwisk</strong> zaimportowaną z innego programu ale niestety przed każdym imieniem mamy dodany zwrot grzecznościowy <strong>Pan</strong> bądź <strong>Pani</strong>. Naszym celem jest usunięcie tego zwrotu tak aby pozostało nam samo <strong>imię</strong> i <strong>nazwisko</strong>.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_6/image9.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_6/image9.png" alt="image9" width="700" height="271" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Zadanie to możemy zrealizować za pomocą następującej formuły: <strong>=JEŻELI(LUB(LEWY(E7;3)="Pan";LEWY(E7;4)="Pani");PRAWY(E7;DŁ(E7)-ZNAJDŹ(" ";E7));E7)</strong></p>
<p style="text-align: left;">Tak wiem, pewnie się zastanawiasz jak do diabła ta formuła działa. Więc nie pozostaje nam nic innego jak formułę tą rozbić na czynniki pierwsze.</p>
<p style="text-align: left;">W pierwszej kolejności została użyta funkcja <strong>JEŻELI</strong>, której zadaniem jest wykonanie warunku.</p>
<p style="text-align: left;">W warunku funkcji <strong>JEŻELI</strong> znajduje się wpis: <strong>LUB(LEWY(E7;3)="Pan";LEWY(E7;4)="Pani")</strong> zadaniem tej części kodu jest sprawdzenie czy w komórce <strong>E7</strong> znajduje się wyrażenie <strong>Pan</strong> bądź <strong>Pani</strong>. Sprawdzenie następuje z wykorzystaniem funkcji <strong>LEWY</strong>. Funkcja ta zwraca <strong>skrajne lewe znaki</strong> z wartości tekstowej. Tak więc wyrażenie <strong>LEWY(E7;3)="Pan"</strong> powoduje pobranie <strong>trzech</strong> pierwszych znaków z <strong>lewej</strong> strony wyrażenia znajdującego się w komórce <strong>E7</strong> i sprawdzenie czy pobrane znaki to słowo <strong>Pan</strong>. Analogicznie działa wyrażenie <strong>LEWY(E7;4)="Pani"</strong> lecz tu pobierane są <strong>cztery</strong> znaki i sprawdzanym słowem jest <strong>Pani</strong>. Gdy słowo <strong>Pan</strong> bądź <strong>Pani</strong> pojawi się w sprawdzanej komórce warunek jest spełniony.</p>
<p style="text-align: left;">W sekcji <strong>WARTOŚĆ_JEŻELI_PRAWDA</strong> znajduje się wpis: <strong>PRAWY(E7;DŁ(E7)-ZNAJDŹ(" ";E7))</strong> Do zbudowania wyrażenia zostały użyte funkcje <strong>PRAWY</strong>, <strong>ZNAJDŹ</strong> oraz <strong>DŁ</strong>. Zadaniem pierwszej funkcji (PRAWY) jest pobranie znaków z komórki <strong>E7</strong> przy czym ilość pobieranych znaków jest zależna od wykonania zapisu: <strong>DŁ(E7)-ZNAJDŹ(" ";E7)</strong> Funkcja <strong>DŁ</strong> zwraca nam długość ciągu znaków znajdujących się w komórce <strong>E7</strong> (czyli 16 - <strong>spacje też są wliczane</strong>), natomiast funkcja <strong>ZNAJDŹ</strong> w danej komórce szuka wystąpienia znaku <strong>spacja</strong> (zapis " " - do pierwszego wystąpienia), po zastosowaniu formuły zwracana jest wartość <strong>4</strong> (ponieważ spacja jest czwartym znakiem) Wykonywane jest odejmowanie, czyli w naszym przypadku: <strong>16-4=12</strong> Wartość <strong>12</strong> jest przekazywana do funkcji <strong>PRAWY</strong>, tak więc funkcja ta od <strong>prawej strony</strong> komórki <strong>E7</strong> pobiera <strong>12</strong> znaków, tym samym zwracając nam ciąg: <strong>Jan Kowalski</strong>.</p>
<p style="text-align: left;">Jeżeli warunek nie jest spełniony formuła zwraca zawartość komórki <strong>E7</strong>.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_6/image10.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_6/image10.png" alt="image10" width="700" height="271" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Omówione funkcje <strong>LEWY</strong>, <strong>PRAWY</strong>, <strong>ZNAJDŹ</strong> oraz <strong>DŁ</strong> można użyć w scenariuszu w którym to chcemy w osobnych komórkach mieć <strong>imiona</strong> i <strong>nazwiska</strong>.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_6/image11.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_6/image11.png" alt="image11" width="700" height="591" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Aby otrzymać <strong>imiona</strong> użyj formuły: <strong>=LEWY(D7;ZNAJDŹ(" ";D7)-1)</strong> natomiast by uzyskać <strong>nazwiska</strong>: <strong>=PRAWY(D15;DŁ(D15)-ZNAJDŹ(" ";D15))</strong></p>
<p style="text-align: left;">Kolejnym ciekawym zadaniem z zastosowaniem funkcji <strong>LUB</strong> jest zadanie w którym to musimy wyznaczyć <strong>dni weekendowe</strong>. Zadanie polega na wskazaniu, która z podanych dat to <strong>sobota</strong> i <strong>niedziela</strong>.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_6/image12.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_6/image12.png" alt="image12" width="700" height="457" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Jak widać powyżej przy datach, które przypadają w <strong>sobotę</strong> bądź <strong>niedzielę</strong> pojawia się zapis <strong>PRAWDA</strong>. Zadanie to zostało zrealizowane za pomocą formuły: <strong>=LUB(DZIEŃ.TYG(G6)=7;DZIEŃ.TYG(G6)=1)</strong> Jak widać po zapisie formuły w rozwiązaniu problemu dodatkowo została użyta funkcja <strong>DZIEŃ.TYG</strong> Zadaniem tej funkcji jest zwrócenie wartości, która odpowiada numerowi dnia tygodnia. Funkcja zwraca wartości <strong>od 1 do 7</strong> - wartość 1 to niedziela, wartość 2 poniedziałek, wartość 3 to wtorek itd. Tak więc nasze zadanie sprowadza się do wyszukania tych wartości, które odpowiadają <strong>sobocie</strong> (wartość 7) i <strong>niedzieli</strong> (wartość 1). Oczywiście w ten sam sposób można wyszukać inne dni tygodnia, poprzez modyfikację wartości w funkcji <strong>DZIEŃ.TYG</strong> Gdyby funkcja nie zadziałała sprawdź czy komórka zawierające datę została sformatowana jako <strong>DATA</strong>.</p>
<p style="text-align: left;">Aby zakończyć rozważania na temat funkcji logicznych to jeszcze jedno zadanie z wykorzystaniem funkcji LUB i ORAZ (takie podsumowanie). Celem zadania jest stworzenie formuły, która będzie przyznawała zniżkę na bilety miesięczne przy następujących założeniach:</p>
<p style="text-align: left;">Zniżka przysługuje osobom, które spełniają następujące warunki:</p>
<p style="text-align: left; margin-left: 60px;">a) są na emeryturze lub są studentami (niezależnie od dochodu) - zniżka 7%</p>
<p style="text-align: left; margin-left: 60px;">b) ich dochód miesięczny na osobę nie przekracza bądź równa się 600 zł - zniżka 12%</p>
<p style="text-align: left;">Jeżeli osoba spełnia zarówno kryteria z punktu a oraz b przyznaj większą zniżkę. W przypadku braku zniżki niech się pojawi stosowna informacja.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_6/image13.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_6/image13.png" alt="image13" width="700" height="189" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Zadanie to rozwiąże nam następująca formuła: <strong>=JEŻELI(G10<=600;12%;JEŻELI(G10>600;JEŻELI(LUB(E10="tak";F10="tak");7%;"brak");"brak"))</strong></p>
<p style="text-align: left;">Zaczynamy od funkcji <strong>JEŻELI</strong> ponieważ zadanie wymaga od nas wypisanie odpowiedniego komunikatu w zależności od spełnienia danych warunków. Zaczynamy od warunku: <strong>G10<=600</strong> ponieważ nijako jest to warunek nadrzędny, tylko po jego spełnieniu jest możliwość otrzymania <strong>12%</strong> zniżki. Warunek ten dostarcza nam jedno z rozwiązań. Spełnienie go (kwota od 0 do 600zł) spowoduje przyznanie <strong>12%</strong> zniżki. Zostały nam do rozważenia przypadki (3 rozwiązania) w których to: dochód jest większy od <strong>600zł</strong> i osoba jest na <strong>emeryturze</strong> bądź <strong>studentem</strong> (zniżka 7%) i rozwiązanie w którym to dochód przekracza <strong>600zł</strong> ale dana osoba <strong>nie należy</strong> do żadnej z zdefiniowanych grup (brak zniżki). Ponieważ tak naprawdę w przypadku osoby przekraczającej <strong>600zł</strong> i będącej <strong>emerytem</strong> lub <strong>studentem</strong> otrzymujemy jedno rozwiązanie, to aż prosi się by warunek ten połączyć ze sobą. Łączenie osiągniemy wykorzystując funkcję <strong>LUB</strong>. Ponieważ występuje tu rozgraniczenie pomiędzy osobami, których dochód przekracza <strong>600zł</strong> i przynależnością do <strong>danej grupy</strong> musimy ponownie użyć funkcji <strong>JEŻELI</strong>. Gdy warunek zdefiniowany za pomocą funkcji <strong>LUB</strong> okaże się <strong>PRAWDĄ</strong> zostanie przyznana <strong>7% </strong>zniżka w przeciwnym wypadku osoba nie otrzymuje rabatu.</p>
<p style="text-align: left;">Gdyby ta użyta funkcja w dalszym ciągu była nie jasna, to wszelkie wątpliwości rozwieje schemat poniżej.</p>
<p style="text-align: left;"> </p>
<p style="text-align: left;"><a href="http://slow7.pl/images/stories/office/excel_6/image14.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_6/image14.png" alt="image14" width="700" height="375" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Wnikliwy czytelnik na pewno zauważy, że jeden z podanych argumentów <strong>nigdy nie zostanie spełniony</strong>. A mowa tu o zapisie <strong>brak</strong> zapisanym w <strong>WARTOŚĆ_JEŻELI_FAŁSZ</strong> w drugiej funkcji <strong>JEŻELI</strong>. Dzieje się tak ponieważ użyte przedziały: <strong>G10<=600</strong> oraz <strong>G10>600</strong> wyczerpują wszystkie możliwe rozwiązania, jeśli liczba nie będzie mniejsza bądź równa <strong>600</strong> to musi być większa od <strong>600</strong>. Tak więc we wszystkich przypadkach będzie wykonana <strong>WARTOŚĆ_JEŻELI_PRAWDA</strong> (dalej mowa o drugiej funkcji JEŻELI).</p>
<p style="text-align: left;">Czy można by było ten sam rezultat osiągnąć za pomocą innej funkcji. Oczywiście, że tak. Formuła, która rozwiązuje postawione przed nami zadanie może wyglądać następująco: <strong>=JEŻELI(G10<=600;12%;JEŻELI(ORAZ(G10>600;LUB(E10="tak";F10="tak"));7%;"brak"))</strong></p>
<p style="text-align: left;">W formule tej wykorzystano fakt, że gdy liczba nie jest mniejsza bądź równa <strong>600</strong> to musi być większa od <strong>600</strong>. Dlatego w zapisie formuły znalazła się funkcja <strong>ORAZ</strong>, a fakt ten odzwierciedla zapis <strong>G10>600</strong> stanowiący pierwszy argument funkcji <strong>ORAZ</strong>. Drugim argumentem jest zapis <strong>LUB(E10="tak";F10="tak")</strong>, który jest <strong>PRAWDĄ</strong> w przypadku przynależności danej osoby do jednej z dwóch uprzywilejowanych grup. Użyta funkcja <strong>ORAZ</strong> zwróci nam <strong>PRAWDĘ</strong> gdy nie zostanie spełniony pierwszy argument pierwszej funkcji <strong>JEŻELI</strong> (G10<=600) i równocześnie osoba będzie <strong>studentem</strong> bądź <strong>emerytem</strong>. Po spełnieniu tych warunków zostanie zwrócony nam komunikat o <strong>7%</strong> zniżce gdyż cała funkcja <strong>ORAZ</strong> znajduje się w <strong>WARTOŚĆ_JEŻELI_PRAWDA</strong> drugiej funkcji <strong>JEŻELI</strong>. Gdy zaś osoba nie będzie znajdować się w danej grupie, funkcja <strong>ORAZ</strong> zwróci nam <strong>FAŁSZ</strong> i zostanie wykonane polecenie wyświetlenia zapisu <strong>brak</strong>.</p>
<p style="text-align: left;">I na koniec schemat blokowy, który podsumowuje użytą formułę.</p>
<p style="text-align: left;"> </p>
<p style="text-align: left;"><a href="http://slow7.pl/images/stories/office/excel_6/image15.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_6/image15.png" alt="image15" width="700" height="513" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">I na tym chciałbym zakończyć, myślę że po samodzielnym wykonaniu zadań funkcja ORAZ i LUB przed Tobą czytelniku nie będzie miała żadnych tajemnic.</p></div>Excel w zadaniach. Funkcja JEŻELI2014-10-17T06:35:10+00:002014-10-17T06:35:10+00:00http://slow7.pl/office/item/22-excel-w-zadaniach-funkcja-jezelipikolo[email protected]<div class="K2FeedImage"><img src="http://slow7.pl/media/k2/items/cache/71f67488b0857639cee631943a3fc6fa_S.jpg" alt="Excel w zadaniach. Funkcja JEŻELI" /></div><div class="K2FeedIntroText"><p style="text-align: left;">Funkcja <strong>JEŻELI</strong> zwraca daną wartość, jeśli podany argument (parametr) zostanie oszacowany jako <strong>PRAWDA</strong>, albo inną wartość, jeśli argument (parametr) zostanie oszacowany jako <strong>FAŁSZ</strong>. Dodatkowo funkcję <strong>JEŻELI</strong> należy stosować do przeprowadzania testów logicznych na wartościach i formułach. Taką definicję funkcji <strong>JEŻELI</strong> odnajdziemy w pomocy pakietu MS Office. Tłumacząc to trochę prościej zadaniem funkcji <strong>JEŻELI</strong> jest wykonanie odpowiedniego działania w zależności od tego czy dany warunek zostanie spełniony czy też nie.</p>
</div><div class="K2FeedFullText">
<p>Arkusz na którym będziemy pracować można pobrać: <a href="http://slow7.pl/images/stories/office/excel_5/arkusz_jezeli.xlsx">tutaj</a></p>
<p> </p>
<p style="text-align: left;">Ogólna składnia funkcji przedstawia się następująco:</p>
<p style="text-align: left;"> </p>
<p style="text-align: left;"><a href="http://slow7.pl/images/stories/office/excel_5/image1.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_5/image1.png" alt="image1" width="700" height="184" style="display: block; margin-left: auto; margin-right: auto;" /></a> </p>
<p style="text-align: left;">czyli: <strong>=JEŻELI(A1=B1; "Prawda, wszystko jest ok"; "Fałsz, nie jest równe")</strong></p>
<p> </p>
<p style="text-align: left;">Wykonując nasz przykład w przypadku spełnienia warunku (komórki A1 i B1 są sobie równe a więc <strong>PRAWDA</strong>) otrzymamy:</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_5/image2.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_5/image2.png" alt="image2" width="700" height="118" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">natomiast w przypadku zaistnienia nierówności (różnica pomiędzy wartościami zawartymi w komórkach A1 i B1 - <strong>FAŁSZ</strong>), otrzymamy o to taki wynik:</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_5/image3.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_5/image3.png" alt="image3" width="700" height="118" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Tak więc jak widać w zależności od uzyskanego wyniku (PRAWDA bądź FAŁSZ) sprawdzanego warunku (a raczej testu logicznego) jest podejmowane odpowiednie działanie.</p>
<p> </p>
<p style="text-align: left;">Rozbijając funkcję <strong>JEŻELI</strong> na składowe, otrzymamy:</p>
<ul>
<li style="list-style-type: none;">
<ul>
<li style="list-style-type: none;">
<ul>
<li style="text-align: left;"><strong>test_logiczny</strong> czyli dowolna wartość lub wyrażenie, którą da się oszacować jako <strong>PRAWDA</strong> lub jako <strong>FAŁSZ</strong>. W naszym przykładzie testem logicznym jest wyrażenie A1=B1, jeśli wartości umieszczone w obu komórkach są zgodne co do wartości cały test zostanie oszacowany jako <strong>PRAWDA</strong>. W przeciwnym przypadku wyrażenie zostanie oszacowane jako <strong>FAŁSZ</strong>.</li>
<li style="text-align: left;"><strong>wartość_jeżeli_prawda</strong> to wartość bądź działanie, które jest zwracane bądź wykonywane tylko wtedy, gdy argument <strong>test_logiczny</strong> przyjmuje wartość <strong>PRAWDA</strong> lub po prostu, gdy warunek jest <strong>spełniony</strong> wykonaj <strong>wartość_jeżeli_prawda</strong> W naszym przykładzie (jak widać powyżej) zostaje wyświetlony ciąg znaków: <strong>Prawda, wszystko jest ok </strong>gdy <strong>test logiczny</strong> zostaje oszacowany jako <strong>PRAWDA</strong> (warunek spełniony, gdyż w obu komórkach jest wpisana liczba 100 czyli zdefiniowany warunek A1=B1 jest <strong>PRAWDĄ</strong>).</li>
<li style="text-align: left;"><strong>wartość_jeżeli_fałsz</strong> to wartość bądź działanie, które jest zwracane bądź wykonywane tylko wtedy, gdy argument <strong>test_logiczny</strong> przyjmuje wartość <strong>FAŁSZ </strong>lub po prostu, gdy warunek jest <strong>niespełniony</strong> wykonaj <strong>wartość_jeżeli_fałsz</strong>. Wracając do naszego przykładu zostaje wyświetlony tekst: <strong>Fałsz, nie jest równe</strong> w przypadku w którym <strong>test logiczny</strong> zostaje oszacowany jako <strong>FAŁSZ</strong> (warunek niespełniony, gdyż wartości wpisane do komórek A1 i B1 nie są zgodne co do wartości).</li>
</ul>
</li>
</ul>
</li>
</ul>
<p> </p>
<p style="text-align: left;">Tyle co mówi nam teoria na temat funkcji <strong>JEŻELI</strong>, przejdźmy do przykładów tak aby zobaczyć funkcję w działaniu.</p>
<p> </p>
<p style="text-align: left;">Wróćmy do naszego wcześniejszego zadania omawianego w wpisie: <a href="http://slow7.pl/office/126-excel-w-zadaniach-sortowanie-losowanie-zliczanie-oraz-nazywanie">Excel w zadaniach. Sortowanie, losowanie, zliczanie oraz nazywanie</a> a mianowicie arkusza ucznia. Przyjrzyjmy się kolumną w których jest wyliczana średnia. Można np. tak ułożyć formułę aby w kolumnie <strong>Średnia wszystkich ocen </strong>była wyświetlana wartość 0,00 a dopiero w momencie wpisania jakiejkolwiek oceny była wyliczana średnia. Zadanie to możemy zrealizować (jest mnóstwo innych sposobów) np. za pomocą formuły: <strong>=JEŻELI(SUMA(F3:R3)>0;ŚREDNIA(E3:S3);"0,00")</strong>, co tłumaczymy: gdy suma z zakresu ocen będzie większa niż 0 to wykonaj funkcję <strong>ŚREDNIA</strong> w przeciwnym przypadku wstaw wartość 0,00.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_5/image4.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_5/image4.png" alt="image4" width="700" height="127" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Chociaż mnie osobiście bardziej by przekonała o to taka formuła: <strong>=JEŻELI(CZY.LICZBA(E3)+CZY.LICZBA(S3)=2;ŚREDNIA(E3:S3);"0,00")</strong> Ten przykład zapewnia nam dodatkowo sprawdzenie czy wpisaliśmy ocenę pierwszą (religia) oraz ocenę ostatnią (j.niemiecki) i dopiero gdy te dwa warunki są spełnione następuje wyliczenie średniej. W warunku funkcji <strong>JEŻELI</strong> zostało zapisane: gdy wartość <strong>testu logicznego</strong> będzie równać się <strong>2</strong> oblicz średnią z komórek, jeżeli zaś warunek ten jest nie spełniony wypisz <strong>0,00</strong>. Można by zapytać skąd u licha wzięło się <strong>2</strong>? Wartość <strong>2</strong> została użyta ponieważ warunek <strong>CZY.LICZBA(E3)+CZY.LICZBA(S3)</strong> po spełnieniu zwraca wartość 2. Funkcja <strong>CZY.LICZBA(E3)</strong> sprawdza czy w komórce <strong>E3</strong> znajduje się liczba, gdy fakt ten zachodzi zostaje zwrócona wartość <strong>PRAWDA</strong>. Analogicznie działa druga funkcja sprawdzająca wystąpienie liczby w komórce <strong>S3</strong>. Ponieważ pomiędzy tymi funkcjami został użyty znak <strong>+</strong> to ni jako otrzymujemy <strong>dwie PRAWDY</strong>. Poniżej widzimy efekt zastosowania formuły. Jak widać poniżej średnia jest wyliczana tylko w przypadku wpisania obu ocen tj. oceny z religii i j. niemieckiego.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_5/image5.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_5/image5.png" alt="image5" width="700" height="139" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Podobnie moglibyśmy wykonać sprawdzenie faktu wpisania ocen z wszystkich dostępnych przedmiotów, przyrównując wartość <strong>testu logicznego</strong> do <strong>15</strong> (gdyż tyle jest przedmiotów a każde poprawne wykonanie funkcji CZY.LICZBA daje 1):</p>
<p style="text-align: left;"><strong>=JEŻELI(CZY.LICZBA(E3)+CZY.LICZBA(F3)+CZY.LICZBA(G3)+CZY.LICZBA(H3)+CZY.LICZBA(I3)+</strong></p>
<p style="text-align: left;"><strong>+CZY.LICZBA(J3)+CZY.LICZBA(K3)+CZY.LICZBA(L3)++CZY.LICZBA(M3)+CZY.LICZBA(N3)+</strong></p>
<p style="text-align: left;"><strong>+CZY.LICZBA(O3)+CZY.LICZBA(P3)+CZY.LICZBA(Q3)+CZY.LICZBA(R3)+CZY.LICZBA(S3)=</strong></p>
<p style="text-align: left;"><strong>=15;ŚREDNIA(E3:S3);"0,00")</strong></p>
<p> </p>
<p style="text-align: left;">Jak widać zapisanie funkcji będzie już dość skomplikowane a że działa to widzimy na rysunku poniżej.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_5/image6.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_5/image6.png" alt="image6" width="700" height="176" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Oczywiście, ktoś uważny mógłby zapytać - A co z wpisem <strong>nkl</strong>? (oznaczającym ucznia niesklasyfikowanego, uczeń 4, na rysunku powyżej). Czemu to średnia w przypadku wpisania nkl, nie miała by być liczona? Oczywiście działanie naszej powyższej formuły jest jak najbardziej prawidłowe, ponieważ weryfikujemy wystąpienie liczby a zapis <strong>nkl</strong> nie jest liczbą i dla tego <strong>test logiczny</strong> nie zostaje sprawdzony a tym samym w komórce zostaje wypisana wartość 0,00. Aby poprawić wpiszmy:</p>
<p style="text-align: left;"><strong>=JEŻELI(CZY.PUSTA(E6)+CZY.PUSTA(F6)+CZY.PUSTA(G6)+CZY.PUSTA(H6)+CZY.PUSTA(I6)+</strong></p>
<p style="text-align: left;"><strong>+CZY.PUSTA(J6)+CZY.PUSTA(K6)+CZY.PUSTA(L6)+CZY.PUSTA(M6)+CZY.PUSTA(N6)+</strong></p>
<p style="text-align: left;"><strong>+CZY.PUSTA(O6)+CZY.PUSTA(P6)+CZY.PUSTA(Q6)+CZY.PUSTA(R6)+CZY.PUSTA(S6)=</strong></p>
<p style="text-align: left;"><strong>=0;ŚREDNIA(E3:S3);"0,00")</strong></p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_5/image7.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_5/image7.png" alt="image7" width="700" height="175" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Wartość <strong>testu logicznego</strong> została przyrównana do <strong>0</strong> gdyż funkcja <strong>CZY.PUSTA</strong> sprawdza czy w komórce jest wpisana jakakolwiek wartość (liczba, tekst, data) gdy komórka jest uzupełniona zwracana jest wartość <strong>FAŁSZ</strong> (czyli 0) a w przypadku braku wpisu wartość <strong>PRAWDA</strong> (czyli 1). Nam zależy aby wszystkie komórki były uzupełnione a więc nie może się zdarzyć aby któraś z funkcji <strong>CZY.PUSTA</strong> przyjęła wartość <strong>PRAWDA</strong> tym samym dając 1 (brak wpisu oceny). Każda z funkcji <strong>CZY.PUSTA</strong> musi zwrócić wartość <strong>FAŁSZ</strong>, zwracając <strong>0</strong> a tym samym suma wszystkich wykonanych funkcji <strong>CZY.PUSTA</strong> musi dać <strong>0</strong> (tak się stanie gdy wpiszemy wszystkie oceny). Gdy warunek zostaje spełniony obliczana jest wartość średniej wprowadzonych ocen.</p>
<p> </p>
<p style="text-align: left;">Jak widać powyżej zaprezentowane funkcje, co zostało już nadmienione wyglądają nader skomplikowanie i łatwo jest przy konstruowaniu ich popełnić błąd. Czy można je zapisać prościej? Oczywiście, że tak. Trzeba znać tylko pojęcie <strong>formuły tablicowej</strong>. Tak więc w obu przypadkach nasze funkcje mogłyby by przyjąć postać:</p>
<p style="text-align: left; margin-left: 60px;">- dla funkcji <strong>CZY.LICZBA</strong> - <strong>{=JEŻELI(ORAZ(CZY.LICZBA(E3:S3));ŚREDNIA(E3:S3);"0,00")}</strong></p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_5/image8.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_5/image8.png" alt="image8" width="700" height="201" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left; margin-left: 60px;">-dla funkcji <strong>CZY.PUSTA</strong> - <strong>{=JEŻELI(LUB(CZY.PUSTA(E3:S3));"0,00";ŚREDNIA(E3:S3))}</strong></p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_5/image9.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_5/image9.png" alt="image9" width="700" height="175" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Wybacz czytelniku ale nie będę w tym wpisie rozwijał zagadnienia <strong>formuł tablicowych</strong> jak i co pewne zauważyłeś dwóch kolejnych funkcji logicznych <strong>ORAZ</strong> i <strong>LUB</strong> (użytych w powyższych formułach), gdyż tematy te będę chciał opisać w osobnych wpisach. Na tym etapie chciałem tylko pokazać, iż funkcję <strong>JEŻELI</strong> można łączyć z innymi funkcjami oraz używać jej właśnie w <strong>formułach tablicowych</strong>. Oczywiście zachęcam do wykonania opisanych przeze mnie przykładów i sprawdzenia, czy to wszystko działa. <strong>Przy formule tablicowej</strong> nadmienię tylko jedną rzecz, że aby ona zadziałał należy użyć klawiszy <strong>Ctrl+Shift+Enter</strong> tzn. nawiasów klamrowych {} <strong>nie wprowadzamy</strong>, wpisujemy formułę a po wciśnięciu nadmienionych klawiszy nawiasy te automatycznie zostaną dopisane. Nawiasy klamrowe przez Excel są używane do zaznaczenia, iż mamy do czynienia właśnie z <strong>formułą tablicową</strong>.</p>
<p> </p>
<p style="text-align: left;">Funkcję <strong>JEŻELI</strong> bardzo często używa się do porównania tych samych danych lecz umieszczonych w różnych kolumnach. Za pomocą tej funkcji bardzo szybko jesteśmy w stanie zweryfikować czy dane są ze sobą zgodne.</p>
<p> </p>
<p style="text-align: left;">Posiadamy arkusz uzupełniony przykładowymi danymi, należy porównać czy dane z kolumny B oraz kolumny C w tych samych wierszach są ze sobą zgodne. W przypadku gdy w komórkach występuje zgodność, powinien pojawić się komunikat „ok”, natomiast gdy komórki różnią się od siebie, powinien pojawić się komunikat „błąd”. Porównanie zrealizujemy za pomocą o to takiej prostej formuły: <strong>=JEŻELI(B6=C6;"ok";"błąd")</strong></p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_5/image10.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_5/image10.png" alt="image10" width="700" height="450" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Jak widać poniżej przy tak skonstruowanej formule nie jest uwzględniana wielkość liter. Dla Excela komórka z wpisaną wartością AQZ będzie tożsama z Aqz, AQz, azq, aZq itd. Aby wprowadzić rozróżnienie wielkości liter należy skorzystać z dodatkowej funkcji <strong>PORÓWNAJ</strong>. Funkcja ta porównuje ze sobą dwa ciągi tekstu zwracając wartość <strong>PRAWDA</strong> w przypadku zgodności ciągów a wartość <strong>FAŁSZ</strong> w przypadku jej braku. W przypadku funkcji <strong>PORÓWNAJ</strong> rozróżniane są wielkie i małe litery, ale ignorowane są różnice w formatowaniu.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_5/image11.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_5/image11.png" alt="image11" width="700" height="351" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Aby porównać ze sobą trzy różne komórki można oto skorzystać z takiej formuły: <strong>=JEŻELI(PORÓWNAJ(B16;C16)+PORÓWNAJ(C16;D16)=2;"ok";"błąd")</strong> Formuła ta sprawdza czy dana komórka (w tym przypadku komórka C16) jest zgodna z dwiema pozostałymi (z komórką B16 oraz D16). W przypadku zgodności zwracana jest wartość <strong>PRAWDA</strong> czyli <strong>1</strong>, zgodność z obiema komórkami zwraca wartość <strong>2</strong> (PRAWDA+PRAWDA).</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_5/image12.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_5/image12.png" alt="image12" width="700" height="205" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Porównanie tego typu można również zrealizować za pomocą zagnieżdżenia funkcji <strong>JEŻELI</strong> ale jak to wykonać wytłumaczę za chwilę.</p>
<p> </p>
<p style="text-align: left;">Kolejnym zadaniem w którym możemy wykorzystać funkcję <strong>JEŻELI</strong> jest wyszukiwanie wartości spełniających zadane kryterium.</p>
<p> </p>
<p style="text-align: left;">Przypuśćmy, że pracujemy w sklepie AGD i mamy przygotowany arkusz zawierający listę modeli telewizorów dostępnych w sklepie (taki jak poniżej) i chcemy znać liczbę modeli telewizorów firmy Sony.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_5/image13.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_5/image13.png" alt="image13" width="700" height="339" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Jednym z sposobów poradzenia sobie z zadaniem (rozwiązanie wcale nie jedyne i trza przyznać, że niezbyt wyszukane) jest dołożenie sobie kolejnej kolumny w której pojawi się słowo <strong>tak</strong> jeżeli model telewizora będzie wyprodukowany właśnie przez Sony. W kolumnie tej trzeba oczywiście wpisać odpowiednią formułę, która przyjmie postać: <strong>=JEŻELI(B2="Sony";"tak";"nie").</strong></p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_5/image14.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_5/image14.png" alt="image14" width="700" height="224" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Jak widać powyżej przy każdym modelu Sony pojawiło się słowo <strong>tak</strong>.</p>
<p> </p>
<p style="text-align: left;">Skomplikujmy sobie troszkę zadanie i dodajmy kolejne kryterium. Powiedzmy, że teraz interesują nas telewizory marki Samsung lecz tylko te, których rozmiar przekracza 32 cale. Zadanie to można wykonać lecz trzeba użyć dwa razy funkcję <strong>JEŻELI</strong>, cały trik polega na umiejętnym <strong>zagnieżdżeniu</strong> funkcji <strong>JEŻELI</strong>. Tak więc dla lepszego zrozumienia działania formuły w której funkcja <strong>JEŻELI</strong> została zagnieżdżona przyjmijmy: w przypadku gdy telewizor nie został wyprodukowany przez firmę Samsung niech pojawi się komunikat – „inna firma”; w przypadku w którym telewizor jest mniejszy niż 32 cale - komunikat – „poniżej 32 cali” a gdy nasze kryterium zostanie spełnione (firma Samsung i powyżej 32 cali) – komunikat – „wszystko ok”</p>
<p> </p>
<p style="text-align: left;">Czyli nasze zadanie moglibyśmy rozpisać w ten poniższy sposób (wykorzystamy schemat blokowy):</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_5/image15.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_5/image15.png" alt="image15" width="642" height="606" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Z pomocą schematu dokładnie możemy określić składnię formuły (jak ona działa), wystarczy, że romby symbolizujące warunek zamienimy na funkcję <strong>JEŻELI</strong>, przypisując do pytań w rombach odpowiedni adres komórki, wartości na <strong>TAK</strong> użyjemy do przypisania parametru <strong>wartość jeżeli prawda</strong> a wartości na <strong>NIE</strong> do przypisania parametru <strong>wartość jeżeli fałsz</strong>. Tak więc nasza formuła przyjmie następującą postać: <strong>=JEŻELI(B2="Samsung";JEŻELI(D2>32;"wszystko ok";"poniżej 32 cale");"inna firma")</strong></p>
<p> </p>
<p style="text-align: left;">Jak widać poniżej po przekopiowaniu formuły do pozostałych komórek uzyskaliśmy zamierzony efekt.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_5/image16.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_5/image16.png" alt="image16" width="700" height="271" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Oczywiście funkcję <strong>JEŻELI</strong> możemy zagnieżdżać wiele razy (a tak naprawdę maksimum to 7) tym samym sprawdzając wiele warunków.</p>
<p> </p>
<p style="text-align: left;">Takim przykładowym zadaniem może być obliczenie wskaźnika BMI. BMI to skrót z języka angielskiego „body mass index”, co tłumaczymy jako wskaźnik masy ciała. Wskaźnik BMI określa relację pomiędzy masą ciała a wzrostem. Współczynnik ten wyliczamy poprzez podzielenie masy ciała podanej w kilogramach przez kwadrat wysokości podanej w metrach. Obliczając BMI możemy określić ilość tkanki tłuszczowej w organizmie.</p>
<p> </p>
<p style="text-align: left;">Nasz kalkulator w zależności od wartości wyliczonego indeksu wyświetli odpowiedni komunikat według następującego przelicznika:</p>
<ul>
<li style="list-style-type: none;">
<ul>
<li style="list-style-type: none;">
<ul>
<li style="text-align: left;">do 18,5 - niedobór masy,</li>
<li style="text-align: left;">18,6 - 24,9 - masa prawidłowa,</li>
<li style="text-align: left;">25,0 - 29,9 - nadwaga,</li>
<li style="text-align: left;">30 - 34,9 - 1. st. otyłości,</li>
<li style="text-align: left;">35 - 39,9 - 2. st. otyłości.</li>
</ul>
</li>
</ul>
</li>
</ul>
<p> </p>
<p style="text-align: left;">Zadanie to jest trochę trudniejsze niż te z wyborem telewizora z kilku powodów. Po pierwsze rozwiązaniem zadania będzie formuła zawierająca cztery funkcje <strong>JEŻELI</strong>. Po drugie w zadaniu tym nie będziemy porównywać wartości z wzorcem lecz będziemy musieli zdefiniować przedziały. I w końcu po drugie i pół (gdyż kolejna trudność jest powiązana z powodem drugim) – utworzone zakresy (przedziały) trzeba ułożyć w odpowiedniej kolejności.</p>
<p> </p>
<p style="text-align: left;">Tak więc przykładowa formuła rozwiązująca nasz problem mogłaby wyglądać następująco:</p>
<p style="text-align: left;"><strong>=JEŻELI(E18<=18,5;"niedobór masy";JEŻELI(E18<=24,9;"masa prawidłowa";JEŻELI(E18<=29,9;"nadwaga";JEŻELI(E18<=34,9;"1 st otyłości";"2 st otyłości"))))</strong></p>
<p> </p>
<p style="text-align: left;">Oczywiście by rozwiązać to zadanie można by również użyć takiej o to formuły:</p>
<p style="text-align: left;"><strong>=JEŻELI(E18>=35;"2 st. otyłości";JEŻELI(E18>=30;"1 st. otyłości";JEŻELI(E18>=25;"nadwaga";JEŻELI(E18>=18,6;"masa prawidłowa";"niedobór masy"))))</strong></p>
<p> </p>
<p style="text-align: left;">Wspomniałem, że należy zwrócić uwagę na odpowiednie położenie zakresów (właściwa kolejność). Spójrzmy co by się wydarzyło gdybyśmy naszą formułę zapisali następująco:</p>
<p style="text-align: left;"><strong>=JEŻELI(E18>=18,6;"masa prawidłowa";JEŻELI(E18>=25;"nadwaga";JEŻELI(E18>=30;"1 st. otyłości";JEŻELI(E18>=35;"2 st. otyłości";"niedobór masy"))))</strong></p>
<p> </p>
<p style="text-align: left;">Tak zapisana formuła po wpisaniu wartości, która przekroczy wartość <strong>18,6</strong> zawsze będzie wyświetlać komunikat: <strong>masa prawidłowa</strong>, stanie się tak, ponieważ funkcja <strong>JEŻELI</strong> po wykonaniu pierwszego testu uzna, że jest on prawdziwy (co zresztą będzie prawdą) a tym samym zostanie pominięte sprawdzenie kolejnych warunków.</p>
<p> </p>
<p style="text-align: left;">Z funkcją <strong>JEŻELI</strong> będziemy mieli do czynienia bardzo często. Zaryzykuję stwierdzenie, że jest to najczęściej wykorzystywana funkcja Excela a połączenie funkcji <strong>JEŻELI</strong> z innymi dostępnymi funkcjami zwiększa jej standardowe możliwości. Tak więc czytelniku po omówieniu tematu oraz ukazaniu podstawowych możliwości jak na ten wpis sprawę uważam za zamkniętą, co nie zmienia faktu, że jeszcze nie jeden raz w innych artykułach do funkcji <strong>JEŻELI</strong> będę się odwoływał.</p></div><div class="K2FeedImage"><img src="http://slow7.pl/media/k2/items/cache/71f67488b0857639cee631943a3fc6fa_S.jpg" alt="Excel w zadaniach. Funkcja JEŻELI" /></div><div class="K2FeedIntroText"><p style="text-align: left;">Funkcja <strong>JEŻELI</strong> zwraca daną wartość, jeśli podany argument (parametr) zostanie oszacowany jako <strong>PRAWDA</strong>, albo inną wartość, jeśli argument (parametr) zostanie oszacowany jako <strong>FAŁSZ</strong>. Dodatkowo funkcję <strong>JEŻELI</strong> należy stosować do przeprowadzania testów logicznych na wartościach i formułach. Taką definicję funkcji <strong>JEŻELI</strong> odnajdziemy w pomocy pakietu MS Office. Tłumacząc to trochę prościej zadaniem funkcji <strong>JEŻELI</strong> jest wykonanie odpowiedniego działania w zależności od tego czy dany warunek zostanie spełniony czy też nie.</p>
</div><div class="K2FeedFullText">
<p>Arkusz na którym będziemy pracować można pobrać: <a href="http://slow7.pl/images/stories/office/excel_5/arkusz_jezeli.xlsx">tutaj</a></p>
<p> </p>
<p style="text-align: left;">Ogólna składnia funkcji przedstawia się następująco:</p>
<p style="text-align: left;"> </p>
<p style="text-align: left;"><a href="http://slow7.pl/images/stories/office/excel_5/image1.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_5/image1.png" alt="image1" width="700" height="184" style="display: block; margin-left: auto; margin-right: auto;" /></a> </p>
<p style="text-align: left;">czyli: <strong>=JEŻELI(A1=B1; "Prawda, wszystko jest ok"; "Fałsz, nie jest równe")</strong></p>
<p> </p>
<p style="text-align: left;">Wykonując nasz przykład w przypadku spełnienia warunku (komórki A1 i B1 są sobie równe a więc <strong>PRAWDA</strong>) otrzymamy:</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_5/image2.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_5/image2.png" alt="image2" width="700" height="118" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">natomiast w przypadku zaistnienia nierówności (różnica pomiędzy wartościami zawartymi w komórkach A1 i B1 - <strong>FAŁSZ</strong>), otrzymamy o to taki wynik:</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_5/image3.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_5/image3.png" alt="image3" width="700" height="118" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Tak więc jak widać w zależności od uzyskanego wyniku (PRAWDA bądź FAŁSZ) sprawdzanego warunku (a raczej testu logicznego) jest podejmowane odpowiednie działanie.</p>
<p> </p>
<p style="text-align: left;">Rozbijając funkcję <strong>JEŻELI</strong> na składowe, otrzymamy:</p>
<ul>
<li style="list-style-type: none;">
<ul>
<li style="list-style-type: none;">
<ul>
<li style="text-align: left;"><strong>test_logiczny</strong> czyli dowolna wartość lub wyrażenie, którą da się oszacować jako <strong>PRAWDA</strong> lub jako <strong>FAŁSZ</strong>. W naszym przykładzie testem logicznym jest wyrażenie A1=B1, jeśli wartości umieszczone w obu komórkach są zgodne co do wartości cały test zostanie oszacowany jako <strong>PRAWDA</strong>. W przeciwnym przypadku wyrażenie zostanie oszacowane jako <strong>FAŁSZ</strong>.</li>
<li style="text-align: left;"><strong>wartość_jeżeli_prawda</strong> to wartość bądź działanie, które jest zwracane bądź wykonywane tylko wtedy, gdy argument <strong>test_logiczny</strong> przyjmuje wartość <strong>PRAWDA</strong> lub po prostu, gdy warunek jest <strong>spełniony</strong> wykonaj <strong>wartość_jeżeli_prawda</strong> W naszym przykładzie (jak widać powyżej) zostaje wyświetlony ciąg znaków: <strong>Prawda, wszystko jest ok </strong>gdy <strong>test logiczny</strong> zostaje oszacowany jako <strong>PRAWDA</strong> (warunek spełniony, gdyż w obu komórkach jest wpisana liczba 100 czyli zdefiniowany warunek A1=B1 jest <strong>PRAWDĄ</strong>).</li>
<li style="text-align: left;"><strong>wartość_jeżeli_fałsz</strong> to wartość bądź działanie, które jest zwracane bądź wykonywane tylko wtedy, gdy argument <strong>test_logiczny</strong> przyjmuje wartość <strong>FAŁSZ </strong>lub po prostu, gdy warunek jest <strong>niespełniony</strong> wykonaj <strong>wartość_jeżeli_fałsz</strong>. Wracając do naszego przykładu zostaje wyświetlony tekst: <strong>Fałsz, nie jest równe</strong> w przypadku w którym <strong>test logiczny</strong> zostaje oszacowany jako <strong>FAŁSZ</strong> (warunek niespełniony, gdyż wartości wpisane do komórek A1 i B1 nie są zgodne co do wartości).</li>
</ul>
</li>
</ul>
</li>
</ul>
<p> </p>
<p style="text-align: left;">Tyle co mówi nam teoria na temat funkcji <strong>JEŻELI</strong>, przejdźmy do przykładów tak aby zobaczyć funkcję w działaniu.</p>
<p> </p>
<p style="text-align: left;">Wróćmy do naszego wcześniejszego zadania omawianego w wpisie: <a href="http://slow7.pl/office/126-excel-w-zadaniach-sortowanie-losowanie-zliczanie-oraz-nazywanie">Excel w zadaniach. Sortowanie, losowanie, zliczanie oraz nazywanie</a> a mianowicie arkusza ucznia. Przyjrzyjmy się kolumną w których jest wyliczana średnia. Można np. tak ułożyć formułę aby w kolumnie <strong>Średnia wszystkich ocen </strong>była wyświetlana wartość 0,00 a dopiero w momencie wpisania jakiejkolwiek oceny była wyliczana średnia. Zadanie to możemy zrealizować (jest mnóstwo innych sposobów) np. za pomocą formuły: <strong>=JEŻELI(SUMA(F3:R3)>0;ŚREDNIA(E3:S3);"0,00")</strong>, co tłumaczymy: gdy suma z zakresu ocen będzie większa niż 0 to wykonaj funkcję <strong>ŚREDNIA</strong> w przeciwnym przypadku wstaw wartość 0,00.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_5/image4.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_5/image4.png" alt="image4" width="700" height="127" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Chociaż mnie osobiście bardziej by przekonała o to taka formuła: <strong>=JEŻELI(CZY.LICZBA(E3)+CZY.LICZBA(S3)=2;ŚREDNIA(E3:S3);"0,00")</strong> Ten przykład zapewnia nam dodatkowo sprawdzenie czy wpisaliśmy ocenę pierwszą (religia) oraz ocenę ostatnią (j.niemiecki) i dopiero gdy te dwa warunki są spełnione następuje wyliczenie średniej. W warunku funkcji <strong>JEŻELI</strong> zostało zapisane: gdy wartość <strong>testu logicznego</strong> będzie równać się <strong>2</strong> oblicz średnią z komórek, jeżeli zaś warunek ten jest nie spełniony wypisz <strong>0,00</strong>. Można by zapytać skąd u licha wzięło się <strong>2</strong>? Wartość <strong>2</strong> została użyta ponieważ warunek <strong>CZY.LICZBA(E3)+CZY.LICZBA(S3)</strong> po spełnieniu zwraca wartość 2. Funkcja <strong>CZY.LICZBA(E3)</strong> sprawdza czy w komórce <strong>E3</strong> znajduje się liczba, gdy fakt ten zachodzi zostaje zwrócona wartość <strong>PRAWDA</strong>. Analogicznie działa druga funkcja sprawdzająca wystąpienie liczby w komórce <strong>S3</strong>. Ponieważ pomiędzy tymi funkcjami został użyty znak <strong>+</strong> to ni jako otrzymujemy <strong>dwie PRAWDY</strong>. Poniżej widzimy efekt zastosowania formuły. Jak widać poniżej średnia jest wyliczana tylko w przypadku wpisania obu ocen tj. oceny z religii i j. niemieckiego.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_5/image5.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_5/image5.png" alt="image5" width="700" height="139" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Podobnie moglibyśmy wykonać sprawdzenie faktu wpisania ocen z wszystkich dostępnych przedmiotów, przyrównując wartość <strong>testu logicznego</strong> do <strong>15</strong> (gdyż tyle jest przedmiotów a każde poprawne wykonanie funkcji CZY.LICZBA daje 1):</p>
<p style="text-align: left;"><strong>=JEŻELI(CZY.LICZBA(E3)+CZY.LICZBA(F3)+CZY.LICZBA(G3)+CZY.LICZBA(H3)+CZY.LICZBA(I3)+</strong></p>
<p style="text-align: left;"><strong>+CZY.LICZBA(J3)+CZY.LICZBA(K3)+CZY.LICZBA(L3)++CZY.LICZBA(M3)+CZY.LICZBA(N3)+</strong></p>
<p style="text-align: left;"><strong>+CZY.LICZBA(O3)+CZY.LICZBA(P3)+CZY.LICZBA(Q3)+CZY.LICZBA(R3)+CZY.LICZBA(S3)=</strong></p>
<p style="text-align: left;"><strong>=15;ŚREDNIA(E3:S3);"0,00")</strong></p>
<p> </p>
<p style="text-align: left;">Jak widać zapisanie funkcji będzie już dość skomplikowane a że działa to widzimy na rysunku poniżej.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_5/image6.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_5/image6.png" alt="image6" width="700" height="176" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Oczywiście, ktoś uważny mógłby zapytać - A co z wpisem <strong>nkl</strong>? (oznaczającym ucznia niesklasyfikowanego, uczeń 4, na rysunku powyżej). Czemu to średnia w przypadku wpisania nkl, nie miała by być liczona? Oczywiście działanie naszej powyższej formuły jest jak najbardziej prawidłowe, ponieważ weryfikujemy wystąpienie liczby a zapis <strong>nkl</strong> nie jest liczbą i dla tego <strong>test logiczny</strong> nie zostaje sprawdzony a tym samym w komórce zostaje wypisana wartość 0,00. Aby poprawić wpiszmy:</p>
<p style="text-align: left;"><strong>=JEŻELI(CZY.PUSTA(E6)+CZY.PUSTA(F6)+CZY.PUSTA(G6)+CZY.PUSTA(H6)+CZY.PUSTA(I6)+</strong></p>
<p style="text-align: left;"><strong>+CZY.PUSTA(J6)+CZY.PUSTA(K6)+CZY.PUSTA(L6)+CZY.PUSTA(M6)+CZY.PUSTA(N6)+</strong></p>
<p style="text-align: left;"><strong>+CZY.PUSTA(O6)+CZY.PUSTA(P6)+CZY.PUSTA(Q6)+CZY.PUSTA(R6)+CZY.PUSTA(S6)=</strong></p>
<p style="text-align: left;"><strong>=0;ŚREDNIA(E3:S3);"0,00")</strong></p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_5/image7.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_5/image7.png" alt="image7" width="700" height="175" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Wartość <strong>testu logicznego</strong> została przyrównana do <strong>0</strong> gdyż funkcja <strong>CZY.PUSTA</strong> sprawdza czy w komórce jest wpisana jakakolwiek wartość (liczba, tekst, data) gdy komórka jest uzupełniona zwracana jest wartość <strong>FAŁSZ</strong> (czyli 0) a w przypadku braku wpisu wartość <strong>PRAWDA</strong> (czyli 1). Nam zależy aby wszystkie komórki były uzupełnione a więc nie może się zdarzyć aby któraś z funkcji <strong>CZY.PUSTA</strong> przyjęła wartość <strong>PRAWDA</strong> tym samym dając 1 (brak wpisu oceny). Każda z funkcji <strong>CZY.PUSTA</strong> musi zwrócić wartość <strong>FAŁSZ</strong>, zwracając <strong>0</strong> a tym samym suma wszystkich wykonanych funkcji <strong>CZY.PUSTA</strong> musi dać <strong>0</strong> (tak się stanie gdy wpiszemy wszystkie oceny). Gdy warunek zostaje spełniony obliczana jest wartość średniej wprowadzonych ocen.</p>
<p> </p>
<p style="text-align: left;">Jak widać powyżej zaprezentowane funkcje, co zostało już nadmienione wyglądają nader skomplikowanie i łatwo jest przy konstruowaniu ich popełnić błąd. Czy można je zapisać prościej? Oczywiście, że tak. Trzeba znać tylko pojęcie <strong>formuły tablicowej</strong>. Tak więc w obu przypadkach nasze funkcje mogłyby by przyjąć postać:</p>
<p style="text-align: left; margin-left: 60px;">- dla funkcji <strong>CZY.LICZBA</strong> - <strong>{=JEŻELI(ORAZ(CZY.LICZBA(E3:S3));ŚREDNIA(E3:S3);"0,00")}</strong></p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_5/image8.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_5/image8.png" alt="image8" width="700" height="201" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left; margin-left: 60px;">-dla funkcji <strong>CZY.PUSTA</strong> - <strong>{=JEŻELI(LUB(CZY.PUSTA(E3:S3));"0,00";ŚREDNIA(E3:S3))}</strong></p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_5/image9.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_5/image9.png" alt="image9" width="700" height="175" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Wybacz czytelniku ale nie będę w tym wpisie rozwijał zagadnienia <strong>formuł tablicowych</strong> jak i co pewne zauważyłeś dwóch kolejnych funkcji logicznych <strong>ORAZ</strong> i <strong>LUB</strong> (użytych w powyższych formułach), gdyż tematy te będę chciał opisać w osobnych wpisach. Na tym etapie chciałem tylko pokazać, iż funkcję <strong>JEŻELI</strong> można łączyć z innymi funkcjami oraz używać jej właśnie w <strong>formułach tablicowych</strong>. Oczywiście zachęcam do wykonania opisanych przeze mnie przykładów i sprawdzenia, czy to wszystko działa. <strong>Przy formule tablicowej</strong> nadmienię tylko jedną rzecz, że aby ona zadziałał należy użyć klawiszy <strong>Ctrl+Shift+Enter</strong> tzn. nawiasów klamrowych {} <strong>nie wprowadzamy</strong>, wpisujemy formułę a po wciśnięciu nadmienionych klawiszy nawiasy te automatycznie zostaną dopisane. Nawiasy klamrowe przez Excel są używane do zaznaczenia, iż mamy do czynienia właśnie z <strong>formułą tablicową</strong>.</p>
<p> </p>
<p style="text-align: left;">Funkcję <strong>JEŻELI</strong> bardzo często używa się do porównania tych samych danych lecz umieszczonych w różnych kolumnach. Za pomocą tej funkcji bardzo szybko jesteśmy w stanie zweryfikować czy dane są ze sobą zgodne.</p>
<p> </p>
<p style="text-align: left;">Posiadamy arkusz uzupełniony przykładowymi danymi, należy porównać czy dane z kolumny B oraz kolumny C w tych samych wierszach są ze sobą zgodne. W przypadku gdy w komórkach występuje zgodność, powinien pojawić się komunikat „ok”, natomiast gdy komórki różnią się od siebie, powinien pojawić się komunikat „błąd”. Porównanie zrealizujemy za pomocą o to takiej prostej formuły: <strong>=JEŻELI(B6=C6;"ok";"błąd")</strong></p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_5/image10.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_5/image10.png" alt="image10" width="700" height="450" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Jak widać poniżej przy tak skonstruowanej formule nie jest uwzględniana wielkość liter. Dla Excela komórka z wpisaną wartością AQZ będzie tożsama z Aqz, AQz, azq, aZq itd. Aby wprowadzić rozróżnienie wielkości liter należy skorzystać z dodatkowej funkcji <strong>PORÓWNAJ</strong>. Funkcja ta porównuje ze sobą dwa ciągi tekstu zwracając wartość <strong>PRAWDA</strong> w przypadku zgodności ciągów a wartość <strong>FAŁSZ</strong> w przypadku jej braku. W przypadku funkcji <strong>PORÓWNAJ</strong> rozróżniane są wielkie i małe litery, ale ignorowane są różnice w formatowaniu.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_5/image11.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_5/image11.png" alt="image11" width="700" height="351" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Aby porównać ze sobą trzy różne komórki można oto skorzystać z takiej formuły: <strong>=JEŻELI(PORÓWNAJ(B16;C16)+PORÓWNAJ(C16;D16)=2;"ok";"błąd")</strong> Formuła ta sprawdza czy dana komórka (w tym przypadku komórka C16) jest zgodna z dwiema pozostałymi (z komórką B16 oraz D16). W przypadku zgodności zwracana jest wartość <strong>PRAWDA</strong> czyli <strong>1</strong>, zgodność z obiema komórkami zwraca wartość <strong>2</strong> (PRAWDA+PRAWDA).</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_5/image12.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_5/image12.png" alt="image12" width="700" height="205" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Porównanie tego typu można również zrealizować za pomocą zagnieżdżenia funkcji <strong>JEŻELI</strong> ale jak to wykonać wytłumaczę za chwilę.</p>
<p> </p>
<p style="text-align: left;">Kolejnym zadaniem w którym możemy wykorzystać funkcję <strong>JEŻELI</strong> jest wyszukiwanie wartości spełniających zadane kryterium.</p>
<p> </p>
<p style="text-align: left;">Przypuśćmy, że pracujemy w sklepie AGD i mamy przygotowany arkusz zawierający listę modeli telewizorów dostępnych w sklepie (taki jak poniżej) i chcemy znać liczbę modeli telewizorów firmy Sony.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_5/image13.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_5/image13.png" alt="image13" width="700" height="339" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Jednym z sposobów poradzenia sobie z zadaniem (rozwiązanie wcale nie jedyne i trza przyznać, że niezbyt wyszukane) jest dołożenie sobie kolejnej kolumny w której pojawi się słowo <strong>tak</strong> jeżeli model telewizora będzie wyprodukowany właśnie przez Sony. W kolumnie tej trzeba oczywiście wpisać odpowiednią formułę, która przyjmie postać: <strong>=JEŻELI(B2="Sony";"tak";"nie").</strong></p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_5/image14.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_5/image14.png" alt="image14" width="700" height="224" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Jak widać powyżej przy każdym modelu Sony pojawiło się słowo <strong>tak</strong>.</p>
<p> </p>
<p style="text-align: left;">Skomplikujmy sobie troszkę zadanie i dodajmy kolejne kryterium. Powiedzmy, że teraz interesują nas telewizory marki Samsung lecz tylko te, których rozmiar przekracza 32 cale. Zadanie to można wykonać lecz trzeba użyć dwa razy funkcję <strong>JEŻELI</strong>, cały trik polega na umiejętnym <strong>zagnieżdżeniu</strong> funkcji <strong>JEŻELI</strong>. Tak więc dla lepszego zrozumienia działania formuły w której funkcja <strong>JEŻELI</strong> została zagnieżdżona przyjmijmy: w przypadku gdy telewizor nie został wyprodukowany przez firmę Samsung niech pojawi się komunikat – „inna firma”; w przypadku w którym telewizor jest mniejszy niż 32 cale - komunikat – „poniżej 32 cali” a gdy nasze kryterium zostanie spełnione (firma Samsung i powyżej 32 cali) – komunikat – „wszystko ok”</p>
<p> </p>
<p style="text-align: left;">Czyli nasze zadanie moglibyśmy rozpisać w ten poniższy sposób (wykorzystamy schemat blokowy):</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_5/image15.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_5/image15.png" alt="image15" width="642" height="606" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Z pomocą schematu dokładnie możemy określić składnię formuły (jak ona działa), wystarczy, że romby symbolizujące warunek zamienimy na funkcję <strong>JEŻELI</strong>, przypisując do pytań w rombach odpowiedni adres komórki, wartości na <strong>TAK</strong> użyjemy do przypisania parametru <strong>wartość jeżeli prawda</strong> a wartości na <strong>NIE</strong> do przypisania parametru <strong>wartość jeżeli fałsz</strong>. Tak więc nasza formuła przyjmie następującą postać: <strong>=JEŻELI(B2="Samsung";JEŻELI(D2>32;"wszystko ok";"poniżej 32 cale");"inna firma")</strong></p>
<p> </p>
<p style="text-align: left;">Jak widać poniżej po przekopiowaniu formuły do pozostałych komórek uzyskaliśmy zamierzony efekt.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_5/image16.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_5/image16.png" alt="image16" width="700" height="271" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Oczywiście funkcję <strong>JEŻELI</strong> możemy zagnieżdżać wiele razy (a tak naprawdę maksimum to 7) tym samym sprawdzając wiele warunków.</p>
<p> </p>
<p style="text-align: left;">Takim przykładowym zadaniem może być obliczenie wskaźnika BMI. BMI to skrót z języka angielskiego „body mass index”, co tłumaczymy jako wskaźnik masy ciała. Wskaźnik BMI określa relację pomiędzy masą ciała a wzrostem. Współczynnik ten wyliczamy poprzez podzielenie masy ciała podanej w kilogramach przez kwadrat wysokości podanej w metrach. Obliczając BMI możemy określić ilość tkanki tłuszczowej w organizmie.</p>
<p> </p>
<p style="text-align: left;">Nasz kalkulator w zależności od wartości wyliczonego indeksu wyświetli odpowiedni komunikat według następującego przelicznika:</p>
<ul>
<li style="list-style-type: none;">
<ul>
<li style="list-style-type: none;">
<ul>
<li style="text-align: left;">do 18,5 - niedobór masy,</li>
<li style="text-align: left;">18,6 - 24,9 - masa prawidłowa,</li>
<li style="text-align: left;">25,0 - 29,9 - nadwaga,</li>
<li style="text-align: left;">30 - 34,9 - 1. st. otyłości,</li>
<li style="text-align: left;">35 - 39,9 - 2. st. otyłości.</li>
</ul>
</li>
</ul>
</li>
</ul>
<p> </p>
<p style="text-align: left;">Zadanie to jest trochę trudniejsze niż te z wyborem telewizora z kilku powodów. Po pierwsze rozwiązaniem zadania będzie formuła zawierająca cztery funkcje <strong>JEŻELI</strong>. Po drugie w zadaniu tym nie będziemy porównywać wartości z wzorcem lecz będziemy musieli zdefiniować przedziały. I w końcu po drugie i pół (gdyż kolejna trudność jest powiązana z powodem drugim) – utworzone zakresy (przedziały) trzeba ułożyć w odpowiedniej kolejności.</p>
<p> </p>
<p style="text-align: left;">Tak więc przykładowa formuła rozwiązująca nasz problem mogłaby wyglądać następująco:</p>
<p style="text-align: left;"><strong>=JEŻELI(E18<=18,5;"niedobór masy";JEŻELI(E18<=24,9;"masa prawidłowa";JEŻELI(E18<=29,9;"nadwaga";JEŻELI(E18<=34,9;"1 st otyłości";"2 st otyłości"))))</strong></p>
<p> </p>
<p style="text-align: left;">Oczywiście by rozwiązać to zadanie można by również użyć takiej o to formuły:</p>
<p style="text-align: left;"><strong>=JEŻELI(E18>=35;"2 st. otyłości";JEŻELI(E18>=30;"1 st. otyłości";JEŻELI(E18>=25;"nadwaga";JEŻELI(E18>=18,6;"masa prawidłowa";"niedobór masy"))))</strong></p>
<p> </p>
<p style="text-align: left;">Wspomniałem, że należy zwrócić uwagę na odpowiednie położenie zakresów (właściwa kolejność). Spójrzmy co by się wydarzyło gdybyśmy naszą formułę zapisali następująco:</p>
<p style="text-align: left;"><strong>=JEŻELI(E18>=18,6;"masa prawidłowa";JEŻELI(E18>=25;"nadwaga";JEŻELI(E18>=30;"1 st. otyłości";JEŻELI(E18>=35;"2 st. otyłości";"niedobór masy"))))</strong></p>
<p> </p>
<p style="text-align: left;">Tak zapisana formuła po wpisaniu wartości, która przekroczy wartość <strong>18,6</strong> zawsze będzie wyświetlać komunikat: <strong>masa prawidłowa</strong>, stanie się tak, ponieważ funkcja <strong>JEŻELI</strong> po wykonaniu pierwszego testu uzna, że jest on prawdziwy (co zresztą będzie prawdą) a tym samym zostanie pominięte sprawdzenie kolejnych warunków.</p>
<p> </p>
<p style="text-align: left;">Z funkcją <strong>JEŻELI</strong> będziemy mieli do czynienia bardzo często. Zaryzykuję stwierdzenie, że jest to najczęściej wykorzystywana funkcja Excela a połączenie funkcji <strong>JEŻELI</strong> z innymi dostępnymi funkcjami zwiększa jej standardowe możliwości. Tak więc czytelniku po omówieniu tematu oraz ukazaniu podstawowych możliwości jak na ten wpis sprawę uważam za zamkniętą, co nie zmienia faktu, że jeszcze nie jeden raz w innych artykułach do funkcji <strong>JEŻELI</strong> będę się odwoływał.</p></div>Excel w zadaniach. Sortowanie, losowanie, zliczanie oraz nazywanie.2014-07-19T21:48:46+00:002014-07-19T21:48:46+00:00http://slow7.pl/office/item/23-excel-w-zadaniach-sortowanie-losowanie-zliczanie-oraz-nazywaniepikolo[email protected]<div class="K2FeedImage"><img src="http://slow7.pl/media/k2/items/cache/e2bf3b11df0b872112757f1c2fee6e32_S.jpg" alt="Excel w zadaniach. Sortowanie, losowanie, zliczanie oraz nazywanie." /></div><div class="K2FeedIntroText"><p style="text-align: left;">W tym wpisie zajmiemy się funkcją: <strong>LICZ.JEŻELI </strong>oraz omówimy takie zagadnienia jak <strong>sortowanie</strong>, <strong>nazwy komórek</strong> oraz <strong>obszarów</strong>. Dodatkowo poćwiczymy użycie <strong>adresacji względnej</strong> i <strong>bezwzględnej</strong> i przypomnimy znane nam już funkcje jak również poznamy nowe. Wszystkie omawiane kwestie te nowe i te o których była już mowa (taka forma powtórzenia) standardowo będą opisywane na przykładzie konkretnego zadania czy też problemu do rozwiązania.</p>
</div><div class="K2FeedFullText">
<p style="text-align: left;"> </p>
<p style="text-align: left;">Dziś naszym zadaniem będzie utworzenie arkusza z ocenami dla poszczególnych uczniów, który będzie nam wyliczał poszczególne informacje. Tak więc utworzymy arkusz taki jak ten przedstawiony poniżej:</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image1.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image1.png" alt="image1" width="700" height="323" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;">Zadaniem utworzonego arkusza będzie:</p>
<ul style="text-align: left;">
<li style="list-style-type: none;">
<ul>
<li style="list-style-type: none;">
<ul>
<li>wyliczenie ilości poszczególnych ocen,</li>
<li>obliczenie średnich ocen uczniów oraz z poszczególnych przedmiotów,</li>
<li>wyliczenie ilości ocen z zachowania.</li>
</ul>
</li>
</ul>
</li>
</ul>
<p style="text-align: left;">OK więc zaczynamy. Standardowo arkusz z ćwiczeniem do ściągnięcia tu:<a href="http://slow7.pl/images/stories/office/excel_4/arkusz.xlsx">arkusz ćwiczenie</a></p>
<p style="text-align: left;">Pominę opisywanie formatowania, ponieważ formatowanie zostało opisane w wcześniejszych wpisach. Tworzenie arkusza od zera możesz obejrzeć w załączonym filmiku na końcu artykułu.</p>
<p style="text-align: left;">Pierwszą czynnością jaką wykonamy będzie wpisanie nazwisk i imion uczniów. Specjalnie dane te nie są wpisane w kolejności alfabetycznej gdyż by je ułożyć skorzystamy z funkcji <strong>sortowania</strong>.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image2.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image2.png" alt="image2" width="337" height="319" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Po zaznaczeniu interesujących nas danych (warto zaznaczyć z polem <strong>Nazwisko</strong> oraz <strong>Imię</strong> gdyż pola te zostaną użyte jako nagłówki) aby ułożyć nazwiska wraz z imionami w kolejności alfabetycznej należy kliknąć na karcie <strong>Narzędzia główne</strong> narzędzie <strong>Sortuj i filtruj</strong> a następnie z rozwijanej listy wybrać <strong>Sortowanie niestandardowe</strong>.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image3.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image3.png" alt="image3" width="700" height="248" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Po wybraniu <strong>Sortowania niestandardowego</strong> ukarze nam się okno opcji <strong>sortowania </strong>w którym będziemy mogli ustalić zasady przeprowadzenia procesu.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image4.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image4.png" alt="image4" width="607" height="275" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Naszym celem jest ułożenie nazwisk w kolejności od A do Z a w przypadku wystąpienia dwóch takich samych nazwisk brane ma być pod uwagę imię (i taka sytuacja wystąpi przy nazwisku Nowak).</p>
<p style="text-align: left;">Zaznaczenie uwzględnia wspomniane nagłówki, stąd na liście wyboru pojawia się opcja <strong>Nazwisko</strong> oraz <strong>Imię</strong>. Jeżeli chcemy skorzystać z nazw kolumn odznacz opcję: <strong>Moje dane mają nagłówki</strong>.</p>
<p style="text-align: left;">By osiągnąć nasz założony cel ułożenia wyrazów należy dodać dwa poziomy sortowania (kolejność według, której będzie przeprowadzane sortowanie). Jako pierwsze wybieramy sortowanie według nazwisk zaś jako drugie sortowanie według imion. Oczywiście w polu <strong>Kolejność</strong> wybieramy <strong>Od A do Z</strong>.</p>
<p style="text-align: left;">Po ustaleniu wszystkich opcji klikamy na <strong>OK</strong>. Następuje ułożenie wyrazów. Jak widać poniżej ułożenie te jest zgodne z naszymi oczekiwaniami.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image5.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image5.png" alt="image5" width="337" height="318" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Przy <strong>sortowaniu</strong> należy zwrócić uwagę na jedną bardzo ważną rzecz a mianowicie by <strong>sortować</strong> wszystkie obszary w których znajdują się dane. Oznacza to, że nie zaznaczenie właściwego obszaru będzie skutkować pomieszaniem danych. W naszym przykładzie poniżej na skutek nie zaznaczenia całości obszaru zostały pozamieniane imiona z nazwiskami.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image6.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image6.png" alt="image6" width="337" height="318" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Na szczęście przed tego typu błędem chroni nas stosowne ostrzeżenie.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image7.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image7.png" alt="image7" width="403" height="184" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Kolejnym naszym krokiem będzie uzupełnienie zachowania, tu wpisujemy fikcyjne dane.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image8.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image8.png" alt="image8" width="337" height="318" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Przyszedł czas by uzupełnić oceny. Można by było wpisać je ręcznie ale my pójdziemy na skróty i skorzystamy z pewnego ułatwienia a mianowicie wykorzystamy funkcję: <strong>LOS</strong> , która to zwraca losową liczbę rzeczywistą, liczba ta jest większa niż lub równa 0 i mniejsza od 1. Przy funkcji tej należy dopowiedzieć dwie kwestie: pierwsza to że w składni funkcji <strong>LOS</strong> nie występują argumenty a druga: to że nowa losowa liczba rzeczywista jest zwracana po każdym obliczeniu arkusza, oznacza to że każde odwołanie się do komórki w której jest użyta funkcja <strong>LOS</strong> powoduje wygenerowanie nowej wartości. By ręcznie wygenerować nowe wartości użyj klawisza F9.</p>
<p style="text-align: left;">W naszym przykładzie musimy wygenerować liczby z zakresu od 1 do 6 (bo takie mamy stopnie w szkole), wywołanie funkcji <strong>LOS</strong> spowoduje wygenerowanie liczb od 0 do 1, więc nasuwa się pytanie jak zmienić zakres generowanych liczb? Wystarczy, że skorzystamy z następującego wzoru:<strong>LOS()*(b-a)+a</strong> (gdzie <strong>a</strong> jest liczbą od której ma nastąpić generowanie a <strong>b</strong> granicą, lub prościej jest to zakres od <strong>a</strong> do <strong>b</strong>). A więc spróbujmy, nasze <strong>a=1</strong> natomiast <strong>b=6</strong>.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image9.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image9.png" alt="image9" width="321" height="301" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Jak widać powyżej udało nam się wygenerować liczby, których zakres mieści się pomiędzy 1 a 6 tylko że my potrzebujemy liczby całkowite. Aby uzyskać liczby całkowite należy do naszego wzoru dodać jeszcze jedną funkcję a mianowicie funkcję, która zaokrągli nam wygenerowane liczby rzeczywiste. Excel oferuje nam taką funkcję a nazywa się ona <strong>ZAOKR</strong>. Funkcja <strong>ZAOKR</strong> zaokrągla liczbę do określonej liczby cyfr. Składnia funkcji jest następująca: <strong>ZAOKR(liczba/komórka;liczba_cyfr)</strong></p>
<p style="text-align: left;">gdzie:</p>
<ul style="text-align: left;">
<li style="list-style-type: none;">
<ul>
<li style="list-style-type: none;">
<ul>
<li>liczba/komórka - wymagana liczba, którą należy zaokrąglić.</li>
<li>liczba_cyfr - wymagana liczba cyfr, do których liczba ma zostać zaokrąglona.</li>
</ul>
</li>
</ul>
</li>
</ul>
<p style="text-align: left;">Tak więc nasz wcześniejszy wzór przyjmie następującą postać: <strong>ZAOKR(LOS()*(b-a)+a;0)</strong> i dopiero użycie tej formuły złożonej z dwóch funkcji pozwoli nam na wygenerowanie liczb całkowitych od 1 do 6.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image10.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image10.png" alt="image10" width="321" height="301" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Trochę skomplikowane ale przynajmniej poznaliśmy dwie nowe funkcje. Czy jest prostszy sposób? Oczywiście jest można wykorzystać funkcję: <strong>LOS.ZAKR</strong>, która jest tak naprawdę złożeniem opisanej formuły. Funkcja ta zwraca losową liczbę całkowitą z wybranego zakresu liczb. Składnia funkcji jest następująca: <strong>LOS.ZAKR(dolna; górna)</strong></p>
<p style="text-align: left;">gdzie:</p>
<ul style="text-align: left;">
<li style="list-style-type: none;">
<ul>
<li style="list-style-type: none;">
<ul>
<li>dolna - najmniejsza liczba całkowita, jaką może zwrócić funkcja,</li>
<li>górna - największa liczba całkowita, jaką może zwrócić funkcja.</li>
</ul>
</li>
</ul>
</li>
</ul>
<p style="text-align: left;">Tak więc chcąc wygenerować liczby od 1 do 6 należy wydać polecenie: <strong>=LOS.ZAKR(1;6)</strong> Funkcja ta jest dosyć nowym pomysłem, istniała już wcześniej ale pod nazwą <strong>RANDBETWEEN</strong> i dodatkowo wymagała zainstalowania dodatku <strong>Analysis ToolPack</strong> (starsze wersje Excela). Tak więc jakby z jakiegoś powodu funkcja ta nie była dostępna sprawdź czy ów dodatek jest zainstalowany. W przypadku Excela 2003 - z menu <strong><span style="font-family: 'Calibri','sans-serif';">Narzędzia</span></strong> wybieramy pozycję <strong><span style="font-family: 'Calibri','sans-serif';">Dodatki</span></strong>, a w oknie dialogowym zaznaczamy opcję <strong><span style="font-family: 'Calibri','sans-serif';">Analysis ToolPack</span></strong> i klikamy <strong><span style="font-family: 'Calibri','sans-serif';">OK</span></strong>. Jeżeli zaś chodzi o nowsze wersje z karty <strong>Plik</strong> wybieramy <strong>Opcje</strong> następnie z opcji dostępnych po lewej stronie wybieramy <strong>Dodatki</strong> i u dołu ekranu w polu <strong>Zarządzaj</strong> wybieramy <strong>Dodatki programu Excel</strong> i klikamy <strong>Przejdź</strong> W nowo otwartym oknie wybieramy interesujące nas dodatki w tym przypadku <strong>Analysis ToolPack</strong>.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image11.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image11.png" alt="image11" width="700" height="505" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">To jak już wiemy jak utworzyć oceny to wykonajmy to.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image12.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image12.png" alt="image12" width="700" height="279" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Mamy wypełnione oceny.</p>
<p style="text-align: left;">Aby nie następowało generowanie nowych wartości za każdym odwołaniem się do komórki, która zawiera ocenę należy wykonać jeszcze jeden myk. A mianowicie należy skopiować wygenerowane oceny i wkleić je lecz w opcjach wklejenia należy wybrać <strong>Wartości</strong>.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image13.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image13.png" alt="image13" width="700" height="421" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Wybranie <strong>Wartości</strong> jako opcji wklejania spowoduje, że zostanie wklejone tylko to co znajduje się w komórce, zostanie pominięta funkcja, która te dane wygenerowała.</p>
<p style="text-align: left;">Mamy oceny to przystępujemy do zliczenia ilości poszczególnych ocen. W pierwszej kolejności wyliczymy oceny poszczególnych uczniów. By wykonać to zadanie należy posłużyć się jeszcze nie znaną nam funkcją <strong>LICZ.JEŻELI</strong>. Funkcja ta zlicza komórki w zakresie, które spełniają określone pojedyncze kryterium. Przykładowo można policzyć wszystkie komórki o wartościach zaczynających się od tej samej litery lub zawierające liczbę większą albo mniejszą od podanej. W naszym przypadku musimy zliczyć ilość wystąpienia danej oceny.</p>
<p style="text-align: left;">Składnia funkcji jest następująca: <strong>LICZ.JEŻELI(zakres; kryteria)</strong></p>
<ul style="text-align: left;">
<li style="list-style-type: none;">
<ul>
<li style="list-style-type: none;">
<ul>
<li><strong>zakres</strong> - określa jedną lub więcej komórek, które mają zostać zliczone,</li>
<li><strong>kryteria</strong> - liczba, wyrażenie, odwołanie do komórki lub ciąg tekstowego określający, które komórki będą zliczane.</li>
</ul>
</li>
</ul>
</li>
</ul>
<p style="text-align: left;">Poniżej kilka przykładów użycia funkcji <strong>LICZ.JEŻELI</strong></p>
<p style="margin-left: 35.4pt; text-align: left;"><strong>=LICZ.JEŻELI(Zakres:1)</strong> - zwraca liczbę komórek zawierających wartość 1,</p>
<p style="margin-left: 35.4pt; text-align: left;"><strong>=LICZ.JEŻELI(Zakres:"<0")</strong> - zwraca liczbę komórek zawierających wartości ujemne,</p>
<p style="margin-left: 35.4pt; text-align: left;"><strong>=LICZ.JEŻELI(Zakres: "<>0")</strong> - zlicza liczbę komórek różnych od zera,</p>
<p style="margin-left: 35.4pt; text-align: left;"><strong>=LICZ.JEŻELI(Zakres:"*") </strong>-zlicza liczbę komórek zawierających tekst,</p>
<p style="margin-left: 35.4pt; text-align: left;"><strong>=LICZ.JEŻELI(Zakres:">"&C2</strong>) - zwraca liczbę komórek o wartości większej niż wartość komórki C2,</p>
<p style="margin-left: 35.4pt; text-align: left;"><strong>=LICZ.JEŻELI(Zakres:C2) </strong>- zwraca liczbę komórek o takiej wartości jaka znajduje się w komórce C2,</p>
<p style="margin-left: 35.4pt; text-align: left;"><strong>=LICZ. JEŻELI(Zakres; "test")</strong> - zwraca liczbę komórek zawierających pojedyncze słowo test, bez uwzględnia wielkości liter,</p>
<p style="margin-left: 35.4pt; text-align: left;"><strong>=LICZ .JEŻELI(Zakres: "*test*")</strong>- zwraca liczbę komórek zawierających słowo test, słowo może znajdować się gdziekolwiek,</p>
<p style="margin-left: 35.4pt; text-align: left;"><strong>=LICZ. JEŻELI(Zakres: "Z*")</strong> - zwraca liczbę komórek zaczynających się na literę Z (nie uwzględnia wielkości liter),</p>
<p style="margin-left: 35.4pt; text-align: left;"><strong>=LICZ .JEŻELI(Zakres: PRAWDA)</strong>- zwraca liczbę komórek zawierających wartość logiczną PRAWDA,</p>
<p style="margin-left: 35.4pt; text-align: left;"><strong>=LICZ.JEŻELI(Zakres:"????")</strong> - zwraca liczbę komórek zawierających dokładnie cztery litery,</p>
<p style="margin-left: 35.4pt; text-align: left;"><strong>=LICZ.JEŻELI(Zakres:"<"&ŚREDNIA (Zakres))</strong> - zwraca liczbę komórek o wartości mniejsza niż średnia,</p>
<p style="margin-left: 35.4pt; text-align: left;"><strong>=LICZ.JEŻELI(Zakres:DZIŚ())</strong> - zwraca liczbę komórek zawierających aktualną datę,</p>
<p style="margin-left: 35.4pt; text-align: left;"><strong>=LICZ.JEŻELI(Zakres:5)+LICZ.JEŻELI(Zakres:-5)</strong> - zwraca liczbę komórek zawierających liczby 5 i -5,</p>
<p style="margin-left: 35.4pt; text-align: left;"><strong>=LICZ.JEŻELI(Zakres: ">9")</strong> - zlicza liczbę komórek zawierających wartości większe niż 9.</p>
<p style="text-align: left;">Aby więc aby wyliczyć ilość wystąpienia oceny 6 u pierwszego ucznia należy zbudować formułę <strong>LICZ.JEŻELI(E3:S3;6)</strong></p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image14.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image14.png" alt="image14" width="700" height="168" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Po zatwierdzeniu okaże się że uczeń ten ma wystawione dwie 6.</p>
<p style="text-align: left;">Aby wyliczyć ilość 6 dla pozostałych uczniów wystarczy formułę przekopiować (magiczny kwadracik) do pozostałych komórek.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image15.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image15.png" alt="image15" width="700" height="270" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Aby wyliczyć ilość 5 należy powyższą formułę zmodyfikować w polu kryterium tzn. zamiast 6 wpisać 5 - <strong>LICZ.JEŻELI(E3:S3;5)</strong></p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image16.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image16.png" alt="image16" width="700" height="232" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Komórkę kopiujemy do pozostałych i dalej analogicznie przechodzimy do wyliczenia 4,3,2 i 1. Oceny mamy wyliczone.</p>
<p style="text-align: left;">Wyliczenie wszystkich ocen wymaga od nas wprowadzenia 6 różnych formuł (dla każdej z zliczanej oceny osobno),czy można te same zadanie wykonać za pomocą tylko jednej formuły? Można. Należy tylko zastosować <strong>adresację bezwzględną</strong>, wyliczenie wszystkich ocen załatwi nam taka o to formułka: <strong>LICZ.JEŻELI($E3:$S3;T$2)</strong></p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image17.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image17.png" alt="image17" width="700" height="232" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Już tłumaczę zasadę jej działania. W formule tej zakres nam się nie zmienił, ciągle chcemy wyliczyć ilość poszczególnych ocen (oceny pierwszego ucznia) więc zakresem będzie zbiór tych ocen. Zakres ten musimy zablokować ponieważ formuła będzie kopiowana w prawo, nie zablokowanie zakresu spowoduje jego przesuwanie podczas operacji kopiowania. Blokujemy litery ponieważ będziemy kopiowanie wykonywali w prawą stronę. W kryterium wpisaliśmy adres komórki T2, czemu akurat ta komórka? Odpowiedź jest prosta, ponieważ w tej komórce wpisana jest wartość 6 a nam zależy na wyliczeniu ilości wystąpienia oceny 6.Dodatkowo w adresie komórki T2 została zablokowana 2. Dwójka ta musi być „zdolarowana” ponieważ kopiowanie również będzie realizowane w dół tak aby każdy uczeń miał wyliczoną ilość każdej oceny. Reasumując, kopiując w dół <strong>zakres</strong> podąża za nami natomiast wyliczana ocena pozostaje stała, natomiast kopiując w prawo mamy sytuacje odwrotną, <strong>zakres</strong> nie ulega zmianie a wartość liczonej oceny podąża za kopiowaniem.</p>
<p style="text-align: left;">Wyliczenie średniej nie powinno Ci czytelniku nastręczyć problemów, gdyż w pierwszym przypadku wyliczamy średnią z wszystkich ocen oprócz religii i języka niemieckiego. Przedmioty te są umieszczone na skraju więc utworzony zakres będzie zakresem ciągłym.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image18.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image18.png" alt="image18" width="700" height="193" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Po wyliczeniu tej średniej najprawdopodobniej pojawi ci się ostrzeżenie (trójkąt w lewym górnym rogu komórki), informujące o tym że <strong>Formuła pomija przylegające komórki</strong>. Jest to kolejne z zabezpieczeń Excela, które z założenia ma chronić nas przed popełnieniem błędu. My zaś wiemy, że błąd ten jest bezzasadny więc ostrzeżenie możemy zignorować.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image19.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image19.png" alt="image19" width="304" height="280" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">W drugim zaś przypadku wyliczamy średnią z wszystkich ocen bez żadnych wykluczeń.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image20.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image20.png" alt="image20" width="700" height="185" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Mamy wykonaną jedną część arkusza a więc pora by wykonać resztę.</p>
<p style="text-align: left;">Kolejnym elementem, który wyliczymy będzie ilość poszczególnych ocen z zachowania. I tu również użyjemy funkcji: <strong>LICZ.JEŻELI</strong> Aby wyliczyć ilość ocen wzorowych możemy skorzystać z następującej formuły: <strong>LICZ.JEŻELI(D3:D11;"wzorowe")</strong></p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image21.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image21.png" alt="image21" width="341" height="485" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Pierwsza zmiana, która rzuca się w oczy to użycie cudzysłowu. Cudzysłów ten jest niezbędny gdy zliczamy wartości, które nie są liczbami. By wyliczyć pozostałe oceny z zachowania możemy powyższą formułę powtórzyć dla każdej oceny z zachowania osobno. Możemy też użyć innej formuły (oczywiście by sobie ułatwić) a mianowicie: <strong>LICZ.JEŻELI(D$3:D$11;B12)</strong></p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image22.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image22.png" alt="image22" width="341" height="484" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Użycie formuły spowoduje, że nie będziemy musieli jej korygować przy każdej z ocen z zachowania, wystarczy ją skopiować do pozostałych komórek. Mamy sytuację podobną do tej opisywanej przy wyliczeniu ocen poszczególnych uczniów. Wykorzystaliśmy komórki w których potrzebne nam wartości zostały już wpisane oraz <strong>adresację bezwzględną</strong>. Zablokowaliśmy zakres w którym znajdują się oceny z zachowania, zakres został zablokowany gdyż kopiowanie będzie realizowane w dół.</p>
<p style="text-align: left;">Przechodzimy do wyliczenia ilości poszczególnych ocen lecz tym razem w rozbiciu na przedmioty. I znów do tego zadania posłuży nam funkcja <strong>LICZ.JEŻELI</strong>. Zakresem w tym przypadku będą wszystkie oceny z danego przedmiotu zaś kryterium będzie stanowiła ocena. Do wyliczenia ilości ocen 6 możemy posłużyć się formułą: <strong>LICZ.JEŻELI(E3:E11;6) </strong>i następnie skopiować ją w prawo.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image23.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image23.png" alt="image23" width="700" height="352" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">W tym przypadku formuły liczące pozostałe oceny musimy albo utworzyć każdą z osobna lub skopiować pierwszą (z uwzględnieniem adresacji bezwzględnej) i utworzone w ten sposób formuły zmodyfikować (zamienić 6 na inne oceny). By trochę sobie uprościć w formule powyższej zablokujemy cyfry w zakresie tak by nie ulegał on przesunięciu podczas kopiowania w dół. Formuła przybierze postać: <strong>LICZ.JEŻELI(E$3:E$11;6)</strong></p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image24.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image24.png" alt="image24" width="700" height="405" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Teraz musimy zmodyfikować poszczególne formuły uwzględniając liczone oceny.</p>
<p style="text-align: left;">Czy można te wyliczenie ocen zrobić jeszcze prościej? Oczywiście można. Bardzo często przygotowując arkusz z np. jakimś opracowaniem statystycznym tworzę sobie szereg pomocniczych komórek, które pozwalają mi uprościć prowadzone obliczenia. I tak samo można zrobić w tym przypadku. Wystarczy, że wykorzystamy do tego celu jakieś nie używane komórki. W naszym zadaniu musimy utworzyć komórki w których znajdą się wartości wpisane od 6 do 1 (jeśli chcemy by wartości były niewidoczne możemy zmienić kolor tekstu na kolor biały w ten sposób zostanie „ukryta” zawartość komórek).</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image25.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image25.png" alt="image25" width="700" height="263" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Teraz by wyliczyć całość ocen należy skorzystać z formuły: <strong>LICZ.JEŻELI(E$3:E$11;$AD8)</strong> (zakres blokowanie ze względu na kopiowanie w dół, kryterium blokowane ze względu na kopiowanie w prawo). Zrobione.</p>
<p style="text-align: left;">Średnia ocen zostanie obliczona z wykorzystaniem formuły: <strong>ŚREDNIA(E3:E11)</strong></p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image26.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image26.png" alt="image26" width="700" height="460" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Ostatnią czynności, która pozostaje nam do wykonani jest zsumowanie ilości wyliczonych ocen. Do tego wykorzystamy funkcję: <strong>SUMA</strong></p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image27.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image27.png" alt="image27" width="700" height="293" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Tak więc arkusz mamy wykonany.</p>
<p style="text-align: left;">Rozwijając i poszerzając temat o jeszcze jedno zagadnienie a mianowicie o <strong>nazywanie komórek</strong> lub <strong>obszarów komórek</strong> dojdziemy do wniosku, że arkusz ten można by było wykonać (wspomniałem kiedyś, że jeśli chodzi o Excela to jedno właściwe rozwiązanie nie istnieje – dlatego właśnie Excel jest tak uniwersalny) właśnie w oparciu o <strong>nazwy</strong>.</p>
<p style="text-align: left;">Nazwy wymyślono po to by użytkownikowi łatwiej było budować nowe formuły ale również by lepiej orientować się już w tych utworzonych. Łatwiej jest nam po prostu zorientować się co jest liczone i w jaki sposób. Poprzez zastosowanie nazw gdy formuła ma postać: <strong>=ŚREDNIA(oceny_Baszta)</strong> od razu wiemy co wyliczamy, niż gdyby było zapisane <strong>=ŚREDNIA(E3:S3)</strong>.</p>
<p style="text-align: left;">Nazwy również mogą nam posłużyć do odwołań do innych komórek np. poprzez formułę: <strong>=Baszta Wos</strong> zbudujemy adres odwołujący się do oceny ucznia Baszty z WOS-u.</p>
<p style="text-align: left;">Zanim zaczniemy tworzyć <strong>nazwy</strong> parę słów o regułach jakie rządzą przy ich nadawaniu:</p>
<ul style="margin-top: 0cm; text-align: left;">
<li style="list-style-type: none;">
<ul>
<li><strong>Prawidłowe znaki</strong> - jako pierwszy znak nie może zostać użyta cyfra czyli pierwszy znak nazwy musi być literą, znakiem podkreślenia (<strong>_</strong>) lub ukośnikiem odwrotnym (<strong>\</strong>). Pozostałe znaki w nazwie mogą być literami, cyframi, kropkami lub znakami podkreślenia. Niedozwolone jest zdefiniowanie następujących nazw: „K”, „k”, „W” ani „w”, ponieważ znaki te używane są jako skróty.</li>
<li><strong>Odwołania do komórek — zabronione</strong> - nazwy nie mogą być pokrywać się z adresami komórek, na przykład A$10 lub A1B1.</li>
<li><strong>Spacje są niedozwolone</strong> – niedozwolone jest użycie znaku <strong>spacji</strong> w nazwach. Aby oddzielić od siebie wyrazy można użyć do tego celu znak podkreślenia (<strong>_</strong>) bądź kropkę (<strong>.</strong>), na przykład: <strong>wypłata_pracowników</strong> lub <strong>podatek.VAT</strong>.</li>
<li><strong>Długość nazwy </strong>– długość nazwy jest ograniczona do 255 znaków.</li>
<li><strong>Uwzględnianie wielkości liter</strong> -nazwy mogą zawierać wielkie i małe litery. Wielkość liter przez program Excel nie jest rozróżniana. Utworzona np. nazwa <strong>Kupno</strong> jest tożsama z np. nazwą <strong>KUPNO</strong>.</li>
</ul>
</li>
</ul>
<p style="text-align: left;">Tak więc przykład. W pierwszej kolejności utwórzmy nazwy, które będą odwoływać się do ocen z przedmiotów. W tym celu zaznaczamy wszystkie oceny wraz z nazwą przedmiotu. Utworzenie nazw wykonamy po przejściu na zakładkę <strong>Formuły</strong> i kliknięciu na <strong>Utwórz z zaznaczenia</strong>.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image28.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image28.png" alt="image28" width="700" height="423" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Po wybraniu opcji w nowo otwartym oknie możemy ustalić skąd mają zostać pobrane dane celem utworzenia <strong>nazw</strong>. W naszym przypadku wybieramy <strong>Górny wiersz</strong></p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image29.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image29.png" alt="image29" width="301" height="185" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Po kliknięciu na <strong>OK</strong> zostanie utworzonych 15 nazw, które będą odwoływać się do ocen z danego przedmiotu.</p>
<p style="text-align: left;">Poprawność utworzenia nazw możemy sprawdzić poprzez kliknięcie na <strong>Menedżer nazw</strong>.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image30.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image30.png" alt="image30" width="696" height="647" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Po kliknięciu możemy stwierdzić: jakie <strong>nazwy</strong> zostały utworzone, <strong>wartość</strong>, <strong>odwołanie</strong> oraz <strong>zasięg</strong> stosowania nazw (ten arkusz czy np. cały skoroszyt).</p>
<p style="text-align: left;">Od tej pory wpisując <strong>nazwę</strong> w komórce możemy się do niej odwołać. Utworzone <strong>nazwy</strong> pojawią się wraz z propozycją funkcji.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image31.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image31.png" alt="image31" width="187" height="141" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Sprawdźmy czy odwołania działają i spróbujmy wyliczyć średnią z przedmiotu historia, następnie porównamy wartość wyliczonej średniej z wartością wyliczoną w sposób tradycyjny.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image32.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image32.png" alt="image32" width="700" height="418" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Jak widać na powyższym zrzucie wywołanie nazwy <strong>historia</strong> i połączeniu nazwy z funkcją <strong>ŚREDNIA</strong> powoduje wyliczenie średniej z przedmiotu historia. Nieważne jaki sposób wybierzemy wyliczona wartość będzie taka sama.</p>
<p style="text-align: left;">Odwoływać się do utworzonych nazw możemy tak samo jak do adresów komórek, tak więc formuła: <strong>ŚREDNIA(historia;WOS)</strong> wyliczy nam średnią z historii i WOS-u, natomiast formuła: <strong>ŚREDNIA(historia:matematyka)</strong> średnią z przedmiotów od historia do matematyka (tj. historia, WOS, j.angielski i matematyka).</p>
<p style="text-align: left;">Spróbujmy teraz zdefiniować nazwy, które będą odnosić się do ocen konkretnych uczniów (np. zdefiniowana nazwa od nazwiska ucznia Baszta będzie się odnosić to wszystkich ocen tego ucznia). Tu niestety już nie ma tak prosto jak to było w przypadku ocen z przedmiotów ponieważ zaznaczony obszar jest nieciągły i nie da się utworzyć nazw z zaznaczenia (nie wiem jak to jest w Office 2013 ale w 2010 nie ma takiej możliwości przy takim zaznaczeniu). Dlatego musimy te nazwy utworzyć dla każdego z ucznia osobno. Nazwę po zaznaczeniu ocen ucznia utworzymy poprzez kliknięcie na <strong>Definiuj nazwę</strong>.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image33.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image33.png" alt="image33" width="700" height="530" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Po zdefiniowaniu <strong>nazw</strong>, możemy je użyć w formułach.</p>
<p style="text-align: left;">Gdy chcemy odwołać się do wspomnianej wyżej oceny ucznia Baszty z przedmiotu WOS zamiast wpisywać niewiele nam mówiący adres: <strong>=H3</strong> możemy użyć odwołania <strong>=Baszta WOS</strong></p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image34.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image34.png" alt="image34" width="700" height="401" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Na koniec jeszcze należałoby by wspomnieć, że nazwy komórek możemy definiować w <strong>polu nazwy komórki</strong>, poprzez wpisanie jej nazwy.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image35.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image35.png" alt="image35" width="700" height="336" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">I to by było na tyle. Arkusz mamy utworzony a użyte narzędzia i funkcje programu Excel omówione. W następnym wpisie zajmiemy się funkcją <strong>JEŻELI</strong>.</p>
<p style="text-align: left;">I na koniec filmik obrazujący wszystkie czynności.</p>
<p style="text-align: center;">{mp4}Excel/arkuszocen/arkuszocen{/mp4}</p></div><div class="K2FeedImage"><img src="http://slow7.pl/media/k2/items/cache/e2bf3b11df0b872112757f1c2fee6e32_S.jpg" alt="Excel w zadaniach. Sortowanie, losowanie, zliczanie oraz nazywanie." /></div><div class="K2FeedIntroText"><p style="text-align: left;">W tym wpisie zajmiemy się funkcją: <strong>LICZ.JEŻELI </strong>oraz omówimy takie zagadnienia jak <strong>sortowanie</strong>, <strong>nazwy komórek</strong> oraz <strong>obszarów</strong>. Dodatkowo poćwiczymy użycie <strong>adresacji względnej</strong> i <strong>bezwzględnej</strong> i przypomnimy znane nam już funkcje jak również poznamy nowe. Wszystkie omawiane kwestie te nowe i te o których była już mowa (taka forma powtórzenia) standardowo będą opisywane na przykładzie konkretnego zadania czy też problemu do rozwiązania.</p>
</div><div class="K2FeedFullText">
<p style="text-align: left;"> </p>
<p style="text-align: left;">Dziś naszym zadaniem będzie utworzenie arkusza z ocenami dla poszczególnych uczniów, który będzie nam wyliczał poszczególne informacje. Tak więc utworzymy arkusz taki jak ten przedstawiony poniżej:</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image1.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image1.png" alt="image1" width="700" height="323" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;">Zadaniem utworzonego arkusza będzie:</p>
<ul style="text-align: left;">
<li style="list-style-type: none;">
<ul>
<li style="list-style-type: none;">
<ul>
<li>wyliczenie ilości poszczególnych ocen,</li>
<li>obliczenie średnich ocen uczniów oraz z poszczególnych przedmiotów,</li>
<li>wyliczenie ilości ocen z zachowania.</li>
</ul>
</li>
</ul>
</li>
</ul>
<p style="text-align: left;">OK więc zaczynamy. Standardowo arkusz z ćwiczeniem do ściągnięcia tu:<a href="http://slow7.pl/images/stories/office/excel_4/arkusz.xlsx">arkusz ćwiczenie</a></p>
<p style="text-align: left;">Pominę opisywanie formatowania, ponieważ formatowanie zostało opisane w wcześniejszych wpisach. Tworzenie arkusza od zera możesz obejrzeć w załączonym filmiku na końcu artykułu.</p>
<p style="text-align: left;">Pierwszą czynnością jaką wykonamy będzie wpisanie nazwisk i imion uczniów. Specjalnie dane te nie są wpisane w kolejności alfabetycznej gdyż by je ułożyć skorzystamy z funkcji <strong>sortowania</strong>.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image2.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image2.png" alt="image2" width="337" height="319" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Po zaznaczeniu interesujących nas danych (warto zaznaczyć z polem <strong>Nazwisko</strong> oraz <strong>Imię</strong> gdyż pola te zostaną użyte jako nagłówki) aby ułożyć nazwiska wraz z imionami w kolejności alfabetycznej należy kliknąć na karcie <strong>Narzędzia główne</strong> narzędzie <strong>Sortuj i filtruj</strong> a następnie z rozwijanej listy wybrać <strong>Sortowanie niestandardowe</strong>.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image3.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image3.png" alt="image3" width="700" height="248" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Po wybraniu <strong>Sortowania niestandardowego</strong> ukarze nam się okno opcji <strong>sortowania </strong>w którym będziemy mogli ustalić zasady przeprowadzenia procesu.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image4.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image4.png" alt="image4" width="607" height="275" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Naszym celem jest ułożenie nazwisk w kolejności od A do Z a w przypadku wystąpienia dwóch takich samych nazwisk brane ma być pod uwagę imię (i taka sytuacja wystąpi przy nazwisku Nowak).</p>
<p style="text-align: left;">Zaznaczenie uwzględnia wspomniane nagłówki, stąd na liście wyboru pojawia się opcja <strong>Nazwisko</strong> oraz <strong>Imię</strong>. Jeżeli chcemy skorzystać z nazw kolumn odznacz opcję: <strong>Moje dane mają nagłówki</strong>.</p>
<p style="text-align: left;">By osiągnąć nasz założony cel ułożenia wyrazów należy dodać dwa poziomy sortowania (kolejność według, której będzie przeprowadzane sortowanie). Jako pierwsze wybieramy sortowanie według nazwisk zaś jako drugie sortowanie według imion. Oczywiście w polu <strong>Kolejność</strong> wybieramy <strong>Od A do Z</strong>.</p>
<p style="text-align: left;">Po ustaleniu wszystkich opcji klikamy na <strong>OK</strong>. Następuje ułożenie wyrazów. Jak widać poniżej ułożenie te jest zgodne z naszymi oczekiwaniami.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image5.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image5.png" alt="image5" width="337" height="318" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Przy <strong>sortowaniu</strong> należy zwrócić uwagę na jedną bardzo ważną rzecz a mianowicie by <strong>sortować</strong> wszystkie obszary w których znajdują się dane. Oznacza to, że nie zaznaczenie właściwego obszaru będzie skutkować pomieszaniem danych. W naszym przykładzie poniżej na skutek nie zaznaczenia całości obszaru zostały pozamieniane imiona z nazwiskami.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image6.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image6.png" alt="image6" width="337" height="318" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Na szczęście przed tego typu błędem chroni nas stosowne ostrzeżenie.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image7.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image7.png" alt="image7" width="403" height="184" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Kolejnym naszym krokiem będzie uzupełnienie zachowania, tu wpisujemy fikcyjne dane.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image8.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image8.png" alt="image8" width="337" height="318" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Przyszedł czas by uzupełnić oceny. Można by było wpisać je ręcznie ale my pójdziemy na skróty i skorzystamy z pewnego ułatwienia a mianowicie wykorzystamy funkcję: <strong>LOS</strong> , która to zwraca losową liczbę rzeczywistą, liczba ta jest większa niż lub równa 0 i mniejsza od 1. Przy funkcji tej należy dopowiedzieć dwie kwestie: pierwsza to że w składni funkcji <strong>LOS</strong> nie występują argumenty a druga: to że nowa losowa liczba rzeczywista jest zwracana po każdym obliczeniu arkusza, oznacza to że każde odwołanie się do komórki w której jest użyta funkcja <strong>LOS</strong> powoduje wygenerowanie nowej wartości. By ręcznie wygenerować nowe wartości użyj klawisza F9.</p>
<p style="text-align: left;">W naszym przykładzie musimy wygenerować liczby z zakresu od 1 do 6 (bo takie mamy stopnie w szkole), wywołanie funkcji <strong>LOS</strong> spowoduje wygenerowanie liczb od 0 do 1, więc nasuwa się pytanie jak zmienić zakres generowanych liczb? Wystarczy, że skorzystamy z następującego wzoru:<strong>LOS()*(b-a)+a</strong> (gdzie <strong>a</strong> jest liczbą od której ma nastąpić generowanie a <strong>b</strong> granicą, lub prościej jest to zakres od <strong>a</strong> do <strong>b</strong>). A więc spróbujmy, nasze <strong>a=1</strong> natomiast <strong>b=6</strong>.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image9.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image9.png" alt="image9" width="321" height="301" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Jak widać powyżej udało nam się wygenerować liczby, których zakres mieści się pomiędzy 1 a 6 tylko że my potrzebujemy liczby całkowite. Aby uzyskać liczby całkowite należy do naszego wzoru dodać jeszcze jedną funkcję a mianowicie funkcję, która zaokrągli nam wygenerowane liczby rzeczywiste. Excel oferuje nam taką funkcję a nazywa się ona <strong>ZAOKR</strong>. Funkcja <strong>ZAOKR</strong> zaokrągla liczbę do określonej liczby cyfr. Składnia funkcji jest następująca: <strong>ZAOKR(liczba/komórka;liczba_cyfr)</strong></p>
<p style="text-align: left;">gdzie:</p>
<ul style="text-align: left;">
<li style="list-style-type: none;">
<ul>
<li style="list-style-type: none;">
<ul>
<li>liczba/komórka - wymagana liczba, którą należy zaokrąglić.</li>
<li>liczba_cyfr - wymagana liczba cyfr, do których liczba ma zostać zaokrąglona.</li>
</ul>
</li>
</ul>
</li>
</ul>
<p style="text-align: left;">Tak więc nasz wcześniejszy wzór przyjmie następującą postać: <strong>ZAOKR(LOS()*(b-a)+a;0)</strong> i dopiero użycie tej formuły złożonej z dwóch funkcji pozwoli nam na wygenerowanie liczb całkowitych od 1 do 6.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image10.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image10.png" alt="image10" width="321" height="301" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Trochę skomplikowane ale przynajmniej poznaliśmy dwie nowe funkcje. Czy jest prostszy sposób? Oczywiście jest można wykorzystać funkcję: <strong>LOS.ZAKR</strong>, która jest tak naprawdę złożeniem opisanej formuły. Funkcja ta zwraca losową liczbę całkowitą z wybranego zakresu liczb. Składnia funkcji jest następująca: <strong>LOS.ZAKR(dolna; górna)</strong></p>
<p style="text-align: left;">gdzie:</p>
<ul style="text-align: left;">
<li style="list-style-type: none;">
<ul>
<li style="list-style-type: none;">
<ul>
<li>dolna - najmniejsza liczba całkowita, jaką może zwrócić funkcja,</li>
<li>górna - największa liczba całkowita, jaką może zwrócić funkcja.</li>
</ul>
</li>
</ul>
</li>
</ul>
<p style="text-align: left;">Tak więc chcąc wygenerować liczby od 1 do 6 należy wydać polecenie: <strong>=LOS.ZAKR(1;6)</strong> Funkcja ta jest dosyć nowym pomysłem, istniała już wcześniej ale pod nazwą <strong>RANDBETWEEN</strong> i dodatkowo wymagała zainstalowania dodatku <strong>Analysis ToolPack</strong> (starsze wersje Excela). Tak więc jakby z jakiegoś powodu funkcja ta nie była dostępna sprawdź czy ów dodatek jest zainstalowany. W przypadku Excela 2003 - z menu <strong><span style="font-family: 'Calibri','sans-serif';">Narzędzia</span></strong> wybieramy pozycję <strong><span style="font-family: 'Calibri','sans-serif';">Dodatki</span></strong>, a w oknie dialogowym zaznaczamy opcję <strong><span style="font-family: 'Calibri','sans-serif';">Analysis ToolPack</span></strong> i klikamy <strong><span style="font-family: 'Calibri','sans-serif';">OK</span></strong>. Jeżeli zaś chodzi o nowsze wersje z karty <strong>Plik</strong> wybieramy <strong>Opcje</strong> następnie z opcji dostępnych po lewej stronie wybieramy <strong>Dodatki</strong> i u dołu ekranu w polu <strong>Zarządzaj</strong> wybieramy <strong>Dodatki programu Excel</strong> i klikamy <strong>Przejdź</strong> W nowo otwartym oknie wybieramy interesujące nas dodatki w tym przypadku <strong>Analysis ToolPack</strong>.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image11.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image11.png" alt="image11" width="700" height="505" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">To jak już wiemy jak utworzyć oceny to wykonajmy to.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image12.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image12.png" alt="image12" width="700" height="279" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Mamy wypełnione oceny.</p>
<p style="text-align: left;">Aby nie następowało generowanie nowych wartości za każdym odwołaniem się do komórki, która zawiera ocenę należy wykonać jeszcze jeden myk. A mianowicie należy skopiować wygenerowane oceny i wkleić je lecz w opcjach wklejenia należy wybrać <strong>Wartości</strong>.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image13.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image13.png" alt="image13" width="700" height="421" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Wybranie <strong>Wartości</strong> jako opcji wklejania spowoduje, że zostanie wklejone tylko to co znajduje się w komórce, zostanie pominięta funkcja, która te dane wygenerowała.</p>
<p style="text-align: left;">Mamy oceny to przystępujemy do zliczenia ilości poszczególnych ocen. W pierwszej kolejności wyliczymy oceny poszczególnych uczniów. By wykonać to zadanie należy posłużyć się jeszcze nie znaną nam funkcją <strong>LICZ.JEŻELI</strong>. Funkcja ta zlicza komórki w zakresie, które spełniają określone pojedyncze kryterium. Przykładowo można policzyć wszystkie komórki o wartościach zaczynających się od tej samej litery lub zawierające liczbę większą albo mniejszą od podanej. W naszym przypadku musimy zliczyć ilość wystąpienia danej oceny.</p>
<p style="text-align: left;">Składnia funkcji jest następująca: <strong>LICZ.JEŻELI(zakres; kryteria)</strong></p>
<ul style="text-align: left;">
<li style="list-style-type: none;">
<ul>
<li style="list-style-type: none;">
<ul>
<li><strong>zakres</strong> - określa jedną lub więcej komórek, które mają zostać zliczone,</li>
<li><strong>kryteria</strong> - liczba, wyrażenie, odwołanie do komórki lub ciąg tekstowego określający, które komórki będą zliczane.</li>
</ul>
</li>
</ul>
</li>
</ul>
<p style="text-align: left;">Poniżej kilka przykładów użycia funkcji <strong>LICZ.JEŻELI</strong></p>
<p style="margin-left: 35.4pt; text-align: left;"><strong>=LICZ.JEŻELI(Zakres:1)</strong> - zwraca liczbę komórek zawierających wartość 1,</p>
<p style="margin-left: 35.4pt; text-align: left;"><strong>=LICZ.JEŻELI(Zakres:"<0")</strong> - zwraca liczbę komórek zawierających wartości ujemne,</p>
<p style="margin-left: 35.4pt; text-align: left;"><strong>=LICZ.JEŻELI(Zakres: "<>0")</strong> - zlicza liczbę komórek różnych od zera,</p>
<p style="margin-left: 35.4pt; text-align: left;"><strong>=LICZ.JEŻELI(Zakres:"*") </strong>-zlicza liczbę komórek zawierających tekst,</p>
<p style="margin-left: 35.4pt; text-align: left;"><strong>=LICZ.JEŻELI(Zakres:">"&C2</strong>) - zwraca liczbę komórek o wartości większej niż wartość komórki C2,</p>
<p style="margin-left: 35.4pt; text-align: left;"><strong>=LICZ.JEŻELI(Zakres:C2) </strong>- zwraca liczbę komórek o takiej wartości jaka znajduje się w komórce C2,</p>
<p style="margin-left: 35.4pt; text-align: left;"><strong>=LICZ. JEŻELI(Zakres; "test")</strong> - zwraca liczbę komórek zawierających pojedyncze słowo test, bez uwzględnia wielkości liter,</p>
<p style="margin-left: 35.4pt; text-align: left;"><strong>=LICZ .JEŻELI(Zakres: "*test*")</strong>- zwraca liczbę komórek zawierających słowo test, słowo może znajdować się gdziekolwiek,</p>
<p style="margin-left: 35.4pt; text-align: left;"><strong>=LICZ. JEŻELI(Zakres: "Z*")</strong> - zwraca liczbę komórek zaczynających się na literę Z (nie uwzględnia wielkości liter),</p>
<p style="margin-left: 35.4pt; text-align: left;"><strong>=LICZ .JEŻELI(Zakres: PRAWDA)</strong>- zwraca liczbę komórek zawierających wartość logiczną PRAWDA,</p>
<p style="margin-left: 35.4pt; text-align: left;"><strong>=LICZ.JEŻELI(Zakres:"????")</strong> - zwraca liczbę komórek zawierających dokładnie cztery litery,</p>
<p style="margin-left: 35.4pt; text-align: left;"><strong>=LICZ.JEŻELI(Zakres:"<"&ŚREDNIA (Zakres))</strong> - zwraca liczbę komórek o wartości mniejsza niż średnia,</p>
<p style="margin-left: 35.4pt; text-align: left;"><strong>=LICZ.JEŻELI(Zakres:DZIŚ())</strong> - zwraca liczbę komórek zawierających aktualną datę,</p>
<p style="margin-left: 35.4pt; text-align: left;"><strong>=LICZ.JEŻELI(Zakres:5)+LICZ.JEŻELI(Zakres:-5)</strong> - zwraca liczbę komórek zawierających liczby 5 i -5,</p>
<p style="margin-left: 35.4pt; text-align: left;"><strong>=LICZ.JEŻELI(Zakres: ">9")</strong> - zlicza liczbę komórek zawierających wartości większe niż 9.</p>
<p style="text-align: left;">Aby więc aby wyliczyć ilość wystąpienia oceny 6 u pierwszego ucznia należy zbudować formułę <strong>LICZ.JEŻELI(E3:S3;6)</strong></p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image14.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image14.png" alt="image14" width="700" height="168" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Po zatwierdzeniu okaże się że uczeń ten ma wystawione dwie 6.</p>
<p style="text-align: left;">Aby wyliczyć ilość 6 dla pozostałych uczniów wystarczy formułę przekopiować (magiczny kwadracik) do pozostałych komórek.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image15.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image15.png" alt="image15" width="700" height="270" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Aby wyliczyć ilość 5 należy powyższą formułę zmodyfikować w polu kryterium tzn. zamiast 6 wpisać 5 - <strong>LICZ.JEŻELI(E3:S3;5)</strong></p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image16.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image16.png" alt="image16" width="700" height="232" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Komórkę kopiujemy do pozostałych i dalej analogicznie przechodzimy do wyliczenia 4,3,2 i 1. Oceny mamy wyliczone.</p>
<p style="text-align: left;">Wyliczenie wszystkich ocen wymaga od nas wprowadzenia 6 różnych formuł (dla każdej z zliczanej oceny osobno),czy można te same zadanie wykonać za pomocą tylko jednej formuły? Można. Należy tylko zastosować <strong>adresację bezwzględną</strong>, wyliczenie wszystkich ocen załatwi nam taka o to formułka: <strong>LICZ.JEŻELI($E3:$S3;T$2)</strong></p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image17.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image17.png" alt="image17" width="700" height="232" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Już tłumaczę zasadę jej działania. W formule tej zakres nam się nie zmienił, ciągle chcemy wyliczyć ilość poszczególnych ocen (oceny pierwszego ucznia) więc zakresem będzie zbiór tych ocen. Zakres ten musimy zablokować ponieważ formuła będzie kopiowana w prawo, nie zablokowanie zakresu spowoduje jego przesuwanie podczas operacji kopiowania. Blokujemy litery ponieważ będziemy kopiowanie wykonywali w prawą stronę. W kryterium wpisaliśmy adres komórki T2, czemu akurat ta komórka? Odpowiedź jest prosta, ponieważ w tej komórce wpisana jest wartość 6 a nam zależy na wyliczeniu ilości wystąpienia oceny 6.Dodatkowo w adresie komórki T2 została zablokowana 2. Dwójka ta musi być „zdolarowana” ponieważ kopiowanie również będzie realizowane w dół tak aby każdy uczeń miał wyliczoną ilość każdej oceny. Reasumując, kopiując w dół <strong>zakres</strong> podąża za nami natomiast wyliczana ocena pozostaje stała, natomiast kopiując w prawo mamy sytuacje odwrotną, <strong>zakres</strong> nie ulega zmianie a wartość liczonej oceny podąża za kopiowaniem.</p>
<p style="text-align: left;">Wyliczenie średniej nie powinno Ci czytelniku nastręczyć problemów, gdyż w pierwszym przypadku wyliczamy średnią z wszystkich ocen oprócz religii i języka niemieckiego. Przedmioty te są umieszczone na skraju więc utworzony zakres będzie zakresem ciągłym.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image18.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image18.png" alt="image18" width="700" height="193" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Po wyliczeniu tej średniej najprawdopodobniej pojawi ci się ostrzeżenie (trójkąt w lewym górnym rogu komórki), informujące o tym że <strong>Formuła pomija przylegające komórki</strong>. Jest to kolejne z zabezpieczeń Excela, które z założenia ma chronić nas przed popełnieniem błędu. My zaś wiemy, że błąd ten jest bezzasadny więc ostrzeżenie możemy zignorować.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image19.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image19.png" alt="image19" width="304" height="280" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">W drugim zaś przypadku wyliczamy średnią z wszystkich ocen bez żadnych wykluczeń.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image20.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image20.png" alt="image20" width="700" height="185" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Mamy wykonaną jedną część arkusza a więc pora by wykonać resztę.</p>
<p style="text-align: left;">Kolejnym elementem, który wyliczymy będzie ilość poszczególnych ocen z zachowania. I tu również użyjemy funkcji: <strong>LICZ.JEŻELI</strong> Aby wyliczyć ilość ocen wzorowych możemy skorzystać z następującej formuły: <strong>LICZ.JEŻELI(D3:D11;"wzorowe")</strong></p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image21.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image21.png" alt="image21" width="341" height="485" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Pierwsza zmiana, która rzuca się w oczy to użycie cudzysłowu. Cudzysłów ten jest niezbędny gdy zliczamy wartości, które nie są liczbami. By wyliczyć pozostałe oceny z zachowania możemy powyższą formułę powtórzyć dla każdej oceny z zachowania osobno. Możemy też użyć innej formuły (oczywiście by sobie ułatwić) a mianowicie: <strong>LICZ.JEŻELI(D$3:D$11;B12)</strong></p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image22.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image22.png" alt="image22" width="341" height="484" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Użycie formuły spowoduje, że nie będziemy musieli jej korygować przy każdej z ocen z zachowania, wystarczy ją skopiować do pozostałych komórek. Mamy sytuację podobną do tej opisywanej przy wyliczeniu ocen poszczególnych uczniów. Wykorzystaliśmy komórki w których potrzebne nam wartości zostały już wpisane oraz <strong>adresację bezwzględną</strong>. Zablokowaliśmy zakres w którym znajdują się oceny z zachowania, zakres został zablokowany gdyż kopiowanie będzie realizowane w dół.</p>
<p style="text-align: left;">Przechodzimy do wyliczenia ilości poszczególnych ocen lecz tym razem w rozbiciu na przedmioty. I znów do tego zadania posłuży nam funkcja <strong>LICZ.JEŻELI</strong>. Zakresem w tym przypadku będą wszystkie oceny z danego przedmiotu zaś kryterium będzie stanowiła ocena. Do wyliczenia ilości ocen 6 możemy posłużyć się formułą: <strong>LICZ.JEŻELI(E3:E11;6) </strong>i następnie skopiować ją w prawo.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image23.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image23.png" alt="image23" width="700" height="352" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">W tym przypadku formuły liczące pozostałe oceny musimy albo utworzyć każdą z osobna lub skopiować pierwszą (z uwzględnieniem adresacji bezwzględnej) i utworzone w ten sposób formuły zmodyfikować (zamienić 6 na inne oceny). By trochę sobie uprościć w formule powyższej zablokujemy cyfry w zakresie tak by nie ulegał on przesunięciu podczas kopiowania w dół. Formuła przybierze postać: <strong>LICZ.JEŻELI(E$3:E$11;6)</strong></p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image24.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image24.png" alt="image24" width="700" height="405" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Teraz musimy zmodyfikować poszczególne formuły uwzględniając liczone oceny.</p>
<p style="text-align: left;">Czy można te wyliczenie ocen zrobić jeszcze prościej? Oczywiście można. Bardzo często przygotowując arkusz z np. jakimś opracowaniem statystycznym tworzę sobie szereg pomocniczych komórek, które pozwalają mi uprościć prowadzone obliczenia. I tak samo można zrobić w tym przypadku. Wystarczy, że wykorzystamy do tego celu jakieś nie używane komórki. W naszym zadaniu musimy utworzyć komórki w których znajdą się wartości wpisane od 6 do 1 (jeśli chcemy by wartości były niewidoczne możemy zmienić kolor tekstu na kolor biały w ten sposób zostanie „ukryta” zawartość komórek).</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image25.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image25.png" alt="image25" width="700" height="263" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Teraz by wyliczyć całość ocen należy skorzystać z formuły: <strong>LICZ.JEŻELI(E$3:E$11;$AD8)</strong> (zakres blokowanie ze względu na kopiowanie w dół, kryterium blokowane ze względu na kopiowanie w prawo). Zrobione.</p>
<p style="text-align: left;">Średnia ocen zostanie obliczona z wykorzystaniem formuły: <strong>ŚREDNIA(E3:E11)</strong></p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image26.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image26.png" alt="image26" width="700" height="460" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Ostatnią czynności, która pozostaje nam do wykonani jest zsumowanie ilości wyliczonych ocen. Do tego wykorzystamy funkcję: <strong>SUMA</strong></p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image27.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image27.png" alt="image27" width="700" height="293" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Tak więc arkusz mamy wykonany.</p>
<p style="text-align: left;">Rozwijając i poszerzając temat o jeszcze jedno zagadnienie a mianowicie o <strong>nazywanie komórek</strong> lub <strong>obszarów komórek</strong> dojdziemy do wniosku, że arkusz ten można by było wykonać (wspomniałem kiedyś, że jeśli chodzi o Excela to jedno właściwe rozwiązanie nie istnieje – dlatego właśnie Excel jest tak uniwersalny) właśnie w oparciu o <strong>nazwy</strong>.</p>
<p style="text-align: left;">Nazwy wymyślono po to by użytkownikowi łatwiej było budować nowe formuły ale również by lepiej orientować się już w tych utworzonych. Łatwiej jest nam po prostu zorientować się co jest liczone i w jaki sposób. Poprzez zastosowanie nazw gdy formuła ma postać: <strong>=ŚREDNIA(oceny_Baszta)</strong> od razu wiemy co wyliczamy, niż gdyby było zapisane <strong>=ŚREDNIA(E3:S3)</strong>.</p>
<p style="text-align: left;">Nazwy również mogą nam posłużyć do odwołań do innych komórek np. poprzez formułę: <strong>=Baszta Wos</strong> zbudujemy adres odwołujący się do oceny ucznia Baszty z WOS-u.</p>
<p style="text-align: left;">Zanim zaczniemy tworzyć <strong>nazwy</strong> parę słów o regułach jakie rządzą przy ich nadawaniu:</p>
<ul style="margin-top: 0cm; text-align: left;">
<li style="list-style-type: none;">
<ul>
<li><strong>Prawidłowe znaki</strong> - jako pierwszy znak nie może zostać użyta cyfra czyli pierwszy znak nazwy musi być literą, znakiem podkreślenia (<strong>_</strong>) lub ukośnikiem odwrotnym (<strong>\</strong>). Pozostałe znaki w nazwie mogą być literami, cyframi, kropkami lub znakami podkreślenia. Niedozwolone jest zdefiniowanie następujących nazw: „K”, „k”, „W” ani „w”, ponieważ znaki te używane są jako skróty.</li>
<li><strong>Odwołania do komórek — zabronione</strong> - nazwy nie mogą być pokrywać się z adresami komórek, na przykład A$10 lub A1B1.</li>
<li><strong>Spacje są niedozwolone</strong> – niedozwolone jest użycie znaku <strong>spacji</strong> w nazwach. Aby oddzielić od siebie wyrazy można użyć do tego celu znak podkreślenia (<strong>_</strong>) bądź kropkę (<strong>.</strong>), na przykład: <strong>wypłata_pracowników</strong> lub <strong>podatek.VAT</strong>.</li>
<li><strong>Długość nazwy </strong>– długość nazwy jest ograniczona do 255 znaków.</li>
<li><strong>Uwzględnianie wielkości liter</strong> -nazwy mogą zawierać wielkie i małe litery. Wielkość liter przez program Excel nie jest rozróżniana. Utworzona np. nazwa <strong>Kupno</strong> jest tożsama z np. nazwą <strong>KUPNO</strong>.</li>
</ul>
</li>
</ul>
<p style="text-align: left;">Tak więc przykład. W pierwszej kolejności utwórzmy nazwy, które będą odwoływać się do ocen z przedmiotów. W tym celu zaznaczamy wszystkie oceny wraz z nazwą przedmiotu. Utworzenie nazw wykonamy po przejściu na zakładkę <strong>Formuły</strong> i kliknięciu na <strong>Utwórz z zaznaczenia</strong>.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image28.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image28.png" alt="image28" width="700" height="423" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Po wybraniu opcji w nowo otwartym oknie możemy ustalić skąd mają zostać pobrane dane celem utworzenia <strong>nazw</strong>. W naszym przypadku wybieramy <strong>Górny wiersz</strong></p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image29.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image29.png" alt="image29" width="301" height="185" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Po kliknięciu na <strong>OK</strong> zostanie utworzonych 15 nazw, które będą odwoływać się do ocen z danego przedmiotu.</p>
<p style="text-align: left;">Poprawność utworzenia nazw możemy sprawdzić poprzez kliknięcie na <strong>Menedżer nazw</strong>.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image30.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image30.png" alt="image30" width="696" height="647" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Po kliknięciu możemy stwierdzić: jakie <strong>nazwy</strong> zostały utworzone, <strong>wartość</strong>, <strong>odwołanie</strong> oraz <strong>zasięg</strong> stosowania nazw (ten arkusz czy np. cały skoroszyt).</p>
<p style="text-align: left;">Od tej pory wpisując <strong>nazwę</strong> w komórce możemy się do niej odwołać. Utworzone <strong>nazwy</strong> pojawią się wraz z propozycją funkcji.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image31.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image31.png" alt="image31" width="187" height="141" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Sprawdźmy czy odwołania działają i spróbujmy wyliczyć średnią z przedmiotu historia, następnie porównamy wartość wyliczonej średniej z wartością wyliczoną w sposób tradycyjny.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image32.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image32.png" alt="image32" width="700" height="418" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Jak widać na powyższym zrzucie wywołanie nazwy <strong>historia</strong> i połączeniu nazwy z funkcją <strong>ŚREDNIA</strong> powoduje wyliczenie średniej z przedmiotu historia. Nieważne jaki sposób wybierzemy wyliczona wartość będzie taka sama.</p>
<p style="text-align: left;">Odwoływać się do utworzonych nazw możemy tak samo jak do adresów komórek, tak więc formuła: <strong>ŚREDNIA(historia;WOS)</strong> wyliczy nam średnią z historii i WOS-u, natomiast formuła: <strong>ŚREDNIA(historia:matematyka)</strong> średnią z przedmiotów od historia do matematyka (tj. historia, WOS, j.angielski i matematyka).</p>
<p style="text-align: left;">Spróbujmy teraz zdefiniować nazwy, które będą odnosić się do ocen konkretnych uczniów (np. zdefiniowana nazwa od nazwiska ucznia Baszta będzie się odnosić to wszystkich ocen tego ucznia). Tu niestety już nie ma tak prosto jak to było w przypadku ocen z przedmiotów ponieważ zaznaczony obszar jest nieciągły i nie da się utworzyć nazw z zaznaczenia (nie wiem jak to jest w Office 2013 ale w 2010 nie ma takiej możliwości przy takim zaznaczeniu). Dlatego musimy te nazwy utworzyć dla każdego z ucznia osobno. Nazwę po zaznaczeniu ocen ucznia utworzymy poprzez kliknięcie na <strong>Definiuj nazwę</strong>.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image33.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image33.png" alt="image33" width="700" height="530" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Po zdefiniowaniu <strong>nazw</strong>, możemy je użyć w formułach.</p>
<p style="text-align: left;">Gdy chcemy odwołać się do wspomnianej wyżej oceny ucznia Baszty z przedmiotu WOS zamiast wpisywać niewiele nam mówiący adres: <strong>=H3</strong> możemy użyć odwołania <strong>=Baszta WOS</strong></p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image34.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image34.png" alt="image34" width="700" height="401" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">Na koniec jeszcze należałoby by wspomnieć, że nazwy komórek możemy definiować w <strong>polu nazwy komórki</strong>, poprzez wpisanie jej nazwy.</p>
<p style="text-align: left;"> <a href="http://slow7.pl/images/stories/office/excel_4/image35.png" target="_blank" class="jcepopup"><img src="http://slow7.pl/images/stories/office/excel_4/image35.png" alt="image35" width="700" height="336" style="display: block; margin-left: auto; margin-right: auto;" /></a></p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">I to by było na tyle. Arkusz mamy utworzony a użyte narzędzia i funkcje programu Excel omówione. W następnym wpisie zajmiemy się funkcją <strong>JEŻELI</strong>.</p>
<p style="text-align: left;">I na koniec filmik obrazujący wszystkie czynności.</p>
<p style="text-align: center;">{mp4}Excel/arkuszocen/arkuszocen{/mp4}</p></div>