我有一列开始时间,范围从 23:30(晚上 11:30)到 01:00(凌晨 1:00)。到年底我将有 365 个开始时间。我需要该列的平均开始时间。只要我过了午夜,平均值(A:A)就很好用。但午夜之前就是一场噩梦。使用这 3 个数字 00:01、00:01、00:01,平均值为 00:01,这是正确且明显的,但如果我有 23:59、00:01、00:01,我得到的平均值为 08:00。所有单元格的格式均为 [hh]:mm。开始时间大约在午夜开始,可能很早开始例如 23:00 或者很晚开始例如 01:00。对此有什么想法吗?我很困惑。所有时间都是晚上。时间从 D6 列开始,平均值在 D5 中(+Average(D6:D370))时间永远不会早于 23:00 或晚于 01:30。但全年每周 7 天都是如此。D 列
05:06 <-- 这是 D5 的平均值,其数字列在“D”列中
00:12
00:08
00:15
23:54 将其更改为 00:00,平均值变为 00:19
01:01
答案1
仅使用这些数据:
时间从 D6 列开始,平均值在 D5 中(+Average(D6:D370))时间永远不会早于 23:00 或晚于 01:30。
你可以这样做:
- 将所有数据移至午夜后 (60 分钟) [如果超过 23:00 时,则减去 23 小时,如果超过 00:00 时,则加上 1 小时]
- 求平均值
- 然后减去移位值。
细节:
使用另一列作为辅助列,比如说 F6 中的 F 列,输入:
=IF(D6="","",IF(D6>=TIME(23,0,0),D6-TIME(23,0,0),D6+TIME(1,0,0)))
然后在 D5 中:
=AVERAGE(F:F)-TIME(1,0,0)
注意:如果我们将所有内容都加上 1 小时,23:30(数值 = 0.97916666667)将变成 1 天 + 30 分钟(数值 = 1.0208333333),因此平均值函数将在平均值中计算额外的 1 天。从晚上 11 点以后的时间中减去 23 小时将产生相同的变化(23:30 变成 0 天 + 30 分钟或 00:30(数值 = 0.0208333333),但在平均值计算中不会计算额外的 1 天。