Calculo de horas úteis


#1

Olá,

Preciso de calcular o tempo útil que passou entre a abertura de um processo e o seu fecho, mas tendo em atenção o horário de funcionamento

(de segunda a sexta 08:00-20:00, sábado 08:00-13:00, domingo fechado)

Exemplo

No exemplo eu sei que dia 04 domingo (00:00), dia 05 segunda (12:00) e dia 06 terça (06:40). No total deverá dar 18:40.

Alguém me consegue ajudar a conseguir colocar isto numa formula?

Obrigado desde já!


#2

Olá, @mmcdias. Acho que isto vai exigir um desenvolvimento mais elaborado, sendo assim, se tiver interesse em um desenvolvedor, mande um e-mail para exlplanilhas@gmail.com para conversarmos sobre o projeto.


#3

Bom dia!

Obrigado a todos, mas já consegui ajuda noutro local para resolver.

Seguem os passos para quem necessitar:

  1. Crie uma planilha com o nome de DataHora com o layout da figura abaixo.

a) Note que deve ser criada uma tabela do Excel na respectiva planilha com os seguintes rótulos de colunas Início, Final e Total. Dê a ela o nome de TabDH.

b) Somente digite os dados das colunas Início e Final (na coluna Total vai ser inserida a fórmula no passo 3).

  1. Em seguida, crie os seguintes nomes:

HsIn =DataHora!$A$2:$A$3
HsFi =DataHora!$B$2:$B$3
THsD =DataHora!$A$6:$A$8
DSDIn =DIA.SEMANA(TabDH[@Início])
DSDFi =DIA.SEMANA(TabDH[@Final])
DSD2DN_1 =DIA.SEMANA(LIN(INDIRECTO(INT(TabDH[@Início])+1&":"&INT(TabDH[@Final])-1)))

  1. Agora, coloque a fórmula abaixo na célula C11:
    =(DSDIn>1)(MÍNIMO(ÍNDICE(HsFi;1+(DSDIn=7));SE(INT([@Final])-INT([@Início])=0;MOD([@Final];1);2))-MED($A$2;ÍNDICE(HsFi;1+(DSDIn=7));MOD([@Início];1)))+(INT([@Final])-INT([@Início])>=2)SOMARPRODUTO(PROC(DSD2DN_1;{1;2;7};THsD))+(DSDFi>1)(INT([@Final])-INT([@Início])>0)(MED(MOD([@Final];1);ÍNDICE(HsFi;1+(DSDFi=7));$A$2)-$A$2)

  2. Finalmente, faça testes (alterando as datas das colunas Início e Final) para verificar se tudo está Ok.