【问题标题】:Google Sheets/Excel: Counting values in a range that changes with each row, across multiple rows?谷歌表格/Excel:计算一个范围内随每一行变化的范围内的值,跨多行?
【发布时间】:2018-01-12 15:52:12
【问题描述】:
       A            B              C             D             E
 +--------------------------------------------------------------
1| Red          Blue           Dark Green    Blue
2| Light Blue   Red            Blue          Red
3| Blue         Black          Dark Green
4| Light Blue   Light Blue
5| Dark Green
6| Blue         Red            Green         Black         Blue
7| Dark Green   Blue

所以我想要完成的是计算一个值(例如,“蓝色”)出现在包含一组行中的任何值的第一个和最后一个单元格之间的次数。

使用上面的示例,“蓝色”的结果应该是“2”,其中“蓝色”可以在整个范围内找到“6”次,但我想排除出现在第一个和最后一个的所有实例任何给定行的位置。

我希望我有一个到目前为止我一直在使用的公式的示例,但是我无法生成任何正常工作的东西。 :(

【问题讨论】:

    标签: arrays excel count google-sheets instance


    【解决方案1】:

    =SUMPRODUCT(($A$1:$D$5="Blue")*NOT(COLUMN($A$1:$D$5)=1)*NOT($B$1:$E$5=""))

    SUMPRODUCT中的三个部分

    1. ($A$1:$D$5="Blue") 检查每个单元格的值是否与目标匹配。

    2. NOT(COLUMN($A$1:$D$5)=1) 单元格不应位于第 1 列。但是,如果您使用 B1:D5 范围,则可以省略它。

    3. NOT($B$1:$E$5="") 如果单元格是该行的最后一个单元格,则下一个单元格将为空白。因此,我们检查以下单元格是否为空白。

    【讨论】:

    • 看起来不错,但我认为 OP 想要排除第一列,而不是第一行,以及每行中的最后一个,而不是列。
    • 感谢指正。我将修改行和列。
    • @TomSharpe 说的是,我希望排除第一列(也是最后一列),每行都有一个值,而不是第一行,但这是一个简单的更正。另外:如果我扩展集合,它似乎不会相加(例如,我在 E 列中添加了另一个“蓝色”,并将其添加到总和中),因为实际的数据集可能会在两个方向上无限扩展,并且我需要让公式能够适应不断变化的范围。 :( 同样值得注意的是,行都不会缩小,所以第一行不能作为包含值的最大行长度的参考。
    • @newacc2240 假设数据集的最大列范围由第一行(示例中最长)确定,则您的公式有效。我已经编辑了我的问题的数据集以提供一个更复杂的示例,因为当我将它应用到具有更多差异的更广泛范围时,您的公式不起作用。
    • 不,我不是假设数据集的最大列范围由第一行决定。您必须调整公式以适合您的数据集,因为我不知道您的实际数据的大小。我不知道您所说的不起作用是什么意思。一个错误?出乎意料的答案?要不然是啥?我已经测试了新示例,它为Blue 返回 2,为Red 返回 2,为 Light blue 返回 0。好像没什么问题。
    【解决方案2】:

    你想这样做吗?

    A列的底部公式是:

    =COUNTIF(A2:A6,"Blue")
    

    这将计算 A2:A6 范围内出现的任何“蓝色”。您可以将该公式复制到其余列中。请注意,我按照您的说明排除了每列的最顶部 (A1:D1) 和最底部 (A7:D7) 部分以避免它。

    如果你想一次计算所有出现的次数,你可以这样做:

    =COUNTIF(A2:E6,"Blue")
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-11-09
      • 2017-12-23
      • 2021-10-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多