Este fórum está sendo desativado

Depois de 9 anos, este fórum será desativado. Mas calma.... estamos migrando para uma comunidade no DISCORD. Junte-se a nós.

ENTRAR PARA DISCORD

Dúvidas sobre cálculos, funções simples e aninhadas, fórmulas matriciais, etc.
  • Avatar do usuário
Por MMDias
#30888
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)

Imagem

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á!
Avatar do usuário
Por gfranco
Avatar
#30931
Boa tarde.
Creio que o seguinte deva atendê-lo.
Código: Selecionar todos
  https://excelmaniacos.com/2016/12/20/udf-datasla-calculando-sla-service-level-agreement/amp/
Por MMDias
#30957
gfranco escreveu:Boa tarde.
Creio que o seguinte deva atendê-lo.
Código: Selecionar todos
  https://excelmaniacos.com/2016/12/20/udf-datasla-calculando-sla-service-level-agreement/amp/
Obrigado gfranco pela ajuda, mas não é bem isso que preciso.

No exemplo que deu é fornecido o inicio e o tempo SLA e a função devolve o final.

No meu caso eu digo qual o inicio e o final e necessito que a função devolva o tempo decorrido, tendo em atenção o horário de expediente.

Obrigado por tentar ajudar!
Por MMDias
#30970
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.

Imagem

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).

2) 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)))

3) 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)

4) Finalmente, faça testes (alterando as datas das colunas Início e Final) para verificar se tudo está Ok.
Você não está autorizado a ver ou baixar esse anexo.
long long title how many chars? lets see 123 ok more? yes 60

We have created lots of YouTube videos just so you can achieve [...]

Another post test yes yes yes or no, maybe ni? :-/

The best flat phpBB theme around. Period. Fine craftmanship and [...]

Do you need a super MOD? Well here it is. chew on this

All you need is right here. Content tag, SEO, listing, Pizza and spaghetti [...]

Lasagna on me this time ok? I got plenty of cash

this should be fantastic. but what about links,images, bbcodes etc etc? [...]

Estamos migrando para uma comunidade no Discord