【问题标题】:Does VLOOKUP work for booleans?VLOOKUP 是否适用于布尔值?
【发布时间】:2017-04-11 11:31:42
【问题描述】:

我对 Excel 中的 VLOOKUP 有一个小问题。假设我们有以下工作表:

现在 E 列只包含数字,F 列包含公式,例如:“=E6 = 3”,因为我最喜欢的数字是 3。这些都是逻辑值,由 Excel 中的 ISLOGICAL 函数确定。

现在我想做一个 VLOOKUP(TRUE, E6:F13, 1)。我希望它是 3,但我得到一个 #N/A。如何使用 VLOOKUP 比较逻辑值?

你们中的一些人建议我 VLOOKUP 只在第一列中搜索。现在,如果我们将 F 列与 E 列交换,我们会得到类似的结果(注意:我稍微移动了列):

8 对我来说没有意义。有人可以解释发生了什么吗?

【问题讨论】:

  • 用count怎么样呢?我认为 Vlookup 不会采用布尔值。
  • 嗯,我想找一个等于true的布尔值,然后在另一列中返回与之关联的值。
  • 您需要在第二个场景中添加 false 作为最后一个参数。 VLOOKUP 返回值为 1 的“TRUE”,因此除非您输入 false,否则它不会将您的查找值作为匹配项。你想要:=VLOOKUP(TRUE,D6:E13,2,FALSE)
  • 话虽如此,INDEX:MATCH 在任何一种情况下都适用,如下面的回答所示。在大多数情况下,它是比 VLOOKUP 更强大的替代品。

标签: excel excel-formula excel-2016


【解决方案1】:

您可以使用 INDEX:MATCH 代替 vlookup:

=INDEX(E6:E13,MATCH(TRUE,F6:F13,0))

编辑: 对于您修改后的布局,您可以使用:

=INDEX(E6:E13,MATCH(TRUE,D6:D13,0))

编辑2:

为了清楚起见,VLOOKUP 将使用经过修改的布局的布尔值:

=VLOOKUP(TRUE,D6:E13,2,FALSE)

【讨论】:

    【解决方案2】:

    VLOOKUP 从左到右工作,你正在寻找一个从右到左的值,所以它不会工作。即使您交换 FavoriteNumber 列,它也不起作用,因为 VLOOKUP 似乎无法与布尔值一起正常工作。

    【讨论】:

    • VLOOKUP 确实适用于具有修改后布局的布尔值。不过,您对从左到右的问题是正确的。 =VLOOKUP(TRUE,D6:E13,2,FALSE) 有效,但需要最后一个参数才能使其有效。
    猜你喜欢
    • 2011-10-08
    • 2018-02-22
    • 2011-01-17
    • 1970-01-01
    • 2019-06-06
    • 1970-01-01
    • 2016-11-13
    • 2016-10-23
    • 1970-01-01
    相关资源
    最近更新 更多