【问题标题】:Sheets - Lookup using 3 criteria including variable表格 - 使用 3 个条件(包括变量)进行查找
【发布时间】:2020-04-30 12:12:19
【问题描述】:

努力使用 arrayFormula 和 vlookup 来匹配另一个工作表选项卡中的引用数据,以根据行和列成员关系提取百分比。

我目前有:=ArrayFormula(vlookup(Orange&7,{A1:A&B1:B,C1:E},match("Skill 3",A1:E1,0)-1,0))

在共享的 Google 表格中,我放置了注释和解释。这是一个游戏的参考表,其中提到了英雄技能统计数据。

MISSION:使用输入的英雄职业“颜色”和“技能等级”从相应的技能栏中获取“百分比”。这需要 3 次才能满足所讨论的 3 种不同技能类型。

这是表格:TEST Sheet

【问题讨论】:

    标签: google-sheets match vlookup array-formulas


    【解决方案1】:

    方法

    使用多个条件创建VLOOKUP 将需要一个由两个(或多个)条件连接而成的辅助列。 在您的情况下,您应该构建一个连接颜色和级别的列。您的查找将搜索该值并在第 4 列中返回相应的百分比。 像这样在 Hero Lead 中拥有你的桌子:

    +==========================================+
    |  A   |  B  |  C  |   D   |   E   |   F   |
    +------+-----+-----+-------+-------+-------+
    |Lookup|Class|Level|Skill 3|Skill 4|Skill 7|
    +------------------------------------------+
    

    您可以使用此公式检索Skill 3 的正确值

    =VLOOKUP("Orange"&7,'Hero Lead'!A:D,4,0)
    

    只需使用其他参数复制公式即可检索正确的百分比水平。

    【讨论】:

    • 我更喜欢你的。稍微修正一下:=ARRAYFORMULA( VLOOKUP( C36 & "♥" & G36:G38, { 'Hero Lead'!A2:A & "♥" & 'Hero Lead'!B2:B, 'Hero Lead'!C2:E }, MATCH( "Skill " & F36:F38, 'Hero Lead'!$C$1:$E$1, 0 ) + 1, 0 ) )
    • 我不知道其他 VLOOKUP 参数。这就是我没有使用数组公式的原因。
    • 看起来MATCH 不是必需的:=ARRAYFORMULA( VLOOKUP( C36 & "♥" & G36:G38, { 'Hero Lead'!A2:A & "♥" & 'Hero Lead'!B2:B, 'Hero Lead'!C2:E }, {2; 3; 4}, 0 ) )
    【解决方案2】:

    这里有一个解决方案:

    =IFERROR(
      INDEX(
        QUERY(
          'Hero Lead'!$A$2:$E,
          "select C, D, E
           where A = '" & $C$36 & "' and
                 B = " & G36,
          -1
        ),
        0,
        MATCH(
          "Skill " & F36,
          'Hero Lead'!$C$1:$E$1,
          0
        )
      ),
      0
    )
    

    这会让您从使用QUERY 按级别和颜色过滤的行中获得正确的技能提升。


    如果您同时需要所有三个固定颜色和固定级别(在列中因此TRANSPOSE):

    =TRANSPOSE(
      FILTER(
        'Hero Lead'!$C$2:$E,
        'Hero Lead'!$A$2:$A = $C$36,
        'Hero Lead'!$B$2:$B = G36
      )
    )
    

    或:

    =TRANSPOSE(
      QUERY(
        'Hero Lead'!$A$2:$E,
        "select C, D, E
         where A = '" & $C$36 & "' and
               B = " & G36,
        -1
      )
    )
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-01-04
      • 2011-12-12
      • 2011-05-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-22
      相关资源
      最近更新 更多