使用同一行中的值与标题行中的值相匹配的范围求和。
Header: 1 | 2 | 3 | 4 |.... Sum from
Row: 10 | 20 | 30 | 40 |..... 2
在上面的示例中,我想对第2列-第4列(20 + 30 + 40)中的行值求和
如果“求和行数”为3,我想对第3列-第4列(30 + 40)中的行值求和
因此,我试图从与列总和中的值匹配的列号开始求和。
我尝试过sumif
range = header range
criterion = sum from value
sum_range = row range
这仅返回与值之和相匹配的单元格的值 因此,如果from的总和设置为2,则只会产生20,而不是90(20 + 30 + 40)
答案 0 :(得分:0)
为此使用ADDRESS
来构造范围,例如:
=SUM(INDIRECT(ADDRESS(3, MATCH(B5, 1:1, 0), 4)&":"&
ADDRESS(3, COLUMNS(1:1), 4)))
答案 1 :(得分:0)
主题略有变化:
使用INDIRECT定义范围,并指定起始单元格和结束单元格的地址。使用已经可用的信息。
=SUM(INDIRECT(address(row($B$3),B5+1,4) & ":" & address(row($B$3),B7+1,4)))
答案 2 :(得分:0)
最后我设法使它变得很整洁:
SUMIF($E$3:$N$3,">="&P4,E4:N4)
E3:N3是标题行
E4:N4是要累加的行
P4是具有与标题匹配的值的单元格
the“> =”可以根据您要包含所选列还是仅包含“上方”列进行调整。