我希望sum“A9和A54之间的第5行,”即
A(5x + 9)-A(54),
在excel内。
这里还有一个子问题。是否可以使用函数或VBA对range个单元格求和?
以下是一些基于答案的测试题:
=SUMPRODUCT(--(MOD(ROW(Range)-MIN(ROW(Range))+1,1)=0),A1:A50)
- 对A1到A50行进行汇总?=SUMPRODUCT(--(MOD(ROW(A50)-MIN(ROW(A50))+1,2)=0),A1:A50)
- 每隔一行汇总一次,A1到A50 =SUMPRODUCT(--(MOD(ROW(A5:A50)-MIN(ROW(A1:A50))+1,5)=0),A1:A50)
- 总结A5和A50之间的第5行?基于:
替换A9:A54代表范围,5代表n代表您的特定查询。只要 这些部分更改即使删除行,答案也将保持不变 低于范围。
答案 0 :(得分:4)
我会使用更强大的RocketDonkey版本的答案。他评论中的-8是因为该范围的第一行是9但是通常对于任何单个列范围,您可以使用此公式对每个第n行求和(从该范围的第一行开始)
=SUMPRODUCT(--(MOD(ROW(Range)-MIN(ROW(Range)),n)=0),Range)
替换A9:A54代表范围,5代表n代表您的特定查询。只有那些部分改变了
即使删除范围
下的行,答案仍将保持不变<强>解释强>
部分ROW(Range)-MIN(ROW(Range))将返回一个整数数组,从0开始,整数个数对应于范围内的单元格数,所以
=ROW(A9:A54)-MIN(ROW(A9:A54))
生成此数组
{0;1;2;3;4;5;6;7;8;9;10;11;12;13;14;15;16;17;18;19;20;21;22;23;24;25;26;27;28;29;30;31;32;33;34;35;36;37;38;39;40;41;42;43;44;45}
当你使用除数5将其输入到MOD函数中时,显然MOD(0,5)= 0,所以在这种情况下,第一个单元格(A9)始终满足条件.....所以每隔5个(或第n个)细胞在这样的范围内
=SUMPRODUCT(--(MOD(ROW(A9:A54)-MIN(ROW(A9:A54)),5)=0),A9:A54)
将每个第5个单元格从该范围内的第一个单元格开始求和,即它总和A9,A14,A19,A24 ....等等。
显然你可以用9替换MIN(ROW(A9:A54))但是如果删除第9行下面的某些行,公式结果将会改变,所以使用这种结构会更加健壮
答案 1 :(得分:0)
我猜ROW(A9:A54)-MIN(ROW(A9:A54)
中的MOD(ROW(A9:A54)-MIN(ROW(A9:A54)),5
会产生数字-9。在此等式MOD中,-x中x的值是远离cell 0
的数字行上的位置。因此,ROW(A9:A54)-MIN(ROW(A9:A54)
,-9
的结果使A9成为我们运行MOD
的数组中的第0个条目。这可能是=0
的含义......
=SUMPRODUCT(--(MOD(-9,5)),A9:A54)
显然具有相同的效果。出于某种原因,首选长版本,即:=SUMPRODUCT(--(MOD(ROW(Range)-MIN(ROW(Range)),n)=0),Range)
。我没有看到优势,但它与移位或删除单元格有关。我想它正在转变,因为有一个空单元格并不重要。
我对使用=SUMPRODUCT
而非SUM
和--
而不是SUM
的原因感到有点困惑。我想,--
会添加,它还会将bool转换为数字。我不明白为什么这些事情中的任何一件都是必要的。也许这是一个只是在案件的事情。例如,可能每第15行是一个不需要的字符串常量,而不是所需的数字。我认为,在这种情况下,将一个系列放在另一个系列中更为普遍有用。但是,