Como arredondar um valor de hora?

2

Preciso arredondar o valor de algumas horas no excel no primeiro trimestre após):

  • 9:01 == > 9:15
  • 9:10 == > 9:15
  • 9:15 == > 9:15
  • 9:16 == > 9:30

e assim por diante

    
por Ale 30.04.2015 / 07:55

3 respostas

2

Você pode usar CEILING diretamente no valor inteiro

=CEILING(A1,"0:15")

Formatar como um valor de tempo

    
por 01.05.2015 / 17:30
2

Você pode usar a função de teto.

por exemplo. Se 9:01 estiver armazenado na célula A1:

=TIME(HOUR(A1),CEILING(MINUTE(A1),15),0)

A divisão da fórmula explica:

Minute(A1) - converta seu tempo 9:01 em 1 minuto.

Hour(A1) - converta seu tempo 9:01 em hora, ou seja. 9.

Ceiling(Minute(A1),15) - Com esse 1 minuto, o Excel irá arredondar para o primeiro trimestre de acordo com o múltiplo de significância do seu conjunto, ou seja. 15.

Finalmente, temos todos os ingredientes prontos e combinamos todos em formato de hora, indicando a hora, o minuto e o segundo usando:

TIME(HOUR(A1),CEILING(MINUTE(A1),15),0) - hora = 9; minuto = 15 (após o arredondamento); segundos não necessários, então, 0.

Espero que ajude.

Nota adicional por acaso, se o seu caso, como mencionado abaixo nos comentários dos outros (precisa considerar segundos no seu tempo também), você pode adicionar os segundos arredondados no seu cálculo de minuto e seguir arredondando para um intervalo de 15 minutos.

=TIME(HOUR(A1),CEILING(MINUTE(A1)+SECOND(A1),15),0)

p.s. Eu sugeriria manter sua fórmula tão simples quanto você poderia, sempre que você modelar e omitir qualquer consideração desnecessária. Se você lida com uma enorme quantidade de dados ou um grande número de fórmulas em sua planilha de excel, as coisas podem ficar mais lentas.

    
por 30.04.2015 / 11:34
1

Use

=-INT(-96*original_unrounded_value) / 96

A unidade de datas e horas no Excel é o dia; (Terça-feira às 9:00) + 1 = (quarta-feira às 9:00). Multiplique por 96 (= 24 × 4) para obtê-lo em unidades de um quarto de hora: (Terça-feira às 9:00) + 1 = (terça-feira às 9:15). Agora (terça-feira às 9:00) e (terça-feira às 9:15) são inteiros - inteiros consecutivos, para ser preciso - e todos os tempos entre eles são não-inteiros (isto é, frações). Vamos fingir, por simplicidade, que (terça-feira às 9:00) = 36 (9 × 4), (Terça-feira às 9:15) = 37 (9 × 4 + 1) e (terça-feira às 9:05) ≅ 36.333.

Quando você quer arredondar as coisas, uma das escolhas óbvias é a função INT() :

  • INT(1) = 1
  • INT(1.5) = 1
  • INT(1.9) = 1
  • INT(2) = 2

Como você pode ver, INT() reduz para o próximo inteiro inferior. Você quer cortar para cima (9:01 → 9:15), então pegamos o negativo do número para inverter a direção. Por exemplo, 9:05 → 36,333 → -36,333; e INT(-36.333) = -37 (porque INT() corta). Então mude o sinal novamente (→ 37) e divida por 96 para obter 37/96 = (9¼) / 24 → 9:15.

Para que os valores calculados pareçam tempos em vez de números, formatar as células como "Tempo".

    
por 30.04.2015 / 08:36