【发布时间】: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