我有一张Excel表格,其数据如下:
JobName Source Total Records Target Total Records Rejected Records Count Run Day Status
Job1 2222 2200 22 03/07/2015 00:31:02 JOB_ENDED_WITH_REJECTS
Job1.1 2200 2000 200 03/07/2015 00:31:02 JOB_ENDED_WITH_REJECTS
-------------------------------------------------------------------------------------------------------------------------------------
Job1 1111 1100 11 03/08/2015 00:31:02 JOB_ENDED_WITH_REJECTS
Job1.1 1100 1000 100 03/08/2015 00:31:02 JOB_ENDED_WITH_REJECTS
我需要在Sheet2中显示如下详细信息:
Main Job Job1
Sub Job Job1.1
Run Day 03/07/2015 00:31:02
Total Rejected Records 222
----------------------------------------------------------------------------
Main Job Job1
Sub Job Job1.1
Run Day 03/08/2015 00:31:02
Total Rejected Records 111
主要工作和运行日的值在sheet2中手动输入。当我输入这个时,我需要查找与作业名和日期匹配的sheet1数据,并计算被拒绝的总行数。
Eg.Job1.1是Job1的子作业,因此Total Rejected行是 被拒绝的行的总和。
Vlookup函数中是否有任何方法可以同时在两列中查找,以便我可以同时查找作业名和日期?
我需要在Excel VBA中实现。
答案 0 :(得分:0)
我相信你最好的选择是使用2个SUMIFS函数,在第二张表中的Total Rejected行中。
=SUMIFS(Sheet1!D:D,Sheet1A:A,Sheet2!B1,Sheet1E:E,Sheet2!B3)+SUMIFS(Sheet1!D:D,Sheet1A:A,Sheet2!B2,Sheet1E:E,Sheet2!B3)
这将对Sheet1的被拒绝记录进行两次处理(每个MainJob和SubJob一次),条件是它也适合日期。
或者你也可以在表1中添加一个新列,你只提到主作业,然后只做一个有两个条件的SUMIFS,一个用于匹配MainJob,另一个用于匹配日期。