使用公式过滤行

时间:2013-03-28 15:01:56

标签: excel

我正在尝试按名称过滤行,然后COUNTIF一列代表以“非常同意/同意..”方式回答的问题,以计算每个问题的每个类别的数量被选中了。

示例数据:

name | question 1| question 2 ...
=============================
Bob  | Agree     | Disagree
Bob  | Strongly A| Agree
Red  | Disagree  | Strongly Agree
Blue | Agree     | Agree

我想从上面得到这些数据:

Bob     | question 1 | question 2 ...
==================================
Agree   |  1         |  1
Disagree|  1         |  1
...

(对于那些好奇的人:这是一个关于特定人的匿名调查。)

我没有很多excel的经验我到目前为止想出了这个: =COUNTIF(IF(Sheet1!A2:A5="Bob",Sheet1!B2:B5, ""), Sheet2!A2)

这给了我一个#VALUE!。我不确定如何使范围成为匹配名称值的相关问题的行。任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:2)

您尝试使用2个条件求和(名称列和问题列必须等于某些值)。出于这个原因,我认为countif()不适合你。

我想到了两个选项:

  1. 数据透视表。转到插入 - >数据透视表并在新选项卡中创建一个。将您的名称列拖放到报表过滤器中,将q1拖放到行标签中,并将名称计数作为您的值。因此,无需任何代码,您可以一次总结一个问题。您也可以准确地获得目标表,但首先您必须将表格变为3列:名称,问题#和答案。

  2. Sumproduct()功能。这是一个example,但您可以谷歌了解更多信息。使用此功能,您可以一次计算多个条件的出现次数。使用您的示例,这将返回表中名称为Bob且Question1为Agree的行数:
    =SUMPRODUCT((A2:A5="BOB")*(B2:B5="Agree"))