首页 > 解决方案 > 从一组连续读数中提取特定时间间隔的数据

问题描述

我正在寻找提取数据的替代方法,准确地说是风速,针对特定年份的特定月份。从 2004 年到 2019 年,我每隔 10 分钟阅读一次。

例如,我想提取 2008 年 2 月的所有值。

这就是它的样子

Timestamp           Speed (m/s)
01.01.2004 00:00    0
01.01.2004 00:10    8,11
01.01.2004 00:20    8,09
01.01.2004 00:30    8,27

我目前所做的是,使用 MATCH、ADDRESS 和 INDIRECT 的组合来获取每个月第一次和最后一次阅读的时间戳。

然后我会在数组函数中使用这些

WINDATAN - 是包含所有读数的表

2008             Start                     End
                 01.02.2008 00:00          29.02.2008 23:50
=MATCH()         214850                    219025
=ADDRESS()      'WINDATEN'!$B$214850       'WINDATEN'!$B$219025 
=INDIRECT()      21,36                      21.87

我想知道是否有更优雅的方式来实现我想要的?而不是整个地址和间接业务。

标签: excelexcel-formula

解决方案


假设您想获得特定一天中一段时间​​内的平均风速。您仍然可以使用 Match 获取第一行和最后一行,但随后使用以下方法获取 Index 以生成值数组:

=AVERAGE(INDEX(B:B,MATCH(C2,A:A,0)):INDEX(B:B,MATCH(D2,A:A,0)))

使用作为数组公式输入CtrlShiftEnter

在此处输入图像描述


推荐阅读