1

我有一张票数据表 - 每行一张票。每张票都有一个开放日期。当票被关闭时,它会获得一个关闭日期。

查看月份视图,我们有:

  • 投入率= 每月开出多少张新票
  • 产出率= 每月关闭多少张票
  • 开票= 每月有多少张开票

我将使用它作为示例数据:

| opened date | opened month | closed date | closed month |
|:-----------:|:------------:|:-----------:|:------------:|
|  2019-04-03 |    2019-04   |             |              |
|  2019-03-12 |    2019-03   |             |              |
|  2019-03-09 |    2019-03   |             |              |
|  2019-02-12 |    2019-02   |  2019-03-06 |    2019-03   |
|  2019-01-06 |    2019-01   |  2019-05-09 |    2019-05   |
|  2019-01-09 |    2019-01   |             |              |
|  2019-01-12 |    2019-01   |             |              |
|  2019-03-09 |    2019-03   |  2019-04-09 |    2019-04   |
|  2019-02-09 |    2019-02   |             |              |
|  2019-04-12 |    2019-04   |  2019-06-12 |    2019-06   |
|  2019-02-12 |    2019-02   |             |              |
|  2019-04-03 |    2019-04   |  2019-07-09 |    2019-07   |
|  2019-01-12 |    2019-01   |  2019-03-03 |    2019-03   |
|  2019-03-09 |    2019-03   |  2019-05-12 |    2019-05   |
|  2019-04-12 |    2019-04   |             |              |
|  2019-03-12 |    2019-03   |             |              |
|  2019-04-03 |    2019-04   |  2019-07-09 |    2019-07   |
|  2019-03-12 |    2019-03   |  2019-07-03 |    2019-07   |
|  2019-01-09 |    2019-01   |             |              |
|  2019-01-09 |    2019-01   |  2019-05-09 |    2019-05   |
|  2019-02-12 |    2019-02   |             |              |
|  2019-03-09 |    2019-03   |  2019-06-06 |    2019-06   |
|  2019-04-03 |    2019-04   |  2019-05-09 |    2019-05   |
|  2019-04-03 |    2019-04   |             |              |
|  2019-02-03 |    2019-02   |             |              |
|  2019-04-03 |    2019-04   |  2019-06-03 |    2019-06   |
|  2019-03-12 |    2019-03   |             |              |
|  2019-01-03 |    2019-01   |  2019-02-06 |    2019-02   |

如果我手动将打开的日期与关闭的日期结合起来,我会得到:

|  month  |  type  |
|:-------:|:------:|
| 2019-01 | opened |
| 2019-01 | opened |
| 2019-01 | opened |
| 2019-01 | opened |
| 2019-01 | opened |
| 2019-01 | opened |
| 2019-01 | opened |
| 2019-02 | opened |
| 2019-02 | opened |
| 2019-02 | opened |
| 2019-02 | opened |
| 2019-02 | opened |
| 2019-02 | closed |
| 2019-03 | opened |
| 2019-03 | opened |
| 2019-03 | opened |
| 2019-03 | opened |
| 2019-03 | opened |
| 2019-03 | opened |
| 2019-03 | opened |
| 2019-03 | opened |
| 2019-03 | closed |
| 2019-04 | opened |
| 2019-04 | opened |
| 2019-04 | opened |
| 2019-04 | opened |
| 2019-04 | opened |
| 2019-04 | opened |
| 2019-04 | opened |
| 2019-04 | opened |
| 2019-05 | closed |
| 2019-05 | closed |
| 2019-05 | closed |
| 2019-05 | closed |
| 2019-05 | closed |
| 2019-05 | closed |
| 2019-06 | closed |
| 2019-06 | closed |
| 2019-06 | closed |
| 2019-06 | closed |
| 2019-06 | closed |
| 2019-08 | closed |

我可以把它放在一个支点中以获得:

|  month  | closed | opened |
|:-------:|:------:|:------:|
| 2019-01 |        |    7   |
| 2019-02 |    1   |    5   |
| 2019-03 |    1   |    8   |
| 2019-04 |        |    8   |
| 2019-05 |    6   |        |
| 2019-06 |    5   |        |
| 2019-08 |    1   |        |

这向我显示了每个月打开和关闭的数量。我可以将其用作图表的来源:

在此处输入图像描述

但这并没有显示每个月有多少开张——新开张加上旧开张减去关闭的总数。如果我手动进行数学运算,我会得到:

|  month  | closed | opened | open |
|:-------:|:------:|:------:|:----:|
| 2019-01 |        |    7   |   7  |
| 2019-02 |    1   |    5   |  11  |
| 2019-03 |    1   |    8   |  18  |
| 2019-04 |        |    8   |  26  |
| 2019-05 |    6   |        |  20  |
| 2019-06 |    5   |        |  15  |
| 2019-08 |    1   |        |  14  |

在此处输入图像描述

所以,我想知道是否有办法获取我的源数据并自动生成我想要的数据透视表/图表 - 显示每月打开的数量、每月关闭的数量以及每月打开的数量。

4

1 回答 1

1

试试这个双倍总数:

=ARRAYFORMULA(IF(A2:A<>"", 
 IF(A2:A, MMULT(TRANSPOSE((ROW(C2:C)<=
 TRANSPOSE(ROW(C2:C)))*C2:C), SIGN(C2:C)), IFERROR(1/0))-
 IF(A2:A, MMULT(TRANSPOSE((ROW(B2:B)<=
 TRANSPOSE(ROW(B2:B)))*B2:B), SIGN(B2:B)), IFERROR(1/0)), ))

0


更新:

=ARRAYFORMULA(QUERY(SPLIT(QUERY(IF({B2:B; D2:D}<>"", {B2:B&"♦opened"; D2:D&"♦closed"}, ), 
 "where Col1 is not null", 0), "♦&quot;), 
 "select Col1,count(Col1) group by Col1 pivot Col2 format Col1'yyyy-mm'", 0))

0


=ARRAYFORMULA({""; IF(F3:F<>"", 
 IF(F3:F<>"", MMULT(TRANSPOSE((ROW(H3:H)<=
 TRANSPOSE(ROW(H3:H)))*H3:H), SIGN(H3:H)), IFERROR(1/0))-
 IF(F3:F<>"", MMULT(TRANSPOSE((ROW(G3:G)<=
 TRANSPOSE(ROW(G3:G)))*G3:G), SIGN(G3:G)), IFERROR(1/0)), )})

4

于 2019-10-03T17:40:01.900 回答