Excel数组公式 - 总结问卷结果

时间:2016-04-08 12:59:29

标签: arrays excel

我有一个整理网站调查结果的电子表格。在列A下面我有网站列表,在顶部我有问题。问题分为不同的类别,每个问题可能有不同的权重。可能使用Y,N,N / A或空白的答案(空白表示问题未得到回答)。如果问题的答案是Y或N / A,他们会得到该问题的分数。

我可以很容易地将总分加起来:

{=SUM(($G6:$CE6="Y")*$G$3:$CE$3,($G6:$CE6="N/A")*$G$3:$CE$3)}

第6行是带答案的行,第3行是带有问题数字加权的行。

每个问题也有一个类别(例如QHSE,财务等)。我也希望能够仅为特定类别添加分数,但我正在努力创建一个数组公式来执行此操作。

我尝试过几件事,例如:

{=SUM(IF($G$1:$CE$1="QHSE",IF(OR($G6:$CE6="Y",$G6:$CE6="N/A"),1,0)*1))}

第1行是表示问题类别的行。我不能让任何这些工作。

我目前正在使用以下版本,它工作正常,但就像我说的,我想知道这是否可行以及如何完成。

=SUMIFS($G$3:$CE$3,$G$1:$CE$1,$CO$1,$G6:$CE6,"Y")+SUMIFS($G$3:$CE$3,$G$1:$CE$1,$CO$1,$G6:$CE6,"N/A")

例如,如果我有一个更大的可能答案列表,那么就可以更容易地做出类似下面的事情,那就是在SUMIFS公式中列出每一个可能的答案。 (我知道我可以使用SUMIFS来实现我想要的东西,但我现在已经知道它可以这样做了所以我现在需要一直到最后。)

{=SUM(IF($G$1:$CE$1="QHSE",IF(OR($G6:$CE6=$DE$1:$DE$40),1,0)*1))}

另外,有没有人知道使用数组公式会将效率与SUMIFS进行比较?

2 个答案:

答案 0 :(得分:0)

为什么不使用VBA进行测量。 在VBA中执行以下操作:

  • 设置为手动计算模式
  • 拿当前时间
  • 写下你的公式
  • 计算
  • 拿当前时间
  • 从开始时间减去得到计算的时间。

使用大型数据集进行测试以查看真正的差异。

答案 1 :(得分:0)

这个常规公式可以做你想要的(不需要数组输入):

=SUMPRODUCT(SUMIFS($G$3:$CE$3,$G$1:$CE$1,$CO$1,$G6:$CE6,{"Y","N/A"}))

关于你帖子中的第二个问题

  

另外,有没有人知道使用数组公式会将效率与SUMIFS进行比较?

数组公式总是比SUMIFS更差(效率更高)。