【问题标题】:Search for value in column Excel在 Excel 列中搜索值
【发布时间】:2016-04-07 17:01:46
【问题描述】:

我想将单元格中的值与整列匹配。换句话说,如果 col1 包含 col2 中的当前记录,它应该是匹配的。 即使不在同一行。结果应该如下:

Col1       Col2       Result
-------    -------    -------
A          B          match
B          F          not match
C          C          match
D          A          match

我已经研究了 VLOOKUP 和 LOOKUP,但它似乎无法为我提供我需要的东西

这是我迄今为止尝试过的:

=IFERROR(VLOOKUP(P:P,C:C,15,FALSE), "不匹配")

在第 17 列导致:

col15 col16 col17 不匹配 B B 不匹配 不匹配 D F 不匹配

【问题讨论】:

  • 为什么它不起作用?你能包括你试过的公式吗?
  • C:C 列是查找列吗?如果是这样,P:P 引用应该指向您要比较的每个单元格,如 P1P2 等等

标签: excel excel-formula


【解决方案1】:

这也可能对您有所帮助。试试下面的公式。

=IFERROR(IF(MATCH(B2,$A$2:$A$5,0)>0,"Match"),"Not Match")

【讨论】:

    【解决方案2】:

    你可以选择:

    =IF(ISNA(INDEX(A:A;MATCH(B1;A:A;0);1));"NOT MATCH";"MATCH")
    

    地点:

    • A:A:要搜索值的范围;在您的示例中,Col1;请注意,范围在公式中出现了两次
    • B1:你要找的价值;在您的示例中,来自Col2 的每个值

    尝试删除IFISNA 函数,看看INDEX 在找不到匹配项时的行为。

    这种方法优于VLOOKUP 替代方法,因为它不需要对查找列进行排序。

    【讨论】:

      【解决方案3】:

      为什么不使用匹配公式?使用这个公式....

      =IF(ISNUMBER(MATCH(B2,$A$2:$A$5,0)),"Match","Not match")
      

      截图

      【讨论】:

        【解决方案4】:

        你的公式:

        =IFERROR(VLOOKUP(P:P,C:C,15,FALSE), "NO MATCH")

        没有工作,因为您的 Vlookup 导致错误。
        主要原因是您将15 放在 column_index 中,但实际上您没有第 15 列,因为您只为 table_array 选择了 C:C 的 1 列。

        另一个是你 lookup_value 应该是单个单元格,而不是 P:P,例如应该是 P1

        要使其正常工作,您需要将其更改为:

        =IFERROR(VLOOKUP(P1,C:C,1,FALSE), "NO MATCH")

        这将导致找到的值或不存在的值的“不匹配”。
        为了得到你想要的结果,这个公式应该可以工作。

        =IF(ISERROR(VLOOKUP(P1,C:C,1,FALSE)),"not match","match")

        【讨论】:

          猜你喜欢
          • 2017-01-27
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2013-04-18
          • 1970-01-01
          • 2021-04-05
          • 1970-01-01
          相关资源
          最近更新 更多