Упрощение уравнений - PullRequest
0 голосов
/ 06 июля 2018

Есть идеи, как упростить это уравнение? Критерии для каждого региона (APAC, LATAM, EMEA, Северная Америка) варьируются (часовые / дневные отключения).

Верьте или нет, раньше это было дольше. Вот моя лучшая попытка:

Разбит по группам:

=IF(A2="","",

IF(WEEKDAY(B2,2)=6,"Weekend Case",

IF(AND(C2<>"APAC",WEEKDAY(B2,2)=7),"WeekendCase", 

IF(AND(C2="APAC",OR(AND(WEEKDAY(B2,2)=5,HOUR(B2)>=3),AND(WEEKDAY(B2,2)=7,
HOUR(B2)<18))),"Weekend Case",

IF(AND(C2="North America",OR(AND(WEEKDAY(B2,2)=5,HOUR(B2)>=18),
AND(WEEKDAY(B2,2)=1,HOUR(B2)<8))),"Weekend Case",

IF(AND(C2="EMEA",OR(AND(WEEKDAY(B2,2)=5,HOUR(B2)>=10),
AND(WEEKDAY(B2,2)=1,HOUR(B2)<2))),"Weekend Case",

IF(AND(C2="LATAM",OR(AND(WEEKDAY(B2,2)=5,HOUR(B2)>=15),
AND(WEEKDAY(B2,2)=1,HOUR(B2)<5))),"Weekend Case",

"Weekday")))))))

Логика:

ЕСЛИ А2 = Nothing: Nothing

Все регионы:
Если Sat: WEEKEND

Северная Америка, EMEA, LATAM
ЕСЛИ Sun: WEEKEND

APAC:
ЕСЛИ Friday After 3AM ИЛИ Sunday Before 6PM: WEEKEND

Северная Америка:
ЕСЛИ Friday After 6PM ИЛИ Monday Before 8AM: WEEKEND

ЕМЕА:
ЕСЛИ Friday After 10AM или Monday Before 2AM: WEEKEND

LATAM:
ЕСЛИ Friday After 3PM ИЛИ Monday Before 5AM: WEEKEND

прочее:
WEEKDAY


Пример для каждого региона с каждым выводом ниже:

enter image description here

Ответы [ 2 ]

0 голосов
/ 06 июля 2018

Создайте справочный лист с именем Расписание и загрузите его следующим образом:

     A            B        C
1 Region       WE-start  WE-end
2 APAC           503      718
3 EMEA           505      802
4 LATAM          515      805
5 North America  518      818

Формат значений WE: dhh, где d = день недели и hh = час. Если будний день - воскресенье, я делаю его равным 8, чтобы упростить следующие вычисления.

Следующая формула генерирует ваш Тип и исправляет EMEA.

=IF(AND(IF(WEEKDAY(B2)=1,700,0)+WEEKDAY(B2)*100+HOUR(B2)>=VLOOKUP(C2,Schedule!$A$2:$C$5,2), IF(WEEKDAY(B2)=1,700,0)+WEEKDAY(B2)*100+HOUR(B2)<VLOOKUP(C2,Schedule!$A$2:$C$5,3)),"Weekend Case","Weekday")
0 голосов
/ 06 июля 2018

Если вы можете использовать внешнюю таблицу для поиска, вы сможете упростить ее (и упростить ее изменение в случае необходимости)

Таблица поиска:

enter image description here

Числа - это количество дней, которое необходимо сместить для понедельника (col I) и пятницы (col J).т. е. для APAC + 6 часов составляет =6/24 дней, а + 21 час - =21/24 дней.(Убедитесь, что вы используете формулы для этой таблицы, а не числа, которые отображаются как округленные).

Затем вы можете использовать следующую формулу:

=IF(AND(WEEKDAY(B2+VLOOKUP(C2,H$2:J$5,2))>=1,WEEKDAY(B2+VLOOKUP(C2,H$2:J$5,3))<=5),"Weekday","Weekend Case")

Я получаю те же результаты с нейкак ваш образец.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...