Excel - converte dias hh: mm: ss em minutos (incluindo valores negativos)

1

Dados fornecidos no formato a seguir (ou seja, dias úteis: minutos: segundos):

-4 1: 0: 0.0

Como posso converter isso para minutos no Excel? (por exemplo, 5820 minutos)

Atualmente faço o texto para colunas (coluna de dias; coluna hh: mm: ss) e do = ([@ Dias] + [@ Horas]) * 24 * 60; mas isso dá o valor errado quando os dias são negativos (por exemplo, -5700).

Alguém tem uma fórmula elegante?

    
por Chris 20.09.2012 / 20:10

3 respostas

2

Supondo que sempre haverá horas nos dados (mesmo que zero) e, portanto, um espaço, tente esta fórmula para extrair os minutos de seus dados originais em A1

=(LEFT(A1,FIND(" ",A1))+MID(A1,FIND(" ",A1)+1,20)*IF(LEFT(A1)="-",-1,1))*1440

Isso deve dar -5820 para o seu exemplo - é o resultado esperado ou você sempre quer um valor positivo?

    
por 20.09.2012 / 21:37
1

Envolva a função abs em torno da referência da célula aos dias. Por exemplo, se o dia foi armazenado em A1, substitua o A1 por abs(A1) . Isso retornará automaticamente o número sem um sinal, portanto, os números negativos serão retornados como um número positivo, fazendo com que a função funcione corretamente.

Eu faria isso por você, mas não sei como sua planilha está configurada e qual formato de célula você está usando. Se você anexou (a parte relevante) da sua planilha à sua pergunta (faça o upload para o Dropbox ou Mediafire ou similar), então eu faria isso.

    
por 20.09.2012 / 20:50
1

(não entendo como o Chris está usando o @ para indicar nomes de coluna. Não funciona para mim. Na minha solução, cada coluna é um intervalo nomeado (dias e horas) e o nome do intervalo nu aparece em a fórmula.)

É importante notar que as colunas both contêm números. A coluna Horas contém uma fração; já que é formatado como uma hora, isso é interpretado como uma fração de um período de 24 horas. Isso tem que ser verdade, ou a fórmula

 =(Days+Hours)*24*60

não faria nada útil, mesmo para valores positivos.

Agora, estamos adicionando juntos valores sempre positivos ou negativos. O valor Dias sempre tem o sinal correto, mas o valor Horas é sempre não negativo, mesmo quando deveria ser negativo. Por isso, precisamos alterar o valor de Horas quando Dias for negativo:

 =(Days+IF(Days>=0,Hours,-Hours))*24*60
    
por 21.09.2012 / 00:23