![](https://cdn.wiki-base.com/7149307/excel_formula_get_monday_of_the_week__2.png.webp)
Обща формула
=date-WEEKDAY(date,3)
Обобщение
За да получите понеделник от седмицата (т.е. началото на седмица) за която и да е дата, можете да използвате формулата, базирана на функцията WEEKDAY. В показания пример формулата в C6 е:
=B5-WEEKDAY(B5,3)
Забележка: В схемата по подразбиране на Excel седмиците започват в неделя. Този пример обаче предполага, че първият ден от седмицата е понеделник, конфигуриран с втория аргумент на WEEKDAY, както е обяснено по-долу.
Обяснение
Представете си, че имате произволна дата и искате да намерите понеделника от седмицата, в който се появява датата. Можете да видите, че ще трябва да „върнете назад“ определен брой дни, в зависимост от това кой ден от седмицата е дадената дата. Ако датата е сряда, трябва да върнете 2 дни назад, ако датата е петък, 4 дни назад и така нататък, както се вижда в таблицата по-долу:
Дата | Отдръпнете се |
Понеделник | 0 |
Вторник | 1 |
Сряда | 2 |
Четвъртък | 3 |
Петък | 4 |
Събота | 5 |
Неделя | 6 |
Как можем да разберем номера за връщане назад?
Оказва се, че функцията WEEKDAY, с малка настройка, може да ни даде нужния номер за откат. WEEKDAY връща число, обикновено 1-7 за всеки ден от седмицата. Чрез задаване на незадължителния втори аргумент (return_type) на 3, WEEKDAY ще върне числа 0-6 за седмица, базирана на понеделник. С други думи, можем да използваме WEEKDAY, за да генерираме стойности за връщане назад в таблицата по-горе за всяка дадена дата. Перфектно.
Формулата просто използва директно това поведение:
=B5-WEEKDAY(B5,3) =25-Aug-2019-WEEKDAY(25-Aug-2019,3) =25-Aug-2019-6 =19-Aug-2019
Понеделник от текущата седмица
За да получите понеделник от текущата седмица, можете да използвате следната формула:
=TODAY()-WEEKDAY(TODAY(),3)
Тук използваме функцията TODAY, за да инжектираме текущата дата в същата формула. Тази формула ще продължи да се актуализира непрекъснато.
Персонализирана алтернатива
Ако искате да персонализирате поведението въз основа на деня от седмицата, използвайте алтернативна формула, която използва функцията CHOOSE с твърдо кодирани стойности на корекция:
=B5-CHOOSE(WEEKDAY(B5,2),0,1,2,3,4,5,6)
Тази формула използва WEEKDAY за получаване на индекс за деня от седмицата и CHOOSE за извличане на стойност за връщане назад. Предимството на този подход е, че CHOOSE позволява произволни стойности за всеки ден от седмицата; можете да персонализирате, както искате.