如何在Excel中有条件地累计一列数字

在Excel中,我有一列数字,如果数字是正数,文本颜色是黑色的,如果数字是负数,则数字是红色的。 我怎么能在一个新的单元格中只填写列中的红色数字?

您可以使用: =SUMIF(A1:A10,"<0")

这是我的例子 。

在这个例子中,我有一个范围在-100和100之间的随机整数。这个范围是Sheet1!$B$3:$B$26

我已经应用了条件格式,以便:

  • 正数有黑色文字,
  • 负数有红色的文字。

为此,只需突出显示范围,使用自定义公式设置条件格式,然后使用范围中的第一个单元格设置格式。

  • 正单元格的自定义公式是=B3>=0
  • 自定义公式为正数单元=B3<0

我使用sumif()函数创build了两个包含表格总和的单元格:

  • 正数之和: =sumif(your_range, ">=0")
  • 负数之和: =sumif(your_range, "<0")

注意:在你的情况下,你说你想用红色文本求和,所有这些都是负整数,所以我真正需要做的就是将这些单元求和,如果它们是负整数。
要基于格式(如文本颜色)真正地求和单元格,可以编写vba函数/macros,并遍历范围内的单元格。