Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Olá, preciso calcular o tempo gasto para concluir uma determinada atividade levando em consideração apenas o tempo gasto em horário comercial, sendo que trabalha-se de segunda a sexta das 08:00 até 12:00 e das 13:30 até 17:30 e nos sábados das 08:00 até 12:00.
Tentei utilizar a função networkdays porém ela considera apenas dias úteis de segunda à sexta e descarta o sábado.
Alguém tem alguma sugestão?
Att,
Claudimar Andreazza
Ola,
Andei pesquisando o forum e encontrei uma dica util para esta situação.
A função Networkdays() considera de Segunda a Sexta somente e possui um parâmetro que informa os feriados e estes não entram na contagem dos dias (mas este ultimo parâmetro não será utilizado).
Se pegar o período de 01/02/2013 até 28/02/2013 a função Networkdays() retornará 20 dias.
Para desconsiderar apenas os domingos você deve fazer o seguinte cálculo, obter a quantidade de semanas entre este período:
WEEK(01/02/2013) - WEEK(28/02/2013)
Esta operação irá retornar a quandidade de semanas que existem entre os períodos, em outras palavras retornará a quantidade de "Domingos" existentes entre este período.
Com esta lógica em mãos bsata apenas monstar a expressão (não cheguei a criar um exemplo, mas na pratica deve ser parecido com isso):
NETWORKDAYS('01/02/2013', '28/02/2013') - (WEEK(01/02/2013) - WEEK(28/02/2013))
O resultado desta expressão é a quantidade de dias (SEG-SAB) do período informado.
Agora precisa verificar o tratamento para o calculo das horas de quando é sabado pois são apenas 4 horas.
Abraços
Olá Claudimar,
Acredito que nesse caso, a solução é fazer um enriquecimento dos dados.
Toda data/hora, tem um número de serie, onde as horas são as casas decimais, facilmente conseguido com a ajuda do excel.
Exemplo:
28/01/2013 22:37 | = | 41302,94 |
Com isso, você pode criar uma relação entre as data/horas que você precisa definir como comercial tratando os intervalos, ou seja, de 41301,00 até 41301,60 (só exemplo), é comercial, se o horáriso são fixos em todas as semanas de todos os anos, dá para criar um rotina com autogenerate para criar uma tabela com todas as possibilidades dos últimos e próximos 5 anos, ou somente das datas existentes, depende da necessidade.
Na community tem exemplos de código que geram calendários, inclusive com feriados e etc, então, isso serve de base para "autogerar" um calendário comercial exclusivo para você relacionar com seus dados.
Qualquer dúvida, posta ai...
Abraço.