Время округления до ближайшего 15-минутного интервала в Excel

У меня есть таблица Excel со столбцом, в котором указаны дата и время определенного события. Я хотел бы округлить это до ближайшего 15-минутного интервала, чтобы я мог подсчитать общее количество событий за этот период. Как лучше сделать округление?


person macleojw    schedule 03.09.2009    source источник
comment
Всегда округлять или в любом случае?   -  person databyss    schedule 03.09.2009


Ответы (11)


Поскольку вы сказали, что вам также нужна дата, как насчет этого:

= (ROUND((A1 * 1440) / 15, 0) * 15) / 1440

Предполагая, что A1 имеет нужное значение даты/времени. Это использует тот факт, что столбцы даты/времени в Excel представляют собой просто числа (целая часть — это дата, дробная часть — это время)

person David    schedule 03.09.2009

Если вы хотите округлить до ближайших 15:

Предполагая, что ваше время находится в ячейке A2

Мы поместим наше новое время в B2:

B2 =TIME(HOUR(A2), ROUND((MINUTE(A2)/60)*4, 0) * 15, 0)

Если вы хотите всегда округлять вверх или вниз, вы замените ОКРУГЛ на ОКРУГЛВВЕРХ или ОКРУГЛВНИЗ

person databyss    schedule 03.09.2009

просто:

  • если округлить в большую сторону =ПОТОЛОК(A1;"00:15")
  • при округлении вниз =ПОЛ(A1, "00:15")

Где A1 — разница между двумя значениями времени. Это может быть ссылка или расчеты: =CEILING(C2-B2,"00:15"), где C2 — время окончания, а B2 — время начала.

person SoteR    schedule 17.03.2014
comment
Это, безусловно, самое простое решение, а также самое легкое для чтения. - person Brett Moan; 05.01.2017
comment
Это именно то, что мне нужно. Спасибо. - person RedDragonWebDesign; 12.01.2017

mround принимает значения времени в виде строк, поэтому вы можете использовать

=mround(a1,"0:15")

который я считаю самым коротким и ясным методом.

person pooroldpedro    schedule 13.05.2015

Дата и время округлены до ближайшего 15-минутного периода (вы всегда можете округлить вверх/вниз, используя что-то вроде INT):

=DATE(YEAR(B1),MONTH(B1),DAY(B1))+TIME(HOUR(B1), ROUND(MINUTE(B1)/15,0)*15, 0)

Предположим, что ячейка B1 содержит дату и время для округления. Это вернет число в типичном виде последовательной даты (например, 39846.64444 = 02/02/2009 15:28), и вам нужно отформатировать ячейку результата как дату/время, чтобы увидеть значение (как и во всех решениях этой проблемы). Отображение даты и времени вместе не является стандартным форматом даты или времени, для этого вам нужен пользовательский формат.

person Joel Goodwin    schedule 03.09.2009

Только что нашел полезную функцию ОКРУГЛ, которая доступна в Excel 2007 и в качестве надстройки для анализа.

Предполагая, что ваше время указано в B2, а число вроде 8,43 соответствует 8 часам 25,8 минутам:

=MROUND(MOD(B2,1)*60,15)

MOD(B2,1) извлечет дробную часть 0,43; *60 преобразуется в 25,8; и ОКРУГ будет округлять вас до ближайшего числа, кратного 15, а именно 30.

person rajah9    schedule 21.01.2011
comment
Меньше печатать: = КРУГЛЫЙ (a2, ВРЕМЯ (0,15,0)). Вы можете изменить 0,15,0 на любое кратное округлению. Например, если вам нужен ближайший час: = КРУГЛЫЙ (a2, ВРЕМЯ (1,0,0))). Функция времени (час,минута,секунда). - person sk8asd123; 20.08.2013

Предполагая, что у вас есть 2 даты и вы хотите найти общее количество и округлить до ближайших 15 минут:

A1 = 7/10/2014 16:10    
A2 = 7/10/2014 17:49

Сначала получите сумму в десятичных часах:

A3:   =(A2-A1)*24

Затем вы можете округлить до ближайшей четверти часа:

A4:  =Ceiling(A3, .25)

Или сделать все это на одной ячейке:

A3:  =Ceiling((A2-A1)*24, .25)
person Eric    schedule 11.07.2014
comment
Определенно самый простой ответ здесь. Также используйте Floor(‹val›, 0.25) для округления до ближайших 15 минут. - person Brian Vander Plaats; 13.03.2016

Если время находится в ячейке A1:

=ROUND(A1*(24*60/15),0)/(24*60/15)

(Округление до ближайшего 15-минутного приращения)

or

=INT(A1*(24*60/15),0)/(24*60/15)

(Округление до последних 15 минут)

person JDunkerley    schedule 03.09.2009

Проще ??

=B2-MOD(B2,15/24/60)

Зная, что для Excel 1 день = 24 часа = 1,
15/24/60 (= 0,0104166666666667) является числовым эквивалентом 15 минут.

person Patrick Honorez    schedule 03.09.2009

Это сработало для меня

=CEILING(((MOD(D16-C16;1))*24);0,25)

Сначала вычисляется разница во времени двух разных времен C16 и D16 в часах. Потом округляет.

person user3481381    schedule 31.03.2014

Будь проще. Округляет до ближайшего 15-минутного интервала.

= ROUND(B2 * 24 * 4, 0) / 4 / 24
person IvanD    schedule 20.03.2015