在Excel 2007中,如何从指定范围的多个列的SUMIFS索引?

我正在分析与特定用户类别贷款有关的图书馆统计数据。 贷款数据形成指定范围LoansToApril2013。 Excel 2007对于我使用索引范围作为SUMIF中的总和范围感到非常高兴:

=SUMIF(INDEX(LoansToApril2013,0,3),10,INDEX(LoansToApril2013,0,4):INDEX(LoansToApril2013,0,6)) 

这里10表示一个特定的用户类别,并且这三个栏目对该组进行了贷款。 我所指的是“指数范围”

 INDEX(LoansToApril2013,0,4):INDEX(LoansToApril2013,0,6) 

sum_range值。

但是,如果我切换到使用SUMIFS来添加更多条件,Excel将返回一个#VALUE错误如果使用索引范围。 它只会接受一个单一的索引。

 =SUMIFS(INDEX(LoansToApril2013,0,4),INDEX(LoansToApril2013,0,3),1,INDEX(LoansToApril2013,0,1),"PTFBL") 

工作正常

 =SUMIFS(INDEX(LoansToApril2013,0,4):INDEX(LoansToApril2013,0,6),INDEX(LoansToApril2013,0,3),1,INDEX(LoansToApril2013,0,1),"PTFBL") 

返回#value,我不知道为什么。

有趣的是,

 =SUMIFS(INDEX(LoansToApril2013,0,4):INDEX(LoansToApril2013,0,4),INDEX(LoansToApril2013,0,3),1,INDEX(LoansToApril2013,0,1),"PTFBL") 

也被接受,并且返回与具有单个索引的第一个一样的返回。

我一直没有find任何有关这方面的文件或意见。 有谁知道是否有一个可以让SUMIFS有条件地总结三列索引值的替代结构? 我宁愿不使用三个单独的公式并将它们加在一起,虽然这是可能的。

sumifs公式是在数组公式之后进行build模的,并且sumifs比较需要是相同的大小,最后一个模拟LoansToApril2013数组列4:4中的一列是第4列。

第二个到下一个是3列宽,比较列是1列宽造成的错误。

sumifs不能这样做,但sumproduct可以

例:

  X 1 1 1
 Y 2 2 2
 Z 3 3 3 

从A1开始

公式=SUMPRODUCT((A1:A3="X")*B1:D3)给出答案3 ,并将公式中的值X更改为YZ将返回的值更改为适当的行总和。
请注意,如果您在该区域中有文字,这将不起作用 – 它将返回#VALUE!

如果你不能避免文本,那么你需要一个数组公式。 使用相同的示例,公式将=SUM(IF(A1:A3="X",B1:D3)) ,并将其作为数组公式input,则需要使用CTRL + SHIFT + ENTERinput公式- 你应该注意到excel在公式的周围。 它将任何文本都视为零,因此即使您在其中一个文本框中有文本,它也会成功合并它所find的数字(例如,将示例中的1改为blah ,总数将为2 -公式会加上剩下的两个1秒)

上面的两个答案和一些search允许我find一个工作的公式。 我会把它放在这里作为后代,因为没有最终结果的问题是未来读者的痛苦。

 =SUMPRODUCT( (INDEX(LoansToApril2013,0,3)=C4) * (INDEX(LoansToApril2013,0,1)="PTFBL") * INDEX(LoansToApril2013,0,4):INDEX(LoansToApril2013,0,6)) 

这在LoansToApril2013范围的第4-6列中的值总和,其中列3中的值等于C4中的值(又名“这个公式的左边的单元格”),并且列1中的值是“PTFBL ”。

尽pipe出现,它没有任何东西乘以任何东西。 我在这个页面上find了一个解释,但基本上星号正在为函数添加标准。 请注意,标准括在自己的括号内,而范围不是。

如果要使用名称范围,则需要使用INDIRECT作为索引命令。

我用这个公式来检查两列的条件,然后把结果汇总在一个有12个月份的列表里(列由1到12 [L4]的帮助单元select)。

所以你可以做,如果:

部门(1列名称范围[C6])=销售[D6]; 区域(1列名称范围[C3])=美国[D3]; 对于那些人/产品/行项目,12个列中的SUM数字每月命名的范围表[E7]对于那个1个月[L4]

只需在您的报告页面上复制公式,即每月有1-12列,您将获得每月总结报告和2个条件。

(索引(间接($ C $ 6),0,1)= $ D $ 6)*(索引(间接($ C $ 3),0,1)= $ D $ 3)* INDEX(INDEXECT($ E7) ,0,L $ 4))

Interesting Posts