如何使用excel公式搜索包含关键字的单元格,以及return对应的值
How to use excel formula to search cell that contain keyword, and return the corresponding value
我在 excel sheet 中有一列包含所有已记录的问题描述。
专栏是这样的:
pic1
我想创建另一个参考 sheet 以根据关键字对问题进行分类。
例如裁判 sheet
pic2
我应该为这个逻辑使用哪个 excel 公式 - 如果描述列包含关键字文本,return 类别。
正在考虑使用 if......=SUMPRODUCT(--ISNUMBER(SEARCH(..... ,结合 vlookup。但无法获取。
任何人都可以帮助我吗?
a non-array-version 将是:
=INDEX($B:$B,AGGREGATE(15,6,(ROW($B:$B))/(ISNUMBER(SEARCH($A:$A,B1))),1))
另一种解决方案是 ARRAY-FORMULA:CTRL + SHIFT + ENTER:
=INDEX($B:$B,SMALL(IF(ISNUMBER(SEARCH($A:$A,B1)),ROW($B:$B)),1))
它只给出第一个找到的关键字。
编辑:
AGGREGATE
可以模仿几个excel-functions,这里15
就是SMALL
。 6
告诉函数忽略错误。这可用于过滤找到的关键字列表。基本上它是行号除以关键字在单元格中的位置。对于第一个单元格,我们得到
[1,2,3,4] / isnumber([9,#VAL!,#VAL!,#VAL!])
= [1,2,3,4] / [1,0,0,0]
= [1,#VAL!,#VAL!,#VAL!]
错误被忽略,结果是第 1 行,可用于 INDEX
。
我在 excel sheet 中有一列包含所有已记录的问题描述。
专栏是这样的:
pic1
我想创建另一个参考 sheet 以根据关键字对问题进行分类。
例如裁判 sheet
pic2
我应该为这个逻辑使用哪个 excel 公式 - 如果描述列包含关键字文本,return 类别。
正在考虑使用 if......=SUMPRODUCT(--ISNUMBER(SEARCH(..... ,结合 vlookup。但无法获取。
任何人都可以帮助我吗?
a non-array-version 将是:
=INDEX($B:$B,AGGREGATE(15,6,(ROW($B:$B))/(ISNUMBER(SEARCH($A:$A,B1))),1))
另一种解决方案是 ARRAY-FORMULA:CTRL + SHIFT + ENTER:
=INDEX($B:$B,SMALL(IF(ISNUMBER(SEARCH($A:$A,B1)),ROW($B:$B)),1))
它只给出第一个找到的关键字。
编辑:
AGGREGATE
可以模仿几个excel-functions,这里15
就是SMALL
。 6
告诉函数忽略错误。这可用于过滤找到的关键字列表。基本上它是行号除以关键字在单元格中的位置。对于第一个单元格,我们得到
[1,2,3,4] / isnumber([9,#VAL!,#VAL!,#VAL!])
= [1,2,3,4] / [1,0,0,0]
= [1,#VAL!,#VAL!,#VAL!]
错误被忽略,结果是第 1 行,可用于 INDEX
。