Google表格/计数实例仅在数组的奇数行中

问题描述 投票:0回答:3

我一直在四处走动。

我有一个数组,由奇数行上的一种类型的东西(如标题)和偶数行上的数据组成。这是一个4x4单元格示例(实际上包含8个标题和8个数据元素):

     A            B              C             D
 +---------------------------------------------------
1| *Red         *Blue          Blue          Blue
2| Robin        Sparrow        Oriole        Blue Jay
3| *Blue        Blue-xx        *Red          Red
4| Thrush       Barred Owl     Red Hawk      Eagle      

我正在寻找一种只计数的方法

  • 奇数行“蓝调”和“红色”(两个独立的公式)
  • 没有星号的

它不需要被绊倒:

  • B3中的附加“-xx”。
  • 在非标题偶数单元格中存在字符串“blue”或“red”(D2 =“BLUE jay”; B4 =“barRED owl”; C4 =“RED hawk”)

假设我已经通过其他方法知道开始时有5个蓝色和3个红色标头值,所有这些都以星号开头。我希望解决方案只涉及计算那些没有星号的单元格,但由于我所说的假设,解决方案只计算那些带有星号然后减去的解决方案。

因此,“蓝色”公式应报告有3个奇数行“蓝色”没有星号(C1,D1,B3)。

“红色”公式应报告有2个奇数行“红色”没有星号(A1,C3)。

目前,我有这个丑陋的事情:

=if({Five original blues})-(COUNTIF($A$1:$B$1,"blue")+countif($A$3:$B$3,"blue"))>0,{Five original blues}-(countif($A$1:$B$1,"blue")+countif($A$3:$B$3,"blue")),"Zero")

或者,解析它,如果(5 - ((第1行的蓝色)+(第3行的蓝色))为正,则显示该数字。如果不是正数,则写出零字。

=if(
     {Five original blues}) -  
     (COUNTIF($A$1:$B$1,"blue")+COUNTIF($A$3:$B$3,"blue"))
    >0
   ,
     {Five original blues} -
     (COUNTIF($A$1:$B$1,"blue")+COUNTIF($A$3:$B$3,"blue"))
   ,
     "Zero"
 )

正如预期的那样,输出为3。

对于具有两个标题行的8个数据点,这不是一个可怕的解决方案,但我希望至少有十个标题行,并且这不能很好地扩展。

我一直在尝试各种各样的事情

    - (if(isodd(row(A1:B4)) . . . 
    - countif(A1:B4,and(isodd(row(A1:B4)),find("blue",A1:B4) ...
    - arrayformula ...?

但尚未弄明白。

提前致谢!

arrays count google-sheets row instances
3个回答
© www.soinside.com 2019 - 2024. All rights reserved.