#值!数组索引和匹配错误

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了#值!数组索引和匹配错误相关的知识,希望对你有一定的参考价值。

以下数组索引和匹配是否有任何明显错误?

我无法解决问题,我得到的只是一个#Value!没有进一步信息的错误。

{=INDEX(Sheet2!A:G,MATCH(1,(Sheet2!B:B=Sheet_1_crosstab!C2)*

(Sheet2!C:C=Sheet_1_crosstab!A2)*(Sheet2!D:D=Sheet_1_crosstab!T2),0),5,0}

表2看起来像这样:

Locale  provider    source_aggregated   Week num    Desktop Mobile  Tablet
AT                     Clickouts            40           0    0       0
AT                     Clickouts            41           0    0       0
AT                     Clickouts            42           0    0       0
AT                     Clickouts            43           0    0       0

表1看起来像:

Locale  provider    source_aggregated   Week num    Desktop
AT                     Clickouts            40      ={indexmatch..         
AT                     Clickouts            41                     
AT                     Clickouts            42                     
AT                     Clickouts            43                    

我正在尝试根据匹配的区域设置,提供程序和源将工作表2中的设备拆分与工作表1中的总体流量数据相匹配。

答案

MATCH函数需要lookup_array参数的一系列单元格。

作为乘法布尔数组的结果,您可能传递1或0。

那是

=(Sheet2!B:B=Sheet_1_crosstab!C2)*(Sheet2!C:C=Sheet_1_crosstab!A2)*(Sheet2!D:D=Sheet_1_crosstab!T2)

如果有效,这将产生True False数组,这将导致True或False,即1或0。

所以实际上你有

=INDEX(Sheet2!A:G,MATCH(1,1,0),5,0)

要么

=INDEX(Sheet2!A:G,MATCH(1,0,0),5,0)

要么失败,因为预期的Match参数应该是一个范围。

如果您尝试进行查找,请考虑包含唯一键的辅助字段

关键字段使用感兴趣的字段的串联来使其唯一

=CONCATENATE(B2,C2,D2,E2)

关键领域:

Key

使用密钥检索桌面号码等

=VLOOKUP(CONCATENATE(A2,B2,C2,D2),Sheet2!A1:H5,MATCH(Sheet1!E1,Sheet2!1:1,0),FALSE)

注意:我使用Match查找Sheet2在Sheet2的第1行中的位置,然后定义要返回的查阅列。

你会匹配Sheet1!F1如果Mobile在那个单元格中等等。

工作表中的查找:

Lookup

请记住在必要时将范围修改为绝对值。

以上是关于#值!数组索引和匹配错误的主要内容,如果未能解决你的问题,请参考以下文章

Excel - 需要从数组中搜索列表单元格的子字符串,无法获得索引/匹配工作吗?

在索引(匹配)数组中查找最小值 [EXCEL]

错误代码:错误域 = NSCocoaErrorDomain 代码 = 3840“JSON 文本没有以数组或对象和允许未设置片段的选项开头。”

在java上给出错误索引的数组的二进制搜索

索引匹配具有多个条件的唯一值?

我是不是在查找数组中最小值的索引时引用或实例错误?