Calcular 9 a 5 horas


-1

Eu quero calcular o número de horas de negócios entre 2 dias.

Por exemplo

A                   B
15/05/2013 13:25    31/05/2013 10:20
19/05/2013 09:12    22/05/2013 21:10

Eu quero obter resultado na coluna C com possível termo seguinte ..

6d 15h 20m

ou qualquer coisa semelhante ao acima. Por favor ajude.


1
Não tenho certeza se entendi completamente. Qual deve ser o resultado da primeira linha do seu exemplo? 6d 15h 20m? Você poderia esclarecer?
— Jerry

Desculpe Jerry. Sim esse resultado eu quis dizer. Eu preciso de horas totais de trabalho na coluna C. (BA), mas eu estou completamente inconsciente da fórmula.
— Parthiv

1
Isso é um pouco mais complicado do que apenas uma diferença de horas. Você levará em conta os fins de semana? Dias de folga? Feriados? Ou apenas a diferença de horas? E a propósito, 6d 15h 20m não é um número de horas.
— Viajando Tech Guy

Respostas:


2

A solução é apresentada neste site e envolve uma fórmula bastante complexa:

=IF(AND(INT(StartDT)=INT(EndDT),NOT(ISNA(MATCH(INT(StartDT),
HolidayList,0)))),"0 days 0 hours", IF(INT(StartDT)=INT(EndDT),
"0 days " & ROUND(24*(EndDT-StartDT),2)&"hours",
MAX(NETWORKDAYS(StartDT+1,EndDT-1,HolidayList),0)+
INT(24*(((EndDT-INT(EndDT))-(StartDT-INT(StartDT)))+
(DayEnd-DayStart))/(24*(DayEnd-DayStart)))&
" days "&MOD(ROUND(((24*(EndDT-INT(EndDT)))-24*DayStart)+
(24*DayEnd-(24*(StartDT-INT(StartDT)))),2),
ROUND((24*(DayEnd-DayStart)),2))&" hours "))

Assume os seguintes nomes:

  • StartDT - Data e hora de início ( 25-Oct-99 13:00)
  • EndDT - data e hora de término ( 28-Oct-99 15:00)
  • DayStart - Início de um dia de trabalho ( 9:00)
  • DayEnd - Fim de um dia de trabalho ( 17:00)
  • HolidayList - Um intervalo contendo uma lista de datas a excluir

Eu não posso testá-lo como não tenho o Excel, mas ele deve fazer o trabalho. É claro que você pode alterar a fórmula para obter resultados diferentes.


Não retornou o valor. Dá 0 dias 0 horas
— Parthiv

1
@pnuts Obrigado por confirmar isso. Não tenho o Excel para tentar alterá-lo, portanto, se você puder criar uma maneira simples de obter a saída desejada, sinta-se à vontade para editar minha resposta.
— slhck

0

Você não pode chegar ao seu resultado desejado em uma única célula, mas você pode calcular a duração em C1 (assumindo que você está na linha 1) usando =ABS(B1-A1). Isso fornecerá o número de dias como um valor de ponto flutuante. Você pode então usar outras células e fórmulas para dividir esse número em horas, minutos e segundos, usando ROUNDDOWN()para calcular inteiros.


Edit: Aqui está o conteúdo da minha planilha de exemplo, já que não consigo anexá-lo aqui e não sei quais são as políticas de vinculação a arquivos que podem ou não estar lá no futuro. Isso calcula todo o tempo na duração, não apenas das 09:00 às 17:00 M – F. @ resposta do slhck pode ser mais adequada.

Linha 1: (A) Start (B) Stop (C) Days (D) Hours (E) Minutes (F)Seconds

Linha 2: (A) 5/1/2013 17:55:00 (B) 6/3/2013 1:22:00 (C) =ROUNDDOWN(ABS(B2-A2)) (D) =ROUNDDOWN(((ABS(B2-A2))-C2)*24) (E) =ROUNDDOWN(((((ABS(B2-A2))-C2)*24)-D2)*60) (F)=((((((ABS(B2-A2))-C2)*24)-D2)*60)-E2)*60


Esta questão é provavelmente sobre a segunda parte que você não descreve em detalhes. Exemplo: das 17:00 às 17:00 de sexta-feira dá o mesmo resultado de seg 8:00 a qua 17:00.
— Daniel Beck

@DanielBeck Eu atualizei a minha resposta em resposta ao seu comentário.
— jsejcksn
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.