【问题标题】:Can I INDEX,Match,Search one cell for two separate lists and return the result that has both?我可以对一个单元格进行索引、匹配、搜索两个单独的列表并返回同时包含这两个列表的结果吗?
【发布时间】:2017-10-25 20:46:35
【问题描述】:

背景故事

我的任务是创建一个系统,根据用户输入的最少信息为用户填写 excel 文件。这包括类别,我们有太多的类别。我有一个函数可以在一个单元格中搜索一个标准列表并返回相邻单元格的结果。但是有这么多的标准,经常会返回错误的结果。

我想要做的是使用第二个条件来使搜索更具体。

我目前的设置

我目前可以使用的公式是:

=INDEX(Categories!D$3:D$53,MATCH(TRUE,ISNUMBER(SEARCH(Categories!C$3:C$53,I2)),0))

因此,无论用户输入I2 什么,都会与Categories!C$3:C$53 交叉引用,如果匹配则返回Categories!D$3:D$53

图片

所以你可以在图片中看到它是如何设置的,紫色是我要添加的第二个搜索条件。

我确实尝试在开头添加匹配功能,所以IF 另一个单元格 = 无绳电动工具然后我可以缩小搜索范围。但这意味着每个类别和子类别都有一个单独的公式,其中有数百个。

感谢您提供的任何帮助。

编辑 - 我意识到我想要的实际上比我最初想象的要复杂得多。

我想要的是能够在单元格中搜索 B 列中的匹配项,然后如果存在匹配项,则仅在 C 中搜索该部分以返回 D 中的相邻值。

例如。我有一个工具 - 一个 18v 115mm 角磨机。所以我的搜索字符串是“18v 115mm Angle Grinder”,然后该公式将在该字符串中搜索它在 B 列中的匹配项(B61),因此该公式将在“18v 115mm Angle Grinder”中仅在列中搜索匹配项C61 和 C62,找到匹配项并从 D61 返回“Grinders”。

我意识到这看起来毫无意义的复杂,但我正在尝试在数百个类别中实现它,并且所有类别中都有更简单的标题,所以我试图缩小搜索范围,因此我不必使用多个公式。

再次感谢任何人的帮助。

【问题讨论】:

    标签: excel search indexing match


    【解决方案1】:

    如果您想在搜索中添加另一个条件,例如,该列 A 匹配用户在 J2 中输入的内容,请使用 * 运算符将条件添加到您的搜索中,该运算符应用逻辑 @987654324 @在不同的条件下。但唯一的问题是它的结果是一个数字 1/0 而不是 True/False。

    =INDEX(Categories!D$3:D$53,MATCH(1,
      ISNUMBER(SEARCH(Categories!C$3:C$53,I2))
      * (Categories!A$3:A$53 = J2)
      ,0))
    

    附言使用*作为逻辑运算符时,不要忘记将因子括起来。

    【讨论】:

    • 我假设这里的第二个条件是直接匹配?我可以不使用其他搜索功能吗?
    • @RobL 当然可以。每个单独的条件都可以是一个独立的函数。但是我怎么能猜到你要添加的确切条件是什么?
    • 你在这里的建议很好,但我正在寻找的是这样的:=INDEX(Categories!D$3:D$53,MATCH(1, ISNUMBER(SEARCH(Categories!C$3) :C$53,I2)) * (1,ISNUMBER(SEARCH(Categories!C$3:C$53,I2)) ,0))) 我试过这个但没有运气..
    • @Robl 试试=INDEX(Categories!D$3:D$53,MATCH(1, ISNUMBER(SEARCH(Categories!C$3:C$53,I2)) * ISNUMBER(SEARCH(Categories!C$3:C$53,J2)) ,0))IsNumber 等每个条件都是MATCH 中的一个因素。
    • 我不确定我是否完全理解它的工作原理,但它确实有效,而且非常完美。非常感谢 A.S.H
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-07-29
    • 2013-12-24
    • 1970-01-01
    • 2016-12-23
    • 2012-05-09
    • 2022-06-12
    • 2011-01-21
    相关资源
    最近更新 更多