需要Excel高级查找/参考公式

时间:2011-02-17 13:33:37

标签: excel excel-2007

我正在尝试根据三个条件在一张表中查找值。查找公式位于操作数据表中,其中包含来自机器的数据,该数据每十分钟报告一次,其结构类似于下表(为简化起见而简化)

DateTime                  Status   =>   ShouldBe
01/12/2010  01:00:01      ?             16
01/12/2010  02:00:01      ?             16
01/12/2010  03:00:01      ?             16
01/12/2010  04:00:01      ?             0
01/12/2010  05:00:01      ?             0
01/12/2010  06:00:01      ?             0
...
08/12/2010  07:00:01      ?             204

状态列应引用状态数据表,其中包含机器运行状态的数据。这仅报告机器状态的变化,即不是周期性的。 状态数据表具有类似于下面的结构(为简化起见再次简化)

Error Code        Start Time                       End Time
16                01/12/2010  00:00:01             01/12/2010  03:08:56
0                 01/12/2010  03:08:56             06/12/2010  12:01:21
204               06/12/2010  12:01:21             15/12/2010  01:14:01
0                 15/12/2010  01:14:01             20/12/2010  09:12:42

有什么想法吗?

- 编辑

从快速网络搜索中可以看出,有两种方法可以使用多种标准进行查找。首先是添加另一列连接的valeus并在连接的字符串上使用VLOOKUP。这是不合适的,因为我试图基于<和> (小于/大于)日期列。

我无法弄清楚如何使用MATCH,因为第三个参数定义了LOOKUP是一个更大/更小的天气,我无法将两者结合起来。

例如:

'操作数据'!日期时间> '状态数据'!StartTime '操作数据'!日期时间< '状态数据'!结束时间

2 个答案:

答案 0 :(得分:2)

如果在表单'状态'错误代码在列A中,开始时间在列B中

表单'运营数据'日期时间位于A列

对于第2行中的单元格,公式为

INDEX('Status'!$A:$A,MATCH(A2,'Status'!$B:$B,1))

假设工作表'状态'中的数据按开始时间

升序排序

答案 1 :(得分:0)

我认为你有几个选择:

1)您添加一个新列,它是您的3个查找条件的串联,并根据此进行查找。

2)第二个选项是INDEX MATCH数组公式,这里有一个例子:http://www.ozgrid.com/forum/showthread.php?t=46692&page=1

相关问题