使用excel和vba数据透视表来汇总日期之前和之后的数据

时间:2017-07-12 20:40:15

标签: excel vba excel-vba pivot-table formulas

我有一个excel文档,它是我们的票证跟踪软件的所有服务票证(带有状态,分配给,等等提交)的转储输出。每张票有一行。

我正在尝试在vba中创建一个灵活的报告生成器,这将允许我接收故障单转储并输出一个报告,该报告将在一个工作表中包含数据副本,在另一个工作表中包含摘要,以及一个折线图在另一张纸上。

我觉得像一个数据透视表是完美的方法,唯一的问题是在摘要中。

故障单转储中的数据如下所示:

| Submitted_On | Priority |       Title       |    Status    |   Closed_On    |
   10/10/2016        1           Ticket 1           New      
   10/11/2016        1           Ticket 2          Fixed         11/10/2016
   10/12/2016        3           Ticket 3         Rejected        11/9/2016
   10/15/2016        1           Ticket 4        In Review      

问题是我想要摘要的方式。基本上,摘要应显示在过去三年中的每个月的第一天正好午夜时打开和关闭的所有门票。换句话说,如果此报告是时间机器,那么在该确切时间X将打开并且Y将被关闭。此外,摘要表应按优先级划分。

困难的部分是这些模拟报告日期(过去3年内每个月的第一天)是无关的值,并且不在每个数据行中。

所以报告就是这样的:

                  |        Open        |       Closed       |
| Reporting Date  |  P1  |  P2  |  P3  |  P1  |  P2  |  P3  |
    1-Oct-2016       6     10      0      3      2      0   
    1-Nov-2016       4     10      0      5      2      0   
    1-Dec-2016       6      3      0      5      9      0   

基本上,Open部分的公式如下:   priority=1 AND Submitted_On<Reporting Date AND (Closed_On>Reporting Date OR Closed_On="")

并且关闭部分的公式将类似于:   priority=1 AND Submitted_On<Reporting Date AND Closed_On<Reporting Date

我需要过滤数据,以便只将其分配给x或仅使用这些状态...等。这就是为什么我不认为带公式的常规表格会起作用。

我认为数据透视表可以正常工作,但Reporting Date不是一个字段。

对于我可以做些什么来使这份报告有效并且在过滤方面非常灵活,你有什么建议吗?

谢谢!

P.S。我正在使用excel 2010,因此我无权访问查询

0 个答案:

没有答案