在 Google Sheet 中每第 n 行计算单元格中出现的次数

Counting the number of occurrences in a cell every nth row in Google Sheet

=countif('Sheet2'!$K,$AD25)+countif('Sheet2'!$K,$AD25)+countif('Sheet2'!$K,$AD25)
  +countif('Sheet2'!$K,$AD25)+countif('Sheet2'!$K,$AD25)+countif('Sheet2'!$K,$AD25)
  +countif('Sheet2'!$K,$AD25)+countif('Sheet2'!$K,$AD25)

这是我目前的情况,我想知道是否有更多 eloquent 方法来解决这个问题。

  1. 在 Sheet2 中,每 7 行,从 6 开始(即 6,13,20,27,34,41,...) 在 K 列,有一个包含项目列表的下拉列表,例如{苹果, 橙色,香蕉}.
  2. $AD25指橙色。
  3. 在另一个 sheet 中,我使用上面的公式计算在下拉列表中选择 "orange" 的次数。如果在 $K$6 和 $K$34 中选择了橙色,则公式将 return 2.

每周,我们都会一项一项地填写,但由于这是一个持续的过程,在我们完成第 55 行后,我需要将 +countif('Sheet2'!$K,$AD25) 添加到公式中,这并不是很有效。

有没有更高效的方法?我想象的是

countif('Sheet2'!$K$mod(???, 7)=0,$AD25)

但实在想不通。

像这样:

=QUERY(FILTER(A6:A, MOD(ROW(A6:A)-ROW(A6), 7)=0), 
 "select Col1,count(Col1) 
  where Col1 is not null 
  group by Col1 
  label count(Col1)''", 0)

一个简单的解决方案是使用 UNIQUE()COUNTIF() 公式

  • 在 D2 UNIQUE(A2:A)
  • 在 E2 ARRAYFORMULA(COUNTIF(A:A,D2:D10))

我正在使用 ARRAYFORMULA()COUNTIF() 公式传播到范围的其余部分。

See Example