Как можно упростить вложенное условие if в формуле excel - PullRequest
0 голосов
/ 12 июня 2018

Формула Excel:

=IF(OR(B42="First Proof",B42="Revised First Proof"),IF(WEEKDAY(J42-1)=1,J42-2,J42-1),IF(OR(B42="Revises2",B42="Revises3",B42="Revises4",B42="Revises5",B42="Revises6",B42="Revises7"),IF(WEEKDAY(Q42-1)=1,Q42-2,Q42*1),IF(B42="Revises1",IF(WEEKDAY(J42-1)=1,J42-2,J42-1),IF(B42="Typescript",IF(WEEKDAY(J42-1)=1,J42-2,J42-1),IF(B42="Finals",IF(WEEKDAY(J42-1)=1,J42-2,J42-1),IF(OR(B42="ELDs",B42="Post Conversion",B42="Revised ELDs"),"NA"))))))

Пожалуйста, помогите мне уменьшить длину формулы.

1 Ответ

0 голосов
/ 12 июня 2018

Не забывайте, что вы можете использовать alt + enter и пробелы для форматирования многострочных формул и улучшения читабельности.

=IF(or(right(B42, 11)="first proof", or(b42={"revises1", "typescript", "finals"})), J42-1-(WEEKDAY(J42, 2)=1),
 IF(AND(LEFT(B42, 7)="Revises", OR(RIGHT(B42)={"2","3","4","5","6","7"})), Q42-(WEEKDAY(Q42, 2)=1)*2,
 IF(or(b42={"elds", "post conversion", "revised elds"}), "NA", "")))

Уменьшено с 437 символов до ~ 275 символов и OR(RIGHT(B42)={"2","3","4","5","6","7"}) isn 't даже необходимо, так как Revises1 уже проверен.

...