0
0 Produkty w koszyku

No products in the cart.

W tym poście omówimy różne sposoby wyznaczania numeru tygodnia w miesiącu. Jest to czwarty i zarazem ostatni wpis z cyklu dotyczącego numerowania tygodni. Zagadnienie to omówimy na przykładowych danych z rysunku nr 1. 

rys. nr 1 — Przykładowe dane

Formuły do tego wpisu zaczerpnięte zostały ze strony https://stackoverflow.com/questions/20620712/excel-formula-to-get-week-number-in-month-having-Monday w języku angielskim.

Omówimy sobie pierwszy sposób działania. Pamiętamy, że tydzień ma 7 dni. Jeśli nasz tydzień zaczyna się w poniedziałek w poprzednim miesiącu to będzie się ciągnął do niedzieli w bieżącym miesiącu. Natomiast dopiero w sytuacji, kiedy 1 dnia miesiąca wypada czwartek, to dopiero wtedy możemy mówić, że jest to pierwszy tydzień tego miesiąca. I dopiero od tego tygodnia jest kontynuowana numeracja dla tego miesiąca. W celu wyznaczenia numeru tygodnia miesiąca skorzystamy z kilku funkcji takich jak: ZAOKR.DO.CAŁK, DZIEŃ oraz DZIEŃ.TYG. Nasza formuła (w komórce D13) będzie wyglądać następująco:

= ZAOKR.DO.CAŁK((6+DZIEŃ($B13+D$4‑DZIEŃ.TYG(&B13‑1)))/7)

co przedstawia rysunek nr 2

rys. nr 2 — Obliczenie numeru tygodnia w miesiącu (pierwszy sposób)

Zacznijmy wyjaśnienia od funkcji DZIEŃ. Odwołuje się ona do naszej daty ($B13) i dodaje wartość korekty ze względu na to, jaki dzień przyjęliśmy sobie za początek tygodnia (D$4). Funkcja DZIEŃ z założenia zwraca numer dnia w miesiącu. Od naszej daty z uwzględnieniem korekty odejmujemy dzień ze standardowej numeracji dni tygodnia pomniejszony o wartość 1. Musimy pamiętać o dodaniu wartości 6. Po tych wszystkich korektach otrzymujemy wartość liczbową, która podzielona przez 7 (ilość dni w tygodniu) i zaokrąglona do wartości całkowitych zwróci nam prawidłowy numer tygodnia w miesiącu.

Spróbujmy oszacować formułę krok po kroku. Wybieramy z zakładki Formuły polecenie Szacuj formułę (rys. nr 3).

rys. nr 3 — polecenie Szacuj formułę

Otworzy nam się okno Szacowania formuły. Po każdorazowym kliknięciu przycisku Szacuj, Excel zwróci nam wartości poszczególnych części formuły (rys. nr 4). Przyjęliśmy system, gdzie poniedziałek ma wartość 1, a niedziela ma wartość 7. Z formuły DZIEŃ.TYG otrzymujemy wartość 4, czyli czwartek. Dzięki naszym działaniom w funkcji DZIEŃ cofamy się do poniedziałku z danego tygodnia – otrzymamy liczbę 29 (2015–12-29), do której musimy dodać 6. Wyszła nam ilość dni 35, które musimy podzielić na ilość dni w tygodniu. Ostatecznie otrzymujemy numer tygodnia w miesiącu o wartości 5.

rys. nr 4 — Okno Szacowania formuły

Funkcja ZAOKR.DO.CAŁK. nie zaokrągla typowo, ale ucina wartość po przecinku. Nie bierze jej w ogóle pod uwagę. Drugi system wyznaczenia numeru tygodnia w miesiącu omówimy na przykładowych danych z rysunku na 5. Nowy tydzień będzie rozpoczynany od dnia, który sobie przyjmiemy za początek tygodnia. 

rys. nr 5 — Przykładowe dane

W 1 przypadku (kolumna Tydzień miesiąca 01) poniedziałek zaczyna tydzień, ale jest jeszcze w poprzednim miesiącu, więc kontynuujemy numerację z zeszłego miesiąca. Analogicznie dla przypadków 2 i 3. Kolejny przypadek zakłada początek tygodnia w czwartek i jest on jednocześnie 1 dniem danego miesiąca, wtedy rozpoczynam numerację nowego miesiąca (rys. nr 5).

Sposób działania jest bardzo podobny do pierwszego przypadku. Różnica polega na drugim argumencie funkcji DZIEŃ.TYG. Zapis naszej formuły (w komórce K13) będzie wyglądał następująco:

= ZAOKR.DO.CAŁK((6+DZIEŃ($B13-DZIEŃ.TYG(&B13‑K$4;3)))/7)

W formule tej odwołujemy się do naszej daty $B13 i od niej odejmujemy tyle dni, ile wynika z naszej daty minus korekta. Wartość korekty zależy od tego, który dzień przyjmiemy sobie za początek tygodnia (u nas drugi argument funkcji DZIEŃ.TYG wynosi 3 czyli poniedziałek ma numer 0, a niedziela to 6). Do otrzymanej wartości dodajemy 6, a następnie dzielimy przez 7 (analogicznie jak wyżej) – rys. nr 6. 

rys. nr 6 — Obliczenie numeru tygodnia w miesiącu (drugi sposób)

Pod filmem Leili Gharani, na który trafiłem w sieci, znalazłem komentarz, który pokazywał jak numerować tygodnie miesiąca przy założeniu, że 1 dzień miesiąca to zawsze początek pierwszego tygodnia tego miesiąca. W zależności czy nasz tydzień będzie się zaczynał od poniedziałku, wtorku czy środy to te pierwsze tygodnie mogą być krótsze lub dłuższe, co widać na rysunku nr 7. Przykładowo, jeśli 1 stycznia wypada w czwartek (kolumna Tydzień miesiąca 005) ,a my przyjmujemy piątek za początek nowego tygodnia to wtedy pierwszy tydzień miesiąca będzie trwał tylko 1 dzień. 

rys. nr 6 — Przykładowe dane

Formuła do wyznaczenia numeru tygodnia w miesiącu w omówionym przypadku (dla komórki R13) będzie wyglądać następująco:

=NUM.TYG($B13;R$4)-NUM.TYG(NR.SER.OST.DN.MIES($B13;-1)+1;R$4)+1

W pierwszej funkcji NUM.TYG korektą jest drugi argument, czyli wartość w zależności od dnia przyjętego za początek tygodnia w pierwszym systemie (rys. nr 7) 

rys. nr 7 — Obliczenie numeru tygodnia w miesiącu (trzeci sposób)

Następnie od numeru dnia tygodnia, który przypada na naszą datę musimy odjąć numer tygodnia, który wyznaczamy z numeru seryjnego ostatniego dnia miesiąca. W funkcji NR.SER.OST.DN.MIES drugi argument jest ujemny, oznacza to, że cofamy się o miesiąc , czyli otrzymujemy datę ostatniego dnia miesiąca poprzedzającego nasz miesiąc. Następnie dodajemy wartość 1, czyli przechodzimy na 1 dzień naszego miesiąca (przedstawia to zapis NR.SER.OST.DN.MIES($B13;-1)+1, z którego otrzymujemy pierwszy dzień danego miesiąca). Drugi argument to po raz kolejny numer korekty, czyli systemu w którym przyjmujemy sobie dzień początku tygodnia. Należy pamiętać, aby na koniec dodać do wyniku wartość 1.

Wynik poszczególnych części formuły możemy sobie podejrzeć używając skrótu klawiszowego F9.


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