Функција Excel WEEKNUM – ​​конвертирај број на недела во датум и обратно

  • Споделете Го Ова
Michael Brown

Додека Microsoft Excel обезбедува низа функции за работа со работни денови, месеци и години, само една е достапна со недели - функцијата WEEKNUM. Значи, ако барате начин да добиете седмичен број од датум, WEEKNUM е функцијата што ја сакате.

Во овој краток туторијал, накратко ќе зборуваме за синтаксата и аргументите на Excel WEEKNUM, и потоа разговарајте за неколку примери на формула кои покажуваат како можете да ја користите функцијата WEEKNUM за да ги пресметате броевите на недели во вашите работни листови во Excel.

    Excel WEEKNUM функција - синтакса

    Функцијата WEEKNUM е се користи во Excel за враќање на бројот на неделата на одреден датум во годината (број помеѓу 1 и 54). Има два аргументи, првиот е задолжителен, а вториот е изборен:

    WEEKNUM(serial_number, [return_type])
    • Serial_number - кој било датум во неделата чиј број го пробувате да најде. Ова може да биде референца за ќелија што го содржи датумот, датум внесен со користење на функцијата DATE или вратен со некоја друга формула.
    • Враќање_тип (опционално) - број кој одредува на кој денот кога започнува неделата. Ако се испушти, се користи стандардниот тип 1 (седелата што започнува во недела).

    Еве целосна листа на return_type вредности поддржани во формулите WEEKNUM.

    Враќање_тип Неделата започнува на
    1 или 17 или испуштена недела
    2 или11 понеделник
    12 вторник
    13 среда
    14 четврток
    15 петок
    16 Сабота
    21 Понеделник (се користи во системот 2, погледнете ги деталите подолу.)

    Во функцијата WEEKNUM, се користат два различни системи за нумерирање седмици :

    • Систем 1. Се смета неделата што содржи 1 јануари првата недела од годината и е нумерирана недела 1. Во овој систем, неделата традиционално започнува во недела.
    • Систем 2. Ова е ISO системот за датуми за недела што е дел од ISO 8601 стандард за датум и време. Во овој систем, неделата започнува во понеделник, а седмицата што го содржи првиот четврток во годината се смета за недела 1. Попозната е како систем за нумерирање на европските седмици и се користи главно во владата и бизнисот за фискални години и за мерење на времето.

    Сите типови на враќање наведени погоре се однесуваат на системот 1, освен за типот на враќање 21 што се користи во системот 2.

    Забелешка. Во Excel 2007 и претходните верзии, достапни се само опциите 1 и 2. Типовите за враќање од 11 до 21 се поддржани само во Excel 2010 и Excel =MAX(DATE(A2,1,1), DATE(A2,1,1) - WEEKDAY(DATE(A2,1,1),1) + (B2-1)*7 + 1) .

    Формулите на Excel WEEKNUM за конвертирање датум во број на седмица (од 1 до 54)

    Следната слика од екранот покажува како можете да добиете неделни броеви од датуми со наједноставната формула =WEEKNUM(A2) :

    Во горенаведенотоформулата, аргументот return_type е испуштен, што значи дека се користи стандардниот тип 1 - неделата што започнува во недела.

    Ако сакате да започнете со некој друг ден во неделата, да речеме понеделник, потоа користете 2 во вториот аргумент:

    =WEEKNUM(A2, 2)

    Наместо да се однесувате на ќелија, можете да го наведете датумот директно во формулата користејќи ја функцијата DATE(година, месец, ден), на пример:

    =WEEKNUM(DATE(2015,4,15), 2)

    Горената формула враќа 16, што е бројот на седмицата што содржи 15 април 2015 година, со недела што започнува во понеделник.

    Во реални сценарија , функцијата Excel WEEKNUM ретко се користи самостојно. Најчесто би го користеле во комбинација со други функции за да извршите различни пресметки врз основа на бројот на неделата, како што е прикажано во понатамошните примери.

    Како да го конвертирате неделниот број во датум во Excel

    Како што штотуку видов, не е голема работа датумот да се претвори во број на недела користејќи ја функцијата Excel WEEKNUM. Но, што ако го барате спротивното, т.е. претворање на неделен број во датум? За жал, не постои функција на Excel што може да го стори тоа веднаш. Значи, ќе мораме да конструираме свои формули.

    Да претпоставиме дека имате година во ќелијата A2 и број на недела во B2, а сега сакате да ги пресметате датумите на почеток и крај во оваа недела.

    Забелешка. Овој пример на формула се заснова на броеви на ISO седмици, со една недела што започнува во понеделник.

    Формулата за враќање на Startдатумот на неделата е како што следува:

    =DATE(A2, 1, -2) - WEEKDAY(DATE(A2, 1, 3)) + B2 * 7

    каде A2 е годината и B2 е бројот на неделата.

    Ве молиме имајте предвид дека формулата го враќа датумот како сериски број, а за да се прикаже како датум, треба соодветно да ја форматирате ќелијата. Деталните упатства можете да ги најдете во Промена на формат на датум во Excel. И еве го резултатот вратен со формулата:

    Се разбира, формулата за претворање на неделен број во датум не е тривијална и може да потрае некое време за да се добие главата околу логиката. Како и да е, ќе се потрудам да дадам смислено објаснување за оние кои се љубопитни да се спуштат на дното.

    Како што гледате, нашата формула се состои од 2 дела:

    • DATE(A2, 1, -2) - WEEKDAY(DATE(A2, 1, 3)) - го пресметува датумот на последниот понеделник во претходната година.
    • B2 * 7 - го собира бројот на недели помножен со 7 (бројот на денови во неделата) за да се добие понеделник (почетен датум) во неделата во прашање.

    Во системот за нумерирање на неделата ISO, недела 1 е неделата што го содржи првиот четврток во годината. Следствено, првиот понеделник е секогаш помеѓу 29 декември и 4 јануари. Значи, за да го најдеме тој датум, треба да го најдеме понеделникот непосредно пред 5 јануари.

    Во Microsoft Excel, можете да извлечете ден во неделата од датум со користење на функцијата WEEKDAY. И можете да ја користите следнава генеричка формула за да добиете понеделник веднаш пред даден датум:

    = датум - WEEKDAY( датум - 2)

    Ако нашитекрајната цел беше да го најдеме понеделник непосредно пред 5 јануари годинава во А2, можеме да ги користиме следните функции DATE:

    =DATE(A2,1,5) - WEEKDAY(DATE(A2,1,3))

    Но она што всушност ни треба не е првиот понеделник на оваа година, туку последниот понеделник од претходната година. Значи, треба да одземете 7 дена од 5 јануари и оттука добивате -2 во првата функција DATE:

    =DATE(A2,1,-2) - WEEKDAY(DATE(A2,1,3))

    Во споредба со незгодната формула што штотуку ја научивте, пресметувајќи го Крајниот датум на неделата е парче торта :) За да ја добиете неделата во односната недела, едноставно додадете 6 дена на Датумот на започнување , т.е. =D2+6

    Алтернативно, можете да додадете 6 директно во формулата:

    =DATE(A2, 1, -2) - WEEKDAY(DATE(A2, 1, 3)) + B2 * 7 + 6

    За да бидете сигурни дека формулите секогаш ги даваат вистинските датуми, погледнете го следново скриншот. Формулите Датум на почеток и Датум на завршување, дискутирани погоре, се копираат низ колоните D и E, соодветно:

    Други начини за претворање на неделниот број во датум во Excel

    Ако горната формула заснована на системот за датуми за недела на ISO не ги задоволува вашите барања, обидете се со едно од следниве решенија.

    Формула 1. Недела која содржи јануари-1 е недела 1, недела од понеделник до недела

    Како што се сеќавате, претходната формула работи врз основа на системот за датуми ISO каде што првиот четврток од годината се смета за недела 1. Ако работите врз основа на систем на датуми каде неделата што го содржи 1 јануари се смета за недела 1, користете го следновоформули:

    Датум на започнување:

    =DATE(A2,1,1) - WEEKDAY(DATE(A2,1,1),2) + (B2-1)*7 + 1

    Краен датум:

    =DATE(A2,1,1)- WEEKDAY(DATE(A2,1,1),2) + B2*7

    Формула 2. Недела која содржи Јан-1 е недела 1, недела Нед-Саб

    Овие формули се слични на горенаведените со единствената разлика што се напишани за недела - сабота недела.

    Датум на почеток:

    =DATE(A2,1,1) - WEEKDAY(DATE(A2,1,1),1) + (B2-1)*7 + 1

    Краен датум:

    =DATE(A2,1,1)- WEEKDAY(DATE(A2,1,1),1) + B2*7

    Формула 3. Секогаш почнувајте да сметате на 1 јануари, недела од понеделник до нед

    Додека претходните формули се враќаат понеделник (или недела) од првата недела, без разлика за тоа дали ако спаѓа во оваа или претходната година, оваа формула за датум на почеток секогаш се враќа 1 јануари како датум на почеток на неделата 1 без оглед на денот во неделата. По аналогија, формулата за краен датум секогаш се враќа 31 декември како краен датум на последната недела во годината, без оглед на денот во неделата. Во сите други аспекти, овие формули работат слично како Формула 1 погоре.

    Датум на почеток:

    =MAX(DATE(A2,1,1), DATE(A2,1,1) - WEEKDAY(DATE(A2,1,1),2) + (B2-1)*7 + 1)

    Датум на завршување:

    =MIN(DATE(A2+1,1,0), DATE(A2,1,1) - WEEKDAY(DATE(A2,1,1),2) + B2*7)

    Формула 4. Секогаш почнувајте да сметате на 1 јануари, недела од недела до сабота

    За да ги пресметате датумите на почеток и крај за недела - сабота, се што е потребно е едно мало прилагодување во горенаведените формули :)

    Датум на започнување:

    =MAX(DATE(A2,1,1), DATE(A2,1,1) - WEEKDAY(DATE(A2,1,1),1) + (B2-1)*7 + 1)

    Краен датум:

    =MIN(DATE(A2+1,1,0), DATE(A2,1,1) - WEEKDAY(DATE(A2,1,1),1) + B2*7)

    Како да добиете број на месец од седмица

    За да добиете месец што одговара на неделата број, го наоѓате првиот ден во дадена недела како што е објаснето во ована пример, а потоа завиткајте ја формулата во функцијата МЕСЕЦ на Excel вака:

    =MONTH(DATE(A2, 1, -2) - WEEKDAY(DATE(A2, 1, 3)) + B2 * 7)

    Забелешка. Запомнете дека горната формула работи врз основа на ISO-неделниот систем за датуми , каде што неделата започнува во понеделник, а неделата што го содржи првиот четврток во годината се смета за недела 1. На пример, во 2016 година, првиот четврток е 7 јануари, и затоа првата недела започнува на 4 јануари 2016 година.

    Како да добиете седмичен број за еден месец (од 1 до 6)

    Ако вашата деловна логика бара конвертирање на одреден датум во број на недела во соодветниот месец, можете да ја користите комбинацијата од WEEKNUM, Функции DATE и MONTH:

    Претпоставувајќи дека ќелијата A2 го содржи оригиналниот датум, користете ја следнава формула за една недела почнувајќи од Понеделник (забележете 21 во аргументот return_type на WEEKNUM):

    =WEEKNUM($A2,21)-WEEKNUM(DATE(YEAR($A2), MONTH($A2),1),21)+1

    За една недела почнувајќи од недела , испушти го аргументот return_type:

    =WEEKNUM($A2)-WEEKNUM(DATE(YEAR($A2), MONTH($A2),1))+1

    Како да збир на вредности и наоѓање просек по седмичен број

    Сега кога знаете како да конвертирате датум во број на седмица во Excel, ајде да видиме како можете да ги користите неделните броеви во други пресметки.

    Да претпоставиме , имате неколку месечни бројки за продажба и сакате да го знаете вкупниот број за секоја недела.

    За почеток, ајде да дознаеме неделен број што одговара на секоја продажба. Ако вашите датуми се во колоната А, а продажбите во колоната Б, копирајте ја формулата =WEEKNUM(A2) низ колоната C почнувајќи од ќелијатаC2.

    И потоа, направете листа на неделни броеви во некоја друга колона (на пример, во колоната Е) и пресметајте ја продажбата за секоја недела користејќи ја следнава формула SUMIF:

    =SUMIF($C$2:$C$15, $E2, $B$2:$B$15)

    Каде E2 е бројот на неделата.

    Во овој пример, работиме со листа на мартовски продажби, така што ги имаме броевите за недела од 10 до 14, како прикажано на следната слика од екранот:

    На сличен начин, можете да го пресметате просекот на продажба за дадена недела:

    =AVERAGEIF($C$2:$C$15, $E2, $B$2:$B$15)

    Ако помошната колона со формулата WEEKNUM не се вклопува добро во распоредот на вашите податоци, со жалење ви кажам дека не постои едноставен начин да се ослободите од него бидејќи Excel WEEKNUM е една од тие функции што не прифаќа аргументи за опсег. Затоа, не може да се користи во рамките на SUMPRODUCT или која било друга формула за низа како функцијата MONTH во слично сценарио.

    Како да се означат ќелиите врз основа на бројот на неделата

    Да речеме дека имате долг список датуми во некоја колона и сакате да ги истакнете само оние што се однесуваат на дадена недела. Сè што ви треба е условно правило за форматирање со формула WEEKNUM слична на оваа:

    =WEEKNUM($A2)=10

    Како што е прикажано на сликата подолу, правилото ја нагласува продажбата што била направена во текот на 10-тата недела, што е првата недела во март 2015 година. Бидејќи правилото важи за A2:B15, ги истакнува вредностите во двете колони. Можете да дознаете повеќе за креирање правила за условно форматирање во оваупатство: условно форматирање на Excel врз основа на друга вредност на ќелијата.

    Вака можете да пресметате броеви на седмици во Excel, да го конвертирате бројот на неделата во датум и да го извлечете бројот на неделата од датумот. Се надеваме дека формулите на WEEKNUM што ги научивте денес ќе се покажат корисни во вашите работни листови. Во следниот туторијал, ќе зборуваме за пресметување на возраста и годините во Excel. Ви благодарам што прочитавте и се надевам дека ќе се видиме следната недела!

    Мајкл Браун е посветен технолошки ентузијаст со страст за поедноставување на сложените процеси користејќи софтверски алатки. Со повеќе од една деценија искуство во технолошката индустрија, тој ги усоврши своите вештини во Microsoft Excel и Outlook, како и Google Sheets и Docs. Блогот на Мајкл е посветен на споделување на своето знаење и експертиза со другите, обезбедувајќи лесни за следење совети и упатства за подобрување на продуктивноста и ефикасноста. Без разлика дали сте искусен професионалец или почетник, блогот на Мајкл нуди вредни сознанија и практични совети за да го извлечете максимумот од овие основни софтверски алатки.