fbpx

Tajemnicze dwa minusy w formułach…

02.07.2018 | ECP2, Formuły tablicowe, Operacje na tekście

Dwa minusy to sposób na konwersję wartości na liczbę. Konkretnie, oznaczają one po prostu podwójne mnożenie przez -1. Jeśli liczbę pomnożymy przez -1, to otrzymamy liczbę przeciwną. Jeśli natomiast tę przeciwną liczbę pomnożymy przez -1, otrzymamy tę liczbę, co na początku. I o to właśnie tutaj chodzi. O konwersję wartości, która nie jest liczbą, np. teksty czy wartość logiczna, na liczbę. Omówię to na 2 przykładach:

  1. będę szukać daty urodzenia pracownika, na podstawie jego ID (WYSZUKAJ.PIONOWO)
  2. a potem policzę ile pracowników urodziło się w październiku (SUMA.ILOCZYNÓW)

Formatka wygląda następująco:

Formatka

Formatka

Jedziemy z formułami!

Wyszukiwanie daty urodzenia

To klasyczne użycie funkcji WYSZUKAJ.PIONOWO. Na podstawie ID pracownika chcemy przyporządkować jego datę urodzenia. Szukać będziemy po ID, ponieważ jest to unikalna wartość, na pewno się nie powtórzy. Natomiast, jeśli po prostu odwołamy się do ID, komórki B6, funkcja nam nie zadziała – zwróci błąd. Stanie się tak dlatego, że  ID w pierwszej tabeli jest tekstem, mimo że co do wartości jest identyczną liczbą, co w drugiej tabeli. Natomiast dla Excela są to dwie różne wartości (01 kontra 1). Dlatego właśnie konieczna jest konwersja tekstu (01) na liczbę (1), aby funkcja miała po czym szukać.

Konwersji tej możemy dokonać na kilka różnych sposobów, o czym już kiedyś pisałam, natomiast ja tutaj użyję właśnie naszych dwóch minusów, które tej konwersji dokonają w formule. Wygląda ona tak (D6):

=WYSZUKAJ.PIONOWO(--B6;$F$6:$H$15;3;0)

Zwróć uwagę, że przed komórką z ID, czyli B6 są dwa minusy. Konwertują one tekst 01 na liczbę 1, po której funkcja WYSZUKAJ.PIONOWO już będzie w stanie odszukać odpowiednią wartość.

Po skopiowaniu tej formuły w dół otrzymamy daty urodzenia pracowników:

Przyporządkowane daty urodzenia

Przyporządkowane daty urodzenia

Urodzeni w październiku

Teraz możemy policzyć tych, którzy urodzili się w październiku. Zrobię to za pomocą operacji tablicowej w funkcji SUMA.ILOCZYNÓW (już kiedyś też o tym pisałam). Formuła wygląda następująco:

=SUMA.ILOCZYNÓW(--(MIESIĄC(D6:D10)=10))

Dwa minusy w tej sytuacji konwertują wartości logiczne na liczby: PRAWDA i FAŁSZ na odpowiednio: 1 i 0. Gdyby tej konwersji nie było, funkcja SUMA.ILOCZYNÓW otrzymałaby do zsumowania wyniki porównania: czy miesiąc od wartości jest równy 10, czyli PRAWDY i FAŁSZE.

=SUMA.ILOCZYNÓW({PRAWDA;PRAWDA;FAŁSZ;FAŁSZ;PRAWDA})

Tego ta funkcja nie umie zsumować i w wyniku otrzymalibyśmy zero.

Umie natomiast zsumować liczby, czyli jedynki i zera. Jeśli przekonwertujemy PRAWDĘ na liczbę, to otrzymamy 1, a FAŁSZ – zero. Tej konwersji dokonają właśnie dwa minusy. Efekt tego w formule jest taki:

=SUMA.ILOCZYNÓW({1;1;0;0;1})

Po zatwierdzeniu zaś otrzymamy prawidłowy wynik, czyli dla danych z formatki: 3.

Wynik formuły tablicowej

Wynik formuły tablicowej

I wszystko. Jak widać, konwersji można użyć w różnych sytuacjach, w tym artykule podałam 2 przykładowe. Z pewnością spotkasz ich więcej w swojej pracy 🙂

Powiązane produkty:

  • WEBINAR: Konwersja tekstu na liczbę odpowiadający na pytanie dlaczego w ogóle Excel czasem traktuje liczby/ daty jako tekst oraz prezentujący szereg metod na radzenie sobie z takimi sytuacjami. Dodatkowo pokazana jest też metoda na sytuację odwrotną: gdy chcemy z liczby stworzyć tekst.

A póki co wersja wideo tego case’a:

I plik do pobrania:
MalinowyExcel Tajemnicze dwa minusy w formułach dw.xlsx
Enjoy!

Jeżeli chcesz lepiej poznać Excela na poziomie średniozaawansowanym zapisz się na listę zainteresowanych kursem Excel w codziennej pracy cz. 2! Podczas oczekiwania na kurs będę Ci wysyłała informacje, ciekawostki i excelowe triki. Bezpłatnie! 

Pomogłam Ci? Postaw mi wirtualną kawę! →

Przeczytaj podobne wpisy

Kategorie

4 komentarze

  1. Te dwa minusy to faktycznie prosta sprawa, a myślałem, że to coś bardzo skomplikowanego. Pamiętam jak jakiś czas temu ktoś mi pokazywał swoją tabelkę i mówi „widzisz, tu jest już bardzo zaawansowany Excel, nawet jakieś podwójne minusy przed formułami”, a ja na to „o kurcze, faktycznie”

    Odpowiedz
    • Hehe, dobre :). Może dlatego, że dopiero ci „bardziej zaawansowani” tego używają ;). Taki next level po mnożeniu *1 😉

      Odpowiedz
    • Super 🙂

      Odpowiedz

Wyślij komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *