【问题标题】:Nested IF, INDEX and MATCH in Google SheetsGoogle 表格中的嵌套 IF、INDEX 和 MATCH
【发布时间】:2016-06-21 10:45:43
【问题描述】:

我正在尝试在 Google 表格中返回一个值。 这是使用索引匹配完成的,如下所示,确实有效:

=iferror(index(Data!B:B, match(B5339,Data!G:G,0)),"Not Found")

我现在想扩展它,如果第一次测试失败,请尝试在另一张表中查找相同的数据....

=iferror(if(index(Data!B:B, match(B5340,Data!G:G,0),if(index(HeadOfficeLeads!B:B, match(B5340,HeadOfficeLeads!A:A,0))))),"Not found")

这会输出“未找到”的失败消息。 然而,虽然第一个测试确实是假的,但第二个测试是真的(这第二个数据集实际上是匹配的)。

注意 - 第二张纸上包含此正确匹配的数据是由 UNIQUE ( FILTER, FWIW.... 创建的

由于某种原因,看起来第二个 IF 语句没有运行 - 整个事情都不起作用,给出错误“参数数量错误”。

我感觉争论的问题是第一个测试没有“if false”子句 - 但相信“IFERROR”父母应该处理这个? 如果不是,我会将IF's 的“if false 子句”放在哪里?

【问题讨论】:

    标签: if-statement google-sheets match


    【解决方案1】:

    您不需要任何if,因为iferror 的逻辑中已经包含if 语句(顾名思义)。以下是嵌套 iferror 语句的示例,为清楚起见进行了简化:

    =iferror(match("a", A1:A5, 0), iferror(match("a", B1:B5", 0), "not found"))
    

    这将返回 A 列中“a”的位置(如果存在);否则,如果它存在,它将返回其在 B 列中的位置,否则返回“未找到”。

    indexmatch 函数周围的任何其他内容相同。

    【讨论】:

      猜你喜欢
      • 2021-01-03
      • 2015-05-12
      • 1970-01-01
      • 1970-01-01
      • 2013-10-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多