
Я нашел этот замечательный шаблон отВершина42для отслеживания посещаемости занятий.
Я пытаюсь изменить шаблон так, чтобы он показывал только рабочие дни (так как по выходным занятий нет). Используемая формула выше моего уровня владения Excel, поэтому я надеюсь, что кто-то другой сможет в ней разобраться.
Функция выглядит следующим образом, где C7 — первый день месяца:
=@IF(C7="";"";INDEX({"Su";"M";"Tu";"W";"Th";"F";"Sa"};WEEKDAY(C7;1)))
Функция для C7, где AB3 — год, а AB2 — месяц:
=DATE(AB3;@INDEX({1\2\3\4\5\6\7\8\9\10\11\12};MATCH(AB2;monthNames;0));1)
Скриншот шаблона:
решение1
УстранятьСиделиСолнцеиз строки 7, и вы можете использовать существующую формулу в строке 6. Фактически, вы можете даже сократить формулу в строке 6, так какСбиСолнцеопции больше не нужны.
C7 должен быть,
=IF(TEXT(WORKDAY(DATEVALUE("1-"&LEFT($AB2; 3)&"-"&$AB3)-1; COLUMN(A:A)); "mmmm")=$AB2; WORKDAY(DATEVALUE("1-"&LEFT($AB2; 3)&"-"&$AB3)-1; COLUMN(A:A)); "")
Преимущество этого подхода заключается в том, что даты в строке 7 рассматриваются как фактические даты.
Вы можете добавить список праздников в функцию WORKDAY или WORKDAY.INTL. WORKDAY.INTL допускает выходные, которые не являются стандартными (например, неСидел&Солнце).