Excel函数:如果单元格与范围内的另一个单元格相同,则返回三个其他项目

我正在制定一个用于膳食计划的Excel文档。 我正在尝试创build一个函数,让我可以查看餐点是否在列中,如果餐点在列中,则返回原料。

第一张表看起来像这样:

Breakfast Lunch Dinner Monday Cereal PB&J Tuesday Pizza Wednesday Coffee Thursday PB&J Friday 

在第二张纸上,我有这样写的食谱:

  PB&J Peanut Butter Jelly Bread Pizza Cheese Sauce Pie Crust 

我想要search第一张食谱的所有实例,可以说PB&J。 如果PB&J出现,我希望它返回花生酱,果冻和面包(我的购物清单)。

但是,我不确定如何编写可能返回多个项目的函数。 任何帮助将不胜感激!

假设你的工作表是这样设置的:

Sheet1
在这里输入图像说明
所以你一周的时间和食物select是最重要的。

Sheet2 ,您的成分列表,是这样的: 在这里输入图像说明

回到Sheet1上,我们使用A7作为你想查找的食物。 在B7 ,你可以使用一个简单的VLOOKUP()

 =VLOOKUP($A7,Sheet2!$A$1:$K$3,COLUMN(),FALSE) 

并拖动一堆列。 要隐藏0返回,只需将公式包装在IF语句中:

 =IF(VLOOKUP($A7,Sheet2!$A$1:$K$3,COLUMN(),FALSE)=0,"",VLOOKUP($A7,Sheet2!$A$1:$K$3,COLUMN(),FALSE)) 

这是你可以做的。 可以说,配料表被称为“成分”。 您可以首先检查“Exists”列是否存在该配方的特定实例。 那么,如果它存在另一列可以显示成分作为逗号分隔列表。

 Formulas: Recipe exists : `=COUNTIF($B$2:$D$6,"*"&F2&"*")>0` Get Ingredients : `IF(G2,TEXTJOIN(", ",TRUE,Ingredients!B1:Ingredients!D1))` Col F contains the recipe names, Col G indicates whether the recipes exists in the range. 

在这里输入图像说明

在这里输入图像说明