Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
索引Excel中的多列,返回相邻列_Excel_If Statement - Fatal编程技术网

索引Excel中的多列,返回相邻列

索引Excel中的多列,返回相邻列,excel,if-statement,Excel,If Statement,我正在制作一份excel表格,它将帮助我制定用餐计划。目前,我的数据存储方式如下所示: **Monday** Breakfast Bagel 1 Cream Cheese 1 Lunch Spinach 1 Eggs 4 Cream Cheese 1 Dinner Pork

我正在制作一份excel表格,它将帮助我制定用餐计划。目前,我的数据存储方式如下所示:

                  **Monday**
 Breakfast        Bagel         1       Cream Cheese    1        
 Lunch            Spinach       1       Eggs            4       Cream Cheese 1      
 Dinner           Pork          1       Eggs            2

                  **Tuesday**
 Breakfast        Cereal        2       Milk            1       Eggs         3
 Lunch            Bagel         1       Butter          1
 Dinner           Eggs          2
电流输出:

 Ingredients Needed:
 Eggs           2
 Bagel          2
 Spinach        1
 Pork           1
 Cereal         2
 Milk           0
 Butter         0
 Cream Cheese   0
其中数字代表我需要购买的每种配料的份数

我面临的问题是我目前的公式:

=索引($C$12:$C$58),小(如果(ISNUMBER(搜索($B$60,$B$12:$B$58)),匹配(行($B$12:$B$58)),行($B$12:$B$58)),行(B1)))

一次只索引一行。例如,如果我搜索一周需要购买多少鸡蛋,公式将返回2个鸡蛋(因为它只搜索B列中的鸡蛋,返回C列)

是否有一种方法可以让我退回我需要购买的全部配料?我意识到我可以单独索引每一列,但是,因为我有很多成分(100+),使用我目前的公式似乎不可行


非常感谢您提供的任何帮助

您可以使用
SUMIF
,其中总和范围与标准范围相偏移。例如,为了简单起见,假设C12到H19包含数据(成分和数量),请尝试


…其中B60包含感兴趣的成分。请注意,总和范围D12:H19与标准范围C12:G19偏移。

我将在表中显示我的数据。这样,你每顿饭都有一行,每种配料都有一列,这样你就可以把这列相加,得到每种配料的总数了?也许这样做可以作为输入和输出之间的一个中间步骤。这样做非常有效,避免了我花费数小时重新整理数据。非常感谢!我将记住将来如何抵消SUMIF函数
=SUMIF($C$12:$G$19,B60,$D$12:$H$19)