Calc中带有空白单元格的范围的条件总和
Posted
技术标签:
【中文标题】Calc中带有空白单元格的范围的条件总和【英文标题】:Conditional sum of range with blank cells in Calc 【发布时间】:2019-01-04 12:21:53 【问题描述】:我在电子表格中有以下数据:
----------------------
|Event |Value1|Value2|
|AAA |1 |1 |
|BBB |1 |3 |
|BBB | |2 |
|AAA |3 | |
----------------------
我希望计算Value1
和Value2
中所有数字的总和,所以我有一个输出:
--------------
|Type |Total|
|AAA |5 |
|BBB |6 |
--------------
为此,我需要Total
下的单元格中的公式。但是,当存在空白单元格时,我尝试过的公式不起作用。如果我在每个空白单元格中输入 0,我会得到想要的结果,但我的数据集比提供的示例要大得多,并且有这么多带有 0 的单元格会降低可读性。
我尝试过的公式如下所示。假设Event
是A1,Type
是A10。
=SUMIFS(B2:C5,A2:A5,A11)
现在,如果每个空白单元格都包含一个零,那么上面显示的输出就是我使用这个公式看到的结果。如果 A2:A5 中的 Event
值与字符串 AAA 的 A11 匹配,则该公式将 B2:C5 范围内的每个值相加,总共输出 5。
所以问题是,我怎样才能忽略空白单元格,而不在其中输入 0?我曾考虑过使用N()
或ISBLANK()
,但这些都不适用于范围。仅单个单元格。
【问题讨论】:
【参考方案1】:不清楚Calc
版本=SUMIFS(B2:C5,A2:A5,A11)
在什么情况下会起作用,即使B2:C5
中的所有值都是数字。根据定义,总和范围和标准范围必须具有相同的大小。但在这里它们的大小不同。
但是
B11
中的公式:
=SUMPRODUCT(($A$2:$A$5=$A11)*ISNUMBER($B$2:$C$5),($B$2:$C$5))
应该可以工作,并且应该与所有电子表格应用程序最兼容。
它是如何工作的:
($A$2:$A$5=$A11)
获取TRUE;FALSE;FALSE;TRUE
的 1 列 x 4 行矩阵,判断$A$2:$A$5
中的值是否等于$A11
。这乘以ISNUMBER($B$2:$C$5)
,即TRUE,TRUE;TRUE,TRUE;FALSE,TRUE;TRUE,FALSE
的2列x 4行矩阵$B$2:$C$5
中的值是否为数字,得到1,1;0,0;0,0;1,0
中的值是否为数字的2列x 4行矩阵987654336@ 等于 $A11
并且 $B$2:$C$5
中的值是数字。然后 SUMPRODUCT
将这两个数组 1,1;0,0;0,0;1,0
和 $B$2:$C$5
= 1*B2 + 1*C2 + 0*B3 + 0*C3 + 0*B4 + 0*D4 + 1*B5 + 0*C5
相加。
【讨论】:
奇数。我应该在我的真实电子表格上得到 45 和 3.9,而我得到的是 24 和 0。如果某些单元格在不同的工作表上会有所不同吗?我正在使用=SUMPRODUCT(($'OtherSheet'.$B$2:$B$32=$A3)*ISNUMBER($'OtherSheet'.$K$2:$V$32),($'OtherSheet'.$K$2:$V$32))
,其中$A3
与公式在同一张纸上。这是为了获得 45,它在某种程度上是 24。第二组数字在下一个单元格中使用相同的公式,而是使用 $A4
。
@hiigaran:无法复制。也适用于不同的工作表。您确定与您怀疑的 $'OtherSheet'.$B$2:$B$32=$A3
完全匹配吗?也许有“AAA”与“AAA”或“AAA” - 前导或尾随空格?
好吧,这是一个令人尴尬的解决方案。结果我完全忘记了我的范围在工作表下还有很多行。以上是关于Calc中带有空白单元格的范围的条件总和的主要内容,如果未能解决你的问题,请参考以下文章