Filtro de datas VBA

Filtro de datas VBA

A maneira mais fácil de explicar isso é usar um exemplo. Tenho duas datas (fe) "2014-08-08T8:11:31" e "2014-08-11T13:53:29". Preciso dar a eles o formato adequado (data), excluir fim de semana (sábado, domingo) e alterá-lo para horário de trabalho. No nosso caso é fim de semana e 2 horas para almoço - primeiro dia quase 8 horas (das 8 às 17) e segundo dia quase 5 horas. Juntos 13 horas. Insira duas datas e horas de saída (ou MD)

Responder1

A função NETWORKDAYSpode calcular o número de dias úteis entre duas datas. Para converter de dias para horas, precisamos multiplicar por 8.

Além disso, você precisa calcular o número de horas do primeiro dia (a diferença entre 17 horas, ou 17/24parte do dia) e do último dia (a diferença entre o horário de término e 8 horas, ou 8/24). Como calculamos as horas do primeiro e do último dia, temos que subtrair 2 da NETWORKDAYSresposta.

Então se sua data de início estiver em A1 e sua data de término em A2, sua função final será: =(NETWORKDAYS(A1;A2)-2)*8+17/24-MOD(A1;1)-8/24+MOD(A2;1).

Observe que não há verificação da integridade dos dados de entrada na fórmula.

informação relacionada