У меня есть две колонки под названием

1-я колонка Календарь Дата:

16/02/2015

2-й столбец предыдущего дня:

Yes

Формула, которую я сейчас использую:

if([calendar Date])=today-1,"YES","NO").

2-й столбец возвращает значение на основе 1-го столбца.

Однако проблема, которую я получаю, заключается в том, что я запускаю данные в понедельник, когда у нас есть календарная дата (день в пятницу). Таким образом, он показывает "НЕТ", так как формула возвращает данные только за предыдущий день.

Поэтому я хочу что-то вроде этого. Только когда я бегу в понедельник, он должен дать мне if([календарная дата])= сегодня-3, "ДА", "НЕТ").И все остальные рабочие дни if([календарная дата])= сегодня -1, "ДА", "НЕТ")

Не могли бы вы помочь мне в этом.

2 ответа2

0

Вы хотите, чтобы пятница и суббота интерпретировались как воскресенье (день перед понедельником).

=IF(
   IF(WEEKDAY(A2) = 6,   <-- Friday
     A2 + 2,             <-- Becomes Sunday
     IF(WEEKDAY(A2) = 7, <-- Saturday
       A2 + 1,           <-- Becomes Sunday
       A2                <-- Unadjusted
     )
   ) = TODAY() - 1,
   "YES",
   "NO"
 )

Эта формула не будет работать, если, скажем, вы прочитали отчет в субботу, поскольку в отношении формулы суббота имеет 0 вчерашних дней и 2 завтрашних дня.

Без комментариев: =IF( IF(WEEKDAY(A2)= 6, A2 + 2, IF(WEEKDAY(A2) = 7, A2 + 1, A2)) = TODAY() - 1, "YES", "NO")

0

Используйте функцию WORKDAY для if .

WORKDAY возвращает дату, используя start_date и number_of_working_days в качестве аргументов (поэтому пропускаются выходные дни). В вашем случае вы должны принять [Calendar Date] в качестве start_date, а number_of_working_days установить в 1. Проверьте, равен ли результат WORKDAY с этими аргументами сегодняшней дате, и установите для ячейки значение "YES".

Кроме того, вы можете передавать праздничные дни в функцию WORKDAY, чтобы учесть также нерабочие дни.

Поместите что-то вроде этого в ячейку:

=IF(WORKDAY([Calendar Date];1)=TODAY();"YES";"NO")

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .