W dzisiejszym wpisie nauczymy się czym są funkcje nietrwałe, ulotne w Excelu. Bill Szysz często wypowiada się, żeby nie korzystać z tych funkcji. Są to przede wszystkim takie funkcji jak: PRZESUNIĘCIE, TERAZ, DZIŚ, LOS, LOS.ZAKR, ADD.POŚR, KOMÓRKA – w zależności od argumentów, INFO, SUMA.JEŻELI przy nierównych zakresach. Wadą tych funkcji jest to, że bardzo często się przeliczają i a to powoduje duże obciążenie procesora. Temat ten omówimy na podstawie przykładowych danych z rysunku nr 1.

rys. nr 1 — Przykładowe dane

Ogólnie jeśli parametry funkcji się nie zmieniają i wartości w komórkach, do których się odwołuje pozostają bez zmian, to taka funkcja się nie przelicza ponownie. Natomiast funkcje wymienione powyżej przeliczają się za każdym razem, kiedy naciśniemy klawisz F9. W tym wpisie opieram się na informacjach ze strony internetowej http://www.decisionmodels.com/calcsecretsi.htm Znajdziemy na tej stronie plik do pobrania (volatileFuncs.zip), który pozwoli ci przetestować tą ulotność wyżej wymienionych funkcji.

Funkcja INDEKS nie będzie się przeliczać, jeśli jej argumenty się nie zmienią. Jest funkcją stałą. A reszta funkcji z naszych przykładowych funkcji to funkcje nietrwałe. Użycie funkcji nietrwałej i jej ponowne przeliczenie spowoduje zmiany w całym arkuszu, jeśli dalej będziemy mieć odwołania do komórki z wynikiem z tej funkcji.

Przykładowo w komórce C12 mamy wynik z funkcji nietrwałej. W komórce niżej mamy formułę VBA, która odwołuje się do wyniku z funkcji nietrwałej (rys. nr 2).

rys. nr 2 — Formuła VBA zliczająca ilość przeliczeń

Aby zobaczyć jak działa funkcji VBA z komórki C13 musimy użyć skrótu klawiszowego Alt+F11. W danych mamy jedną modułową zmienną i dodajemy do niej liczbę 1 za każdym razem kiedy uruchomimy komputer (rys. nr 3).

rys. nr 3 — Okno formuły VBA

Zwracamy wynik z dodatkowymi obliczeniami, aby na pewno te wartości się nie zmieniły. Użyto tutaj operacji przyrównania (kiedy w VBA przyrównuje się dwie takie same wartości to zwraca wartość ‑1), więc aby otrzymać wynik bez zmian trzeba dodać 1. Na końcu mamy linijkę, która (skrót klawiszowy Ctrl+G) w oknie Immediate wypisuje informacje, w której komórce była uruchamiana ta funkcja. Można uruchomić okno Immediate za pomocą skrótu klawiszowego Ctrl+G lub z karty View wybrać opcję Immediate Window (rys. nr 4).

rys. nr 4 — Immediate window

W naszych przykładowych danych kolorem żółtym oznaczono funkcje nietrwałe. Kiedy naciśniemy klawisz F9, aby ponownie przeliczyć arkusz to wszystkie funkcje oznaczone kolorem żółtym zmienią wynik.

Podsumowując funkcje nietrwałe przeliczają się za każdym razem kiedy coś wpiszemy, np. wpiszemy w dowolną komórkę słowo Tekst i zatwierdzimy Enterem, to funkcje nietrwałe się przeliczą. Zrobią to przy każdej zmianie danych, nawet takich do których one nie mają odwołania. Każde nasze działanie w Excelu spowoduje ich ponowne przeliczenie.

Ciekawostką jest, że funkcja SUMA.JEŻELI również może być nietrwała ale tylko w sytuacji kiedy zakresy, do których się odwołujemy nie są ze sobą tożsame – nie są tej samej długości (rys. nr 5).

rys. nr 5 — Różne zakresy dla funkcji LICZ.JEŻELI

W naszym przykładzie argument Zakres ma pięć komórek, a drugi argument po którym sumujemy ma tylko jedną komórkę.

Dodatkowo pamiętajmy, że każda formuła, która odwołuje się do funkcji ulotnej, będzie przeliczana, ponieważ komórka do której się odwołuje uległa zmianie.


Książka Mistrz Excela + promo na 35 urodziny

Chcę Cię poinformować, że w końcu udało mi zebrać środki i dopiąć wszystkich formalności, żeby powstało II wydanie mojej książki Mistrz Excela (zostałem wydawcą)
II wydanie jest wzbogacone o rozdział (nr 22) wprowadzający w genialny dodatek (Power Query) do Excela służący do pobierania, łączenia i wstępnej obróbki danych z wielu źródeł.

Książka Mistrz Excela to historia Roberta, który musi poznać dobrze Excela na potrzeby nowej pracy. Książka jest napisana w formie rozmów Roberta z trenerem, dzięki temu jest przystępniejsza w odbiorze niż standardowe książki techniczne pisane językiem "wykładowym".

Rozmowy zostały podzielone na 22 tematyczne rozdziały, które krok po kroku wprowadzają Cię w tajniki Excela. Robert zaczyna naukę od poznania ciekawych aspektów sortowania i filtrowania danych w Excelu, przechodzi przez formatowanie warunkowe, tabele przestawne, funkcje wyszukujące i wiele innych tematów, by na koniec poznać wstępne informacje o VBA i Power Query.
A wszystko to na praktycznych przykładach i z dużą ilością zdjęć.

Żebyś mógł śledzić postępy Roberta, do książki dołączone są pliki Excela, na których pracuje Robert.

Aktualnie w promocji urodzinowej możesz mieć Mistrza Excela w obniżonej cenie, jeśli tylko wpiszesz kod 35URODZINY
https://exceliadam.pl/produkt/ksiazka-mistrz-excela

Na powyższej stronie znajdziesz dokładniejszy opis książki, opinie osób, które kupiły I wydanie oraz podgląd pierwszego rozdziału książki, żeby upewnić się, czy forma rozmów przy nauce Excela jest dla Ciebie.
Jeśli książka Ci się spodoba poinformuj o niej swoich znajomych. 

W ramach promocji na moje 35 urodziny możesz też mieć każdy z moich kursów wideo na Udemy za zaledwie 35 zł. Linki do kursów zamieszczam poniżej. W każdym kursie są udostępnione filmy do podglądu, byś mógł się przekonać czy dany kurs jest dla Ciebie.

Power Query
https://www.udemy.com/course/mistrz-power-query/?couponCode=35URODZINY

Mistrz Excela
https://www.udemy.com/mistrz-excela/?couponCode=35URODZINY

Dashboardy
https://www.udemy.com/course/excel-dashboardy/?couponCode=35URODZINY

Mistrz Formuł
https://www.udemy.com/course/excel-mistrz-formul/?couponCode=35URODZINY

VBA
https://www.udemy.com/course/excel-vba-makra/?couponCode=35URODZINY

Microsoft Power BI
https://www.udemy.com/course/power-bi-microsoft/?couponCode=35URODZINY

Książka Mistrz Excela reklama