EXCEL公式将特定行上方的所有内容相加

EXCEL公式将特定行上方的所有内容相加,excel,excel-formula,excel-2010,Excel,Excel Formula,Excel 2010,我想对包含单词“SUMTOTAL”的单元格上的所有内容求和。因此,如果我有50列,我希望它转到第一行,其中有文本“SUMTOTAL”,然后将该单词周围的所有内容相加。有可能吗?使用匹配公式查找行并从中减去一,然后使用间接公式将地址字符串组合在一起,然后将其放入如下的求和公式中: =SUM(INDIRECT("A1:A" & MATCH("SUMTOTAL",B:B,0)-1)) 假设: SUMTOTAL在B列的某个地方 要求和的数字在A列中 您的数据从第1行开始 您正在对一列求和。若要

我想对包含单词“SUMTOTAL”的单元格上的所有内容求和。因此,如果我有50列,我希望它转到第一行,其中有文本“SUMTOTAL”,然后将该单词周围的所有内容相加。有可能吗?

使用匹配公式查找行并从中减去一,然后使用间接公式将地址字符串组合在一起,然后将其放入如下的求和公式中:

=SUM(INDIRECT("A1:A" & MATCH("SUMTOTAL",B:B,0)-1))
假设:

SUMTOTAL在B列的某个地方

要求和的数字在A列中

您的数据从第1行开始


您正在对一列求和。若要展开,只需将“A1:A”更改为“A1:X”,若要将A列和X列相加,我假定所有数据都位于A1:N20中,并且SUMTOTAL显示在该区域内的某个位置(您可以轻松更改所需的数据位置)。以下公式对SUMTOTAL正上方的所有数字求和,即在同一列中

=SUM(OFFSET($A$1,0,SUMPRODUCT(COLUMN($A$1:$N$20)*($A$1:$N$20="SUMTOTAL"))-1,SUMPRODUCT(ROW($A$1:$N$20)*($A$1:$N$20="SUMTOTAL"))-1))
如果要将SUMTOTAL以上的所有数字相加,无论是否在同一列中,请使用

=SUM(OFFSET($A$1,0,0,SUMPRODUCT(ROW($A$1:$N$20)*($A$1:$N$20="SUMTOTAL"))-1,COLUMNS($A$1:$N$20)))

SUMTOTAL后面的下一行是空的吗?是要将第1行中的所有50列相加到包含SUMTOTAL的行上方的行,还是只对包含SUMTOTAL的列进行相加?SUMTOTAL的使用是限制在单个列还是可能在任何地方?您可以使用类似于SUM(A1:INDEX(a:a,MATCH(“SUMTOTAL”,B:B,0)-1))的方法删除volatile
INDIRECT
。谢谢。但是,如果我在一列中有5个sumtoals,那么公式将只对第一个sumtoals之前的所有列求和:如果我想让它转到下一个,并执行相同的操作,那么这是可能的吗?
=SUM(INDIRECT(ADDRESS(1,COLUMN())&":"&ADDRESS(ROW()-1,COLUMN())))