W tym poście zajmiemy się czasem wykonywania procedur i optymalizacją formuł. Zagadnienie to omówimy na przykładowych danych z rysunku nr 1.

rys. nr 1 — Przykładowe dane

Pod poradą nr 348, która dotyczyła znalezienia pierwszego wiersza spełniającego warunek, odbyłem dyskusję z Billem Szysz na temat formuł i czasu ich wykonywania. Funkcja, z której ja często korzystam (LICZ.JEŻELI) jest pamięciożerna, czyli obciąża nam procesor. Podobnie działa funkcja PODAJ.POZYCJĘ , która dla większych zakresów danych działa szybciej.

W filmie Excel sztuczka nr 3 ( https://www.youtube.com/watch?v=CcT51qv8_IA ) pokazałem jak wykorzystać kod VBA, można go podpiąć i sprawić, aby wykonywał obliczenia – sprawdzał jak długo dane formuły się liczą.

Zaznaczamy formuły, których chcemy policzyć czas trwania przy użyciu skrótu klawiszowego Ctrl+A i klikam w makro (rys. nr 2).

rys. nr 2 — Makro

Pojawia nam się wynik obliczeń (rys. nr 3), czyli obliczenia zostały wykonane w czasie 1,82269 s. Trzeba użyć tego makra kilka razy, aby sprawdzić średnia z obliczeń, ponieważ czas obliczeń zależy od tego jak jest obciążony procesor (np. ile mamy uruchomionych programów w danym momencie)

rys. nr 3 — Czas obliczeń funkcji LICZ.JEŻELI

Według moich obliczeń formuła Billa Szysz przelicza się dłużej (rys. nr 4), bo prawie 5 sekund. Możliwe, że Formuła Billa Szysz jest szybsza przy jeszcze większej ilości danych.

rys. nr 4 — Czas obliczeń funkcji PODAJ.POZYCJĘ

Bill Szysz zaproponował inne podejście do obliczeń. My tak naprawdę tylko raz musimy znaleźć ten pierwszy wiersz spełniający warunek. Kiedy już mamy numer wiersza, to możemy cała skomplikowaną formułę zastąpić prostą funkcją WIERSZ. W tej funkcji nie podajemy żadnych argumentów tylko przyrównujemy ją do komórki z wynikiem którego szukamy. Gdy zaznaczymy kolumny z formuła funkcji WIERSZ otrzymamy wynik 0,005 sekundy, czyli funkcja zwróciła wynik w tak krótkim czasie (rys. nr 5).

rys. nr 5 — Czas obliczeń funkcji WIERSZ

Podsumowując, nie musieliśmy formuły obliczać 10 tysięcy razy, wystarczyło policzyć raz, a potem za pomocą funkcji WIERSZ porównać ją z tym pojedynczym wynikiem. Diametralna zmiana długości czasu wynika, ze zmiany podejścia do obliczeń. Złota zasada Excela polega na tym, że jeśli potrzebujemy coś przeliczyć wiele razy ale zawsze jest to ten sam wynik (w naszej sytuacji ten sam wiersz), to zróbmy to w jednej komórce, a następnie w innej formule skorzystajmy z tego wyniku.


Właśnie dodałem mój kurs o Power BI Desktop firmy Microsoft na Udemy.com.
W związku z tym, możesz dostać ten kurs w promocyjnej Cenie Na Start za zaledwie 34,99 PLN.
To najniższa cena jaką mogę ustawić na platformie edukacyjnej Udemy!

Kurs Power BI Desktop to:
- Ponad 6 godziny nagrań wideo, które krok po kroku wprowadzają Cię w tajniki pobierania, łączenia i analizy danych, a na koniec ich wizualizacji.
- Pliki do pracy razem z filmami.
- Dożywotni dostęp.
- Elektroniczny certyfikat ukończenia

Spis treści kursu o PowerBI Desktop:

Kurs jest podzielony na 6 rozdziałów, które pozwolą Ci wejść w tematykę analizy i wizualizacji danych za pomocą odpowiednio stworzonych zapytań i relacji w PowerBI Desktop.

  1. Wstęp do aplikacji PowerBI Desktop i jej możliwości
  2. Tworzenie i modyfikowanie zapytań (pobieranie danych)
  3. Modelowanie danych w PowerBI Desktop
  4. Wizualizacja danych i tworzenie raportów
  5. Usługa internetowa
  6. PowerBI Pro — kilka słów o płatnej części usługi PowerBI

Wejdź na stronę kursu PowerBI Desktop i zobacz szczegóły kursu
oraz udostępnione do podglądu filmy,
żeby przekonać się czy to kurs dla Ciebie.