我有一张包含多张纸的excel文件。一页,程序数据,包含所有手动条目。此数据的非常基本近似值如下所示:
ID Type Route RevACT Aug 2013 RevBGT Aug 2014 ...
250 New CCS $1000.00 $500.00
310 Deep RCS $750.00 $150.00
015 Exist CCS $250.00 $1000.00
我们正在做的是一个由两部分组成的步骤,我希望能够一步到位......
现在我们使用sumif语句使用此公式将此表中的所需信息提取到第二张表(名为New& Exst Dasbrd-Bckup):
=SUMIFS('Program Data'!CC:CC,'Program Data'!$M:$M,$A74,'Program Data'!$E:$E,'Program Data'!$E$2)+SUMIFS('Program Data'!CC:CC,'Program Data'!$M:$M,$A74,'Program Data'!$E:$E,'Program Data'!$E$3)
此公式查找与A74中的条件匹配的值(即Route = CCS),然后将Aug Revenue(在CC列中找到)的值相加,其中Type为“New”(E2)或“Existing” (E3)。
一旦我们将这些数据编译了几个月,我们就会有一个仪表板,允许我们创建图表。有一个下拉菜单可以选择你想要的月份(1月 - 12月),它会使用第二张纸填充单元格,并根据您使用此公式的下拉选项填写:
=HLOOKUP($A$11,'New & Exst Dshbrd-Bckup'!$B$74:$M$77,3,FALSE)
其中A11是下拉选项(Jan-Aug),范围是第一组值所在的位置,3是包含先前公式值的行。我真的希望我们能用一个公式完成这个并跳过中间表。
TL DR;我需要一个formala,一旦你从下拉菜单中选择了一个月(在A11中),就会在列中查找该字符串(8月,10月等)以及我指定的另一个字符串(例如“2013”)标题(1:1)。一旦找到具有这两个字符串的列,我希望它能够搜索该列并将所有具有指定路由的值(如A74 = CCS中所述)相加,并且还具有正确的类型值(在E2和E3中给出 - - New and Exist)并返回该值
我尝试了一些不同的东西,但我担心这有点超出我的能力范围。任何帮助都是真诚的感谢。
答案 0 :(得分:1)
首先,您可以使用这样的单个SUMIFS来简化您的第一个公式
=SUMPRODUCT(SUMIFS('Program Data'!CC:CC,'Program Data'!$M:$M,$A74,'Program Data'!$E:$E,'Program Data'!$E$2:$E$3))
现在您只需要根据月份和年份对列进行动态求和,因此假设您的总和列在A和CZ之间,您可以在该部分使用INDEX/MATCH
函数,即
=SUMPRODUCT(SUMIFS(INDEX('Program Data'!A:CZ,0,MATCH("*"&A11&" "&A12&"*",A1:CZ1,0)),'Program Data'!$M:$M,$A74,'Program Data'!$E:$E,'Program Data'!$E$2:$E$3))
其中A12包含年份
注意:SUMPRODUCT
仅用于添加2个值 - 因为其中一个SUMIFS
条件是2个单元格范围 - “程序数据”!$ E $ 2:$ E $ 3 - {{ 1}}将返回一个双元素数组。公式的大部分辛苦工作都是由SUMIFS
完成的。这是故意的,因为SUMIFS比任何其他多条件求和函数
答案 1 :(得分:1)
Col D E F G H I J
Row
9 ID Type Route RevACT Aug 2013 RevBGT Aug 2014 RevACT Sept 2013 RevBGT Sept 2014
10 250 New CCS 1000 500 500 250
11 310 Deep RCS 750 150 650 1500
12 15 Exist CCS 250 1000 350 2000
13
14 Route RCS Answer 650
15 Month RevACT Sept 2013 Formula =SUMPRODUCT(--(F10:F12=$E$14),INDIRECT(VLOOKUP($E$15,{"RevACT Aug 2013","G";"RevBGT Aug 2014","H";"RevACT Sept 2013","I";"RevBGT Sept 2014","J"},2,0)&"10:"&VLOOKUP($E$15,{"RevACT Aug 2013","G";"RevBGT Aug 2014","H";"RevACT Sept 2013","I";"RevBGT Sept 2014","J"},2,0)&"12"))
注意双减和括号超过SUMPRODUCT的第一个参数,这会将TRUE / FALSE评估转换为1/0进行乘法。
此外,VLOOKUP中的数组参数的语法可能会有所不同,具体取决于您的系统分隔符等。
解决这个问题的另一种方法是将strait转换为数组公式,尽管结果与给出的解决方案基本相同。
此致