Excel VLOOKUP(两个值的总和,数组(值1 + 2的总和)

Excel VLOOKUP(sum of two values, array(sum of value 1 + 2)

标题可能尽可能地古怪,但我是新手,正在尝试。

我想要 sheet 设置:

User Role | Permission

但一个权限也可以申请多个用户角色,

所以我想创建一个对用户更友好的 sheet 我在哪里绘制:

              User role x | User role y| User role z
Permission 1
Permission 2
Permission x

并希望将其显示为真或假,或其他。

但我有点卡住了,因为我最疯狂的 VLOOKUP 只是在另一个 sheet 中查找 1 个值。我还看到了某种形式的匹配和索引组合,也许这可行?

你们能帮我解决这个问题吗?

澄清一下。我想在 sheet 中将值设置为 true 首先有一行包含用户角色和权限。如果这是真的,那么它应该是真的。如果有用户角色但没有权限,则为 false。反之亦然。因此只有当 sheet 1 中有一行 A{X} 和 B{X} 组合起来等于 {X}1 和 A{X}

这是一种方法:

  • 确保第一个 sheet 中的数据首先按用户角色排序,然后按权限排序。

  • 在您的第一个 sheet 中添加一列,其中包含用户角色和权限的唯一哈希值。例如,如果这些都是数值,在 A 和 B 列中,并且权限的最大值小于 100,则可以使用:

    = A1 * 100 + B1

  • 现在,您可以对该散列列(我们称之为 C)执行 VLOOKUP。因此,在第二个 sheet 中,在 B2 中,您将

    = NOT( ISNA( VLOOKUP(B$1 * 100 + $A2, Sheet1!$C:$C, 1, FALSE) )

这将 return 只要 VLOOKUP 可以在散列列上找到与列和行的散列相对应的值 headers 就为 TRUE,如果找不到则为 FALSE。

由于缺少任何工作表名称或实际的单元格引用,因此很难提供一站式公式,但也许您可以出于自己的目的从图像中转录该公式。

B2中的公式为,

=AND(COUNTIFS($F:$F, B, $G:$G, $A2))

根据需要向右和向下填充。添加了 AND 函数以满足您对 TRUE/FALSE 答案的请求。如果删除,您将获得匹配项的数量。