1

MATCH我在 Microsoft Excel 中对该函数的应用有问题。

我已经习惯了使用INDEX-MATCH组合并且以前从未遇到过这样的问题。

问题是MATCH函数返回的行号在查找数组之外。

输入数据可能看起来有点复杂:

  • A包含间隔 10 分钟的日期时间(例如:08.03.2016 00:00、08.03.2016 00:10、08.03.2016 00:20、dd.mm.yyyy hh:mm)。
  • B包含查找数组,由与每个日期时间相关的不同值集组成。

该列表很长,B 列不是唯一的结果值列,这也是我创建一些命名范围的原因。

有问题的功能是:

=MATCH(E37;INDEX(MainData;MATCH(E18+E19;DateSelector;0);COLUMN(hex1_cur)):INDEX(MainData;MATCH(E21+E20;DateSelector;0);COLUMN(hex1_cur));1)

命名范围是:

  • MainData= 所有日期时间和结果单元格,大约A4:D2000.
  • DateSelector= 日期时间单元格(动态数组,确认 Column 中的单元格数量A)。
  • hex1_cur= 结果列的标识符,在这种情况下表示 Column B

E18+E19形成评估期的开始日期时间,并E21+E20标记结束点。

E37具有查找值,如您所见,我使用match_type 1,因为我想找到小于或等于我的查找的最大值。

为什么该功能在屏幕截图的第一个评估期(公式在 中D38)有效,但在下一个()中不再有效E38

请注意,INDEX-MATCH主 MATCH 搜索的查找数组部分中的数组工作正常,因此故障不应该在我的命名范围内。

在这个工作表中,我也将这个完全相同的结构用于其他目的,到目前为止它是正确的。

那么我的公式中的 main 函数如何在-restricted 查找数组MATCH之外返回行号?INDEX-MATCH

在这个测试用例中,查找数组从行到行INDEX-MATCH产生准确的位置结果,但结果行号为,如图中的图片所示。18730939E38

相反,公式61的结果row 准确地位于其自己定义的查找数组中:D38INDEX-MATCH

屏幕截图显示公式单元格的结果行和位置

我很抱歉解释不清楚。请询问您是否没有正确理解情况。

4

1 回答 1

1

混淆在于您对Match函数结果的解释。结果不是行号,而是相对于提交的数组参数开头的位置。

在这个测试用例中,INDEX-MATCH 查找数组从第 187 行到第 309 行产生准确的位置结果 - 但结果行号为 39

在本例中,结果 39 表示第 225 行;即距离数组开头39处。

于 2017-06-26T10:31:10.653 回答