Google sheets 计数空单元格,直到下一个已填充单元格
我有一个类似于下面的表,并且喜欢自动计算总和列。每天的行数各不相同。我正在寻找一种方法来查找当前行之后日期列中的空单元格数。然后可以使用此数字填充“总和”列 不管下面的解决方案如何,是否有一种方法可以计算日期之间的空单元格数Google sheets 计数空单元格,直到下一个已填充单元格,google-sheets,sum,google-sheets-formula,array-formulas,gs-vlookup,Google Sheets,Sum,Google Sheets Formula,Array Formulas,Gs Vlookup,我有一个类似于下面的表,并且喜欢自动计算总和列。每天的行数各不相同。我正在寻找一种方法来查找当前行之后日期列中的空单元格数。然后可以使用此数字填充“总和”列 不管下面的解决方案如何,是否有一种方法可以计算日期之间的空单元格数 Date |Value|Sum ----------+-----+--- 16/07/2020| 2| 5 | 3| 17/07/2020| 2| 10 | 3| | 5|
Date |Value|Sum
----------+-----+---
16/07/2020| 2| 5
| 3|
17/07/2020| 2| 10
| 3|
| 5|
18/07/2020| 2| 11
| 3|
| 5|
| 1|
我认为你不需要第一个问题的答案就可以算出总数 在整个C列空白的情况下,在C1中尝试以下操作: =数组公式({“Sum”;如果(A2:A=”、VLOOKUP(A2:A、查询({VLOOKUP(行(A2:A)、过滤器({ROW(A2:A)、A2:A}、A2:A“”)、2)、B2:B},“选择Col1,按Col1对Sum(Col2)分组”),2,0))) 如果这不起作用,那么在样本表上演示这个想法可能会更容易。安德烈,试试这个: 1.)完全删除C:C(包括标题) 2.)将以下公式放入单元格C1中:
=ArrayFormula({"Sum";IF(A2:A="","",VLOOKUP(A2:A,QUERY({VLOOKUP(ROW(A2:A),FILTER({ROW(A2:A),A2:A},A2:A<>"",B2:B<>""),2,TRUE),B2:B},"Select Col1, SUM(Col2) Group By Col1"),2,FALSE))})
=ArrayFormula({“Sum”;IF(A2:A=”“,“”),VLOOKUP(A2:A,查询({VLOOKUP(行(A2:A)),FILTER({ROW(A2:A),A2:A“”,B2:B“”),2,TRUE),B2:B},“选择Col1,Sum(Col2)按Col1分组”,2,FALSE)))
更新:
您的帖子示例显示了标题。然后,我建议的公式解释了这些标题。由于您的实际样本表不同,并且不像原始帖子那样使用标题,因此您应该使用以下版本:
=ArrayFormula(IF(A:A="","",VLOOKUP(A:A,QUERY({VLOOKUP(ROW(A:A),FILTER({ROW(A:A),A:A},A:A<>"",B:B<>""),2,TRUE),B:B},"Select Col1, SUM(Col2) Group By Col1"),2,FALSE)))
=ArrayFormula(如果(A:A=“”,”,VLOOKUP(A:A,查询({VLOOKUP(行(A:A)),过滤器({ROW(A:A),A:A},A:A“”,B:B“”),2,TRUE),B:B},“选择Col1,按Col1求和(Col2)分组”,2,FALSE)
如果从第1行开始,请使用:
=ARRAYFORMULA(IF(A:A="",,VLOOKUP(A:A, QUERY({VLOOKUP(ROW(A:A),
FILTER({ROW(A:A), A:A}, A:A<>""), 2), B:B},
"select Col1,sum(Col2) group by Col1"), 2, 0)))
=ARRAYFORMULA(如果(A:A=“”,VLOOKUP(A:A),查询({VLOOKUP(A:A)行),
过滤器({ROW(A:A),A:A},A:A“”),2),B:B},
“选择Col1,按Col1求和(Col2)分组”(2,0)))
=数组公式,
如果(A:A“”{ROW(A:A),A:A}),2,1)),
“选择列1,计数(列1)
其中Col1不为null
Col1分组
标签计数(Col1'”),2,0)
Matt,有趣的是:您发布的内容与我发布的内容相同,我们的想法完全相同。@ErikTyler这将发生:)不幸的是,它不起作用,导致解析公式时出错。我创建了一个简单的示例表:我提供的公式(以及Matt提供的公式)假设您的数据列有一个标题,这是标准的。没有。我编辑了我的帖子,以显示没有标题的版本,效果很好。我真正的问题是有标题,而且要复杂得多。我简化了问题和示例表。Matt和我唯一的问题是文章中的示例(带标题)与表中的示例(不带标题)不匹配。这就是为什么原始公式不起作用的原因:因为它们是为标题编写的。但最终,你解决了问题。这是主要目标。非常感谢。不管这种解决方案如何,是否有一种方法可以计算日期之间的空单元格数?非常感谢。这是可行的,但是为什么第二个公式中的“B”列很重要呢?它很重要,因为否则您将得到电子表格中所有行的计数。参见F1和注意事项F19-
=ARRAYFORMULA(IFNA(VLOOKUP(A:A, QUERY(IF(B:B="",,VLOOKUP(ROW(A:A),
IF(A:A<>"", {ROW(A:A), A:A}), 2, 1)),
"select Col1,count(Col1)
where Col1 is not null
group by Col1
label count(Col1)''"), 2, 0)))