这看起来应该很简单!我需要通过 A 列定义 B 列,如果 A 列等于数组“taco,burger,spaghetti”中的任何值,则 B 列应显示“food”,如果 A 列等于另一个数组“dress,shoes,belt”中的任何值,则 B 列应显示“clothing” - 但我可以使用什么公式?
谢谢你!
答案1
我不太清楚如何在这个公式中定义一个确定的数组K1:K3
,但如果你将它更改为包含“食物”项目的范围,这将起作用
=IF(ISERROR(MATCH(A1,K1:K3,0))=FALSE,"Food","")
如果你需要多次执行此操作,只需""
用一系列新的检查替换最后一个,以检查不同列表中的值衣服。 像这样:
=IF(ISERROR(MATCH(A1,K1:K3,0))=FALSE,"Food",IF(ISERROR(MATCH(A1,L1:L3,0))=FALSE,"Clothing",""))
编辑
当然,你可以用花括号定义数组 -
=IF(ISERROR(MATCH(A1,{"taco","burger","spaghetti"},0))=FALSE,"Food",IF(ISERROR(MATCH(A1,{"dress","shoes","belt"},0))=FALSE,"Clothing",""))
答案2
如果您不打算更改“食物”或“衣服”的分组,您可以采用 Raystafarian 的答案。
我建议设立一个桌子在另一张表上定义您的组并使用查找进行翻译。我将跳过此答案的表格,因为它不是必需的。
因此,假设是A1
包含“taco”或其他此类值的单元格,并且列A
和B
是Sheet2
您的查找表,其中列A
和中包含“taco”、“shoes”等,列中Food
包含,然后将以下公式放在您希望出现求值的任何位置:Clothing
B
A1
=IFERROR(VLOOKUP(A1,Sheet2!A:B,2,FALSE),"")
该函数在引用中VLOOKUP
查找,并返回该引用中的列。告诉它找到一个精确匹配,而不是假设列表是有序的并且接近匹配就足够了。A1
Sheet2!A:B
2
FALSE
该IFERROR
函数只是用来捕获您未放入查找表中的值。如果您希望发生其他事情,请更改""
。
Sheet2
看起来应该是这样的:
A B
1 taco Food
2 burger Food
3 spaghetti Food
4 shoes Clothing
5 dress Clothing
6 belt Clothing