我的工作表有两个主要表格。其中一部分是:
第一张表:
第二张表:
我的目标是找到表2中每个驱动器的总惩罚。例如,从第二个表中我们可以看到磁盘驱动器1具有数据集1,2和4.因此驱动器1的总惩罚应该是集合1和2,1以及4和2和4的处罚总和(所以从第一个表中,惩罚值对应于1和2 ie57,1和4即57和2和4,即113)。如果驱动器1中有更多集合,那么我们希望添加表1中的相关组合。请忽略第二个表中的兆字节列,因为它与任何计算无关
如何从这两个表中找到这种情况下每个驱动器的罚款总和?它让我非常难过。任何帮助将不胜感激。 :)
答案 0 :(得分:0)
我希望我清楚地理解你的问题,我想在没有编写任何VBA代码的情况下为你提出解决方案。
请注意,仅当第二个表中的数据集列包含唯一值时才会起作用(但如果没有,则找到解决方法应该不难)。
您可以在Penalty列之后的First表中为每个驱动器添加一列,如下图所示:
在每一行中,您将第一组和第二组值与第二组进行比较。如果它们的磁盘驱动器值都等于单元格列中的磁盘驱动器值,则标记为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)
如果我没有理解你的问题,请不要犹豫,评论我的帖子!