根据文本search和分配值

我尝试使用公式(search,sumproduct,如果)来search一个string,并返回一个特定的值。 所以在我的例子中,如果A1包含string与“AAA”,返回1,如果A1文本有“BBB”,返回2等…任何想法

text value MAINTENANCE AAA 1 MAINTENANCE BBB 2 CCC MAINTENANCE 3 

提前致谢。

没有某种“映射表”的一种方法是使用两个数组 – 一个用于查找文本部分,另一个用于值:

 =IFERROR(INDEX({1,2},MATCH(TRUE,ISNUMBER(SEARCH({"aaa","bbb"},A2)),0)),"Not found") 

其中{1,2}是值的数组, {"aaa","bbb"}是要查找的文本数组,而A2是包含要search的文本的单元格。

做一个文本和相关的值表,例如在Y2你有AAA和在Z2 1,在Y3 BBB ,在Z3 2等,那么你可以使用这个公式

=INDEX(Z$2:Z$10,MATCH(1,INDEX(ISNUMBER(SEARCH(Y$2:Y$10,A2))*(Y$2:Y$10<>""),0),0))

在这里输入图像说明

注意: SEARCH不区分大小写 – 如果您希望search区分大小写,请使用FINDfunction而不是SEARCH