【问题标题】:Using COUNTIFS on Multiple Columns在多列上使用 COUNTIFS
【发布时间】:2017-02-22 09:21:25
【问题描述】:

我有一个名为“Input”的表格,它采用下面的形式,实际表格扩展到大约 20 列和 1000 多行。左侧的“Site”列会定期包含重复数据,但绝不会出现 W01 在同一行出现两次的情况 - 尽管 Site01 可能有两次 W01 出现在不同的行中。

Site   |   Item1   |   Item2   |   Item3 
------------------------------------------
Site01 |    W01         W02        S01
Site02 |    W01         S02
Site03 |    S01         W01
Site01 |    W01

然后,我有另一个名为“结果”的表,其中所有站点位于顶行,所有项目位于最左列。我们的想法是让表格显示网站使用给定项目的次数,因此上表的结果应该是:

       | Site01 | Site02 | Site03 
 ---------------------------------
  W01  |   2        1        1
  W02  |   1        0        0
  S01  |   1        0        1
  S02  |   0        1        0

使用采用以下形式的 COUNTIFS 公式对输入表中的一列执行此操作似乎相对容易:

=COUNTIFS('Input'!$C$4:$C$1000,'Results'!C$2,'Input'$D$4:$D$1000,'Results'!$B3)

然后可以将其复制到整个“结果”表中。

我可以在两列或三列上使用这种方法,方法是将上述 COUNTIFS 的倍数与加号串在一起,然后在 COUNTIFS 的第二部分更改下一个 COUNTIFS 以检查 'Input'$E$4:$E$1000 -但这很快就会在最多 20 行的工作表上变得不可行 - 所以我需要一个公式或 VBA 代码,它的功能与这种 COUNTIFS 方法完全相同,但可以扩展到更多的行数。

【问题讨论】:

    标签: excel excel-formula vba


    【解决方案1】:

    切换到SUMPRODUCT

    =SUMPRODUCT((Input!$C$4:$C$1000=Results!C$2)*(Input!$D$4:$F$1000=Results!$B3))

    修改部分中的F:

    Input!$D$4:$F$1000

    根据需要。

    问候

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-02-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多