在这种情况下如何使用索引匹配从左到右和从右到左

在这种情况下如何使用索引匹配从左到右和从右到左

我试图使用索引公式获取上述日期的任何人的数据,但总是返回无效值。我该怎么做呢?因为数据导出日期总是在最后一列。

我正在做什么:从下拉菜单(数据验证选项)中选择给定 Excel 表中的人名,然后选择日期以显示特定日期针对特定代理的所有数据

对于下面提到的数据我使用

=index(A:E,match(sheet2!A1,A:A,0),Match(sheet2!B1,B:B),Match(sheet2,C1,E:E))

总是给出 N/A。

请帮忙

Login ID         ACD Calls  Avg ACD Time    Avg ACW Time    Date
Qayyum              64       :03:10            :00:03      1/5/2017
Abdul               80       :02:56            :00:05      1/3/2017
Abdul               107      :03:07            :00:04      1/4/2017
Abdullah            62       :02:12            :00:02      1/2/2017
Afreen jahan        94       :02:55            :00:07      1/3/2017
Afreen jahan        81       :03:05            :00:08      1/2/2017

工作表2

A1                       B1                      C1
Abdul                  ACD Calls              1/2/2017  

答案1

您正在为二维区域提供 3 个坐标。

当您评估 Index 函数时,返回中的 Match 函数3,3,3。Excel 不知道如何处理额外的坐标。Excel 期望3,3- 第三行,第三列。

要查看基于登录、呼叫和日期的平均 ACD 时间,请使用以下公式:

=INDEX($C$2:$C$7,1,SUMPRODUCT(--($A$2:$A$7=Sheet2!$A$1),--($B$2:$B$7=Sheet2!$B$1),--($E$2:$E$7=Sheet2!$C$1)))

要查看基于登录、呼叫和日期的平均 ACW 时间,请使用以下公式:

=INDEX($D$2:$D$7,1,SUMPRODUCT(--($A$2:$A$7=Sheet2!$A$1),--($B$2:$B$7=Sheet2!$B$1),--($E$2:$E$7=Sheet2!$C$1)))

这是根据 Sheet2 上的布尔值对列进行索引,使 Sheet1 中的相应列与 Sheet2 上的值相匹配。如果未找到任何内容,它将返回列标题。您需要调整公式范围以匹配您的数据范围。

答案2

更准确地说,INDEX()确实知道如何处理第三个坐标并尝试这样做。

那个“第三”(第四,因为范围是第一个,并且MATCH()添加了“坐标”2、3 和 4)是参数AREA

INDEX()允许您拥有多个区域(范围),它将分别处理这些区域。它们可以是连续的或不连续的,甚至可以重叠或重复。您可以在第四个参数中告诉它要处理哪一个。

此处提出的问题只有一个区域。因此,要求INDEX()使用第三个区域会失败(N/A 错误),因为没有第三个区域可用。

以上仅供理解。解决方案仍然是以不同的方式做事!你知道,通过不指定AREA的参数。

相关内容