2014-11-23 92 views
0

我的工作表有两个主表。他们中的一部分是:根据excel中的标准总和

第一个表: Table 1

二表: Table 2

我的目标是找到总罚款表2的每个驱动器。例如,从第二个表中,我们可以请参阅磁盘驱动器1具有数据集1,2和4.因此,驱动器1的总惩罚应该是具有集合1和2,1和4以及2和4的惩罚总和(因此从第一个表格开始,惩罚对应于1和2的值,即57,1和4即57和2和4,它们是113)。如果Drive 1中有更多组,则我们希望添加表1中的相关组合。请忽略第二个表中的兆字节列,因为它与任何计算无关

如何查找这两个表格在这种情况下对每个驱动器的处罚?它让我非常难过。任何帮助将不胜感激。 :)

+2

您能否提供Drive 2的计算例子?表2中只有1条记录,所以不清楚如何计算 – Mixaz 2014-11-23 17:23:18

+1

与Mixaz的问题类似:如果磁盘有三个数据集关联,会发生什么? – 2014-11-23 17:26:15

+0

@Mixaz对于驱动器2的计算将是相同的。由于有10个数据集并且只有3个驱动器可以放入,所以每个驱动器都有多个数据集,并且根据表1的数据计算惩罚值。这有帮助吗? – Vivekananda 2014-11-23 17:34:27

回答

0

我希望我清楚地理解你的问题,我想建议你一个解决方案,而不写任何VBA代码。

请注意,只有当您的第二个表中的数据集列包含唯一值(但如果没有,则不应该很难找到解决方法)。

为每个驱动器必须在量刑列后您的第一个表,您可以添加一列,因为我的图片在这里做如下:

enter image description here

在每一行,你会比较第一组和第二用你的第二个表格设置值。如果它们的磁盘驱动器值等于单元格列中的磁盘驱动器值,则将标记为TRUE,否则标记为FALSE。

的单元格的公式是这样的一个(让我们在D4我的照片作为参考和你的第二个表):

=IFERROR(IF(AND(INDEX('Second table'!$E$4:$G$8,MATCH(A4,'Second table'!$E$4:$E$8,0),3)=D$3, INDEX('Second table'!$E$4:$G$8,MATCH(B4,'Second table'!$E$4:$E$8,0),3)=D$3)=TRUE, TRUE, FALSE),FALSE) 

您将有这个公式适应你的文档中真正的引用。

一旦您的公式准备就绪,您可以将每个磁盘驱动器列的所有单元复制到表的末尾。

您现在可以非常方便地使用SUMIF来计算每个磁盘驱动器的惩罚总和。在我的桌子上面这里我把这个公式单元格D16:

=SUMIF(D4:D14,"TRUE",C4:C14) 

如果我没有得到你的问题的意识,不要犹豫,评论我的帖子!