
Fórmula genérica
=WORKDAY(A1,1,holidays)
Resumo
Para gerar uma série dinâmica de datas que são apenas dias úteis (ou seja, de segunda a sexta), você pode usar a função WORKDAY. No exemplo mostrado, a fórmula em B6 é:
=WORKDAY(B5,1,holidays)
onde feriados é o intervalo nomeado E5: E6.
Explicação
Com uma determinada data de início, a função WORKDAY retornará uma data que não é um fim de semana ou feriado, n dias no futuro ou no passado. O argumento feriados é opcional e pode ser omitido. No exemplo, B5 é a data de início embutida em código. A fórmula abaixo em B6, copiada, é:
=WORKDAY(B5,1,holidays)
Como o argumento dias é definido como 1, a fórmula retorna o "próximo dia útil" em cada nova linha. Os feriados são fornecidos como o intervalo nomeado E5: E6, que contém datas. Aviso 24 e 25 de dezembro estão excluídos da lista, pois esses dias são feriados.
Todas as datas são formatadas com o formato de número personalizado "ddd d-mmm-aaaa".
Fins de semana personalizados
Se você precisar levar em consideração fins de semana personalizados (ou seja, fins de semana são apenas sábado, domingo e segunda-feira, etc.), você precisará mudar para a função WORKDAY.INTL mais robusta, que permite definir quais dias da semana são considerados considerados finais de semana, fornecendo um argumento de fim de semana na forma de um código especial, conforme explicado neste exemplo.
Outra maneira
Você também pode gerar uma série de dias de trabalho com uma fórmula que usa a função WEEKDAY. Nesse caso, a fórmula testa a data de início para ver se é sábado ou não. Nesse caso, 3 dias são adicionados à data de início. Caso contrário, apenas um dia é adicionado.
=IF(WEEKDAY(date)=6,date+3,date+1)