03 — Nagranie pierwszego makra

Przyszła wreszcie pora na nagranie pierwszego makra. To będzie bardzo proste makro, bo chcemy przy jego okazji poznać całą procedurę nagrywania makr, a mniej skupiać się na tym co będzie robiło nasze makro.
Nagramy makro, gdzie w komórkę A2 wpiszemy funkcję DZIŚ i zatwierdzimy ją kombinacją klawiszy Ctrl + Enter. Ważne jest, żebyś przed włączeniem nagrywania makr
Wstęp do makr 03 - Nagranie pierwszego makra 01
miał już zaznaczoną komórkę A2.

Włączyć nagrywanie makr możesz również z paska informacyjnego.

Wstęp do makr 03 - Nagranie pierwszego makra 02

Powinieneś już być gotowy do nagrywania makr, więc kliknij w polecenie Zarejestruj makro. Otworzy Ci się okno rejestrowania makr, gdzie w pierwszej kolejności będziesz musiał wpisać nazwę makra.

Wstęp do makr 03 - Nagranie pierwszego makra 03

Excel wpisuje domyślne wartości, więc my nazwijmy sobie nasze makro Dzisiaj. Kolejnym punktem jest decyzja, czy chcesz przypisać do makra skrót klawiszowy czy nie. Domyślnie każdy skrót klawiszowy do makra musi zawierać klawisz Ctrl. Jeśli pole pozostawisz puste to do makra nie będzie prowadził żaden skrót klawiszowy. Istotne jest, że jeśli przypiszesz do makra skrót klawiszowy, który już istnieje w Excelu, to makro będzie miało priorytet, czyli jeśli go naciśniesz to uruchomisz makro (jeśli tylko otwarty jest plik z tym makrem), a nie polecenie Excela.

Do skrótów klawiszowych makr możesz dodać jeszcze klawisz Shift musisz tylko przytrzymać go w trakcie wpisywania znaku w pole skrótu klawiszowego.

Wstęp do makr 03 - Nagranie pierwszego makra 04

Teraz najtrudniejsza decyzja – z listy rozwijanej wybierasz, gdzie chcesz, żeby zostało zapisane Twoje makro. Istotny jest wybór pomiędzy Aktualnym/Tym skoroszytem, a Skoroszytem makr osobistych.

Jeśli zapiszesz makro w aktualnym pliku, to będziesz miał do niego dostęp za każdym razem, kiedy ten plik będzie otwarty, analogicznie wygląda to ze skoroszytem makr osobistych, tylko, że skoroszyt makr osobistych, po nagraniu pierwszego makra, będzie otwierał się automatycznie razem z każdym uruchomieniem Excela (będzie ukryty, ale będziesz miał dostęp do makr w nim się znajdujących).

Ponieważ skoroszyt makr osobistych jest zapisany w domyślnej lokalizacji i uruchamia się automatycznie, to jeśli zależy Ci, żeby konkretne makro było dostępne na komputerze, na którym nagrywasz makro, to lepiej zapisać je właśnie do skoroszytu makr osobistych, ale jeśli zależy Ci na przenoszeniu makra na inne komputery, to lepiej nagrać je w aktualnym pliku, który łatwiej będzie przenieść na inne komputery.

My nasze pierwsze makro nagramy do skoroszytu makr osobistych.

Wstęp do makr 03 - Nagranie pierwszego makra 05

Pozostaje jeszcze pole Opis, które pozostawimy puste, bo to tylko dodatkowa informacje/komentarz co makro robi, a to wiemy po samym tytule.
Teraz naciskasz przycisk OK i właśnie włączyło się rejestrowanie makr. Zmienił się kształt polecenia na karcie Deweloper

Wstęp do makr 03 - Nagranie pierwszego makra 06

oraz w pasku informacyjnym

Wstęp do makr 03 - Nagranie pierwszego makra 07

Uważaj, bo wszystko co zrobisz z i na arkuszu Excela zostanie zarejestrowane dlatego wykonaj tylko te kroki:

1) Wpisujesz funkcję =DZIŚ()
2) Zatwierdzasz ją kombinacją klawiszy Ctrl + Enter
3) Wyłącz rejestrowanie makra, albo przyciskiem z karty Deweloper albo z paska informacyjnego, jak Ci wygodniej.

Ostatni punkt jest ważny, bo jeśli o nim zapomnisz, to Excel dalej będzie rejestrował makro, a tym samym zapisywał nowy kod, który nie będzie Ci potrzebny i pewnie będzie powodował błędy.

Jeśli wyłączyłeś rejestrację makra, to możesz sprawdzić, czy działa do niego skrót klawiszowy. Zaznacz pojedynczą komórkę i naciśnij skrót klawiszowy Ctrl + Shift + D, a następnie zaznacz zakres kilku komórek i ponownie wykorzystaj skrót klawiszowy, który przypisałeś do makra. Powinna się wpisać funkcja DZIŚ we wszystkich zaznaczonych komórkach, jeśli postępowałeś dokładnie według punktów.

Wstęp do makr 03 - Nagranie pierwszego makra 08

W następnej części zobaczymy, gdzie dokładnie został zapisany kod i jak wygląda 😉

Pozdrawiam
Adam Kopeć
Miłośnik Excela

02 — Bezpieczeństwo makr i wstęp do odwołań względnych w makrach

Zanim jeszcze przejdziemy do nagrania naszego pierwszego makra, za pomocą rejestratora makr

Wstęp do makr 02 - Bezpieczeństwo makr i wstęp do odwołań względnych w makrach 01

potrzebujemy jeszcze powiedzieć o bezpieczeństwie makr i wspomnieć o odwołaniach względnych i bezwzględnych podczas rejestrowania makr.

Temat odwołań względnych i bezwzględnych powinien być Ci znany z tworzenia formuł, gdzie odpowiednie odwołania do komórek przenosiły się wraz z kopiowaniem formuł (względne) i inne, które się nie przenosiły (bezwzględne). Przy rejestrowaniu makr możesz włączyć używanie odwołań względnych.

Wstęp do makr 02 - Bezpieczeństwo makr i wstęp do odwołań względnych w makrach 02

Oznacza to, że jeśli zmienisz zaznaczoną komórkę z A1 na B5, to Excel to zarejestruje jako przesunięcie o jedną komórkę w prawo i cztery w dół.

Jeśli odwołania względne byłyby wyłączone (stan domyślny), to powyższa operacja zostałaby zarejestrowana jako zaznaczenie komórki B5 nie ważne, jaka komórka (komórki) była wcześniej zaznaczona.

Kiedy odwołania względne są włączone podświetlają się na kolor, który zmienia się wraz z wersją Excela.

Kolejnym istotnym ustawieniem jest bezpieczeństwo makr.

Wstęp do makr 02 - Bezpieczeństwo makr i wstęp do odwołań względnych w makrach 03

Jeśli klikniesz w to polecenie otworzy się okno, gdzie będziesz miał do wyboru jedną z czterech opcji:

Wstęp do makr 02 - Bezpieczeństwo makr i wstęp do odwołań względnych w makrach 04

Druga od góry jest opcją domyślną, ale u mnie jest zaznaczona ta na samym dole (niezalecana), ponieważ inne opcje wymuszają na Tobie włączanie obsługi makr za każdym razem, gdy otworzysz plik, w którym jest zapisane makro.

Wstęp do makr 02 - Bezpieczeństwo makr i wstęp do odwołań względnych w makrach 05

Jeśli zamkniesz powyższy komunikat x, to makra nie będą działały i będziesz musiał zamknąć i ponownie otworzyć plik, żeby tym razem włączyć makra (nacisnąć przycisk w komunikacie). Ta operacje, przy nastym otwieraniu pliku z makrem zaczyna być irytująca, dlatego ustawiłem opcję, że makra zawsze są włączone, mimo, że jest to niezalecane ze względu na „niebezpieczny kod”.

Osobiście jeszcze na taki kod nie natrafiłem. Niektórzy autorzy książek, z których uczyłem się VBA mówią, że też z takim kodem się nie spotkali. Największym niebezpieczeństwem z kodem VBA jest to, że wykonany kod nadpisze dane, bo makr nie da się cofnąć (Ctrl + Z), całkowicie czyszczą bufor opcji cofnij. Dlatego ważne jest, żebyś tworzył sobie kopie danych/pliku, w którym tworzysz makra.

Jeśli jednak uruchomisz makro, które zniszczy Twoje dane to masz jeszcze szansę zamknąć plik bez zapisywania. Jeśli jednak to się nie uda to będziesz miał nauczkę na przyszłość L.

 

Pozdrawiam
Adam Kopeć
Miłośnik Excela

01 — Odrobina teorii i włączanie karty Deweloper

Chcesz zacząć pracować z kodem VBA i makrami, żeby zautomatyzować pewne czynności w Excelu lub zrobić rzeczy, które inaczej nie byłyby możliwe w Excelu? Na początek przyda Ci się odrobina teorii.

W większości sytuacji pojęcie makro jest używane jako synonim kodu VBA (Visual Basic for Application), ale czasami słowem makro określamy precyzyjnie kod, który został zarejestrowany za pomocą rejestratora makr z karty Deweloper (jak ją włączyć na koniec tego wpisu). Czyli makro, to napisany kod, który uruchamia komendy/funkcjonalności w Excelu niejako zza kulis arkusza Excela.

Osoby, które zaczynają się uczyć VBA często dobrze znają Excela, dlatego najprościej im się uczyć pisania kodu VBA przez nagrywania makr (zwłaszcza w sytuacjach, gdy chcą zautomatyzować coś co wcześniej systematycznie musieli robić ręcznie).

Kiedy naciśniesz przycisk Zarejestruj makro „włączysz kamerę”, która będzie rejestrowała to co robisz w Excelu, a następnie najlepiej jak potrafiła tłumaczyła to na kod VBA.

Ważne, że kod VBA możesz zarejestrować w  dowolnym pliku Excela, ale nie w każdym możesz  go zapisać. Od Excela 2007 zostało wprowadzone nowe rozszerzenie plików .xslx, które nie przechowuje stworzonego kodu VBA, żeby go zapisać musisz zmienić rozszerzenie .xlsx na .xlsm (m od makra 😉 ). Ewentualnie możesz zapisać je też pod starszym rozszerzeniem .xls, ale ma ono ograniczone możliwości jeśli chodzi o funkcjonalności Excela.

Krótki wstęp teoretyczny skończony, teraz czas żebyś włączył kartę Deweloper na wstążce ponieważ domyślnie się ona nie wyświetla. Od Excel 2010 wystarczy, że klikniesz prawym przyciskiem myszy w dowolne miejsce wstążki i wybierzesz polecenie Dostosuj wstążkę.

Kurs 21.1 - Wstęp do makr i włączanie karty Deweloper 01

Następnie, w oknie, które się otworzy, musisz odnaleźć kartę Deweloper, zaznaczyć ją i zatwierdzić swój wybór przyciskiem OK.

Kurs 21.1 - Wstęp do makr i włączanie karty Deweloper 02

Karta Dewelopera powinna być widoczna i możesz korzystać z jej poleceń.

Kurs 21.1 - Wstęp do makr i włączanie karty Deweloper 03

W Excelu 2007 nie możesz jeszcze dostosowywać wstążki, więc kartę Deweloper włącza się inaczej. Musisz najpierw kliknąć Przycisk pakietu office:

Kurs 21.1 - Wstęp do makr i włączanie karty Deweloper 04

Następnie kliknąć w przycisk Opcje programu Excel (na dole rozwiniętego okna).

Kurs 21.1 - Wstęp do makr i włączanie karty Deweloper 05

Kolejnym Twoim krokiem będzie, w oknie, które się otworzy, na zakładce Popularne, zaznaczenie pola wyboru (checkboxa) Pokaż kartę Deweloper na Wstążce i zatwierdzenie swojego wyboru przyciskiem OK.

Kurs 21.1 - Wstęp do makr i włączanie karty Deweloper 06

W Excelu 2007 nie znajdziesz na karcie Deweloper grupy poleceń dodatki, ale nie odgrywa ona prawie żadnej roli jeśli chodzi o rejestrowanie i pisanie kodu VBA.

Kurs 21.1 - Wstęp do makr i włączanie karty Deweloper 07

Pozdrawiam
Adam Kopeć
Miłośnik Excela

 

SUMA

Funkcja SUMA jak łatwo się domyśleć służy do sumowania. Jej składnia to:

=SUMA(liczba1;[liczba2];…)

Nazwa argumentów liczba może być myląca ponieważ funkcji SUMA przeważnie jako argument podaje się odwołanie do komórki/zakresu komórek. Jeśli te zakresy są odrębne wystarczy je podać w kolejnych argumentach funkcji. Oczywiście możesz też podaj jako argument faktyczną liczbę 😉

=SUMA(B3;C3:C4;123)

Szybkie funkcje 1 - SUMA 01

Fakt, że funkcja SUMA możesz sumować po zakresie komórek jest jej największą zaletą w porównaniu do zwykłej operacji dodawania. Przyspiesza operację dodawania oraz może automatycznie poszerzyć zakres, po którym sumujesz w sytuacji, gdy dodasz komórki wewnątrz zakresu danych.

Szybkie funkcje 1 - SUMA 02
Kolejną zaletą funkcji SUMA jest to, że ignoruje wartości tekstowe w podanych zakresach – po prostu nie uwzględnia ich w sumie, w przeciwieństwie do zwykłego dodawanie, które zwracałoby błąd argumentu.

Szybkie funkcje 1 - SUMA 03

Ponieważ funkcja SUMA jest najczęściej wykorzystywaną funkcją w Excelu, jako jedyna doczekała się skrótu klawiszowe (Alt + =). Jeśli naciśniesz ten skrót klawiszowy, to Excel nie tylko wstawi funkcję SUMA, ale będzie jeszcze starał się odgadnąć zakres, po którym chcesz sumować. Nie zawsze uda mu się odgadnąć go poprawnie. Dlatego dostajesz możliwość zmiany zakresu danych, zanim funkcja zostanie wpisana do komórki.

Jeśli chcesz zrobić podsumowanie po wierszach i kolumnach, dzięki skrótowi klawiszowemu, możesz to zrobić bardzo szybko – wystarczy, że zaznaczysz zakres z wszystkimi wartościami do zsumowania i dodatkowo wiersz i kolumnę obok.

Szybkie funkcje 1 - SUMA 04
Wystarczy, że naciśniesz Alt + =, a Excel wstawi prawidłowo funkcje SUMA po komórkach pomalowanych na zielona na powyższym obrazie.

Szybkie funkcje 1 - SUMA 05
Tak właśnie działa funkcja SUMA 🙂

Pozdrawiam
Adam Kopeć
Miłośnik Excela