Google sheets 创建一个透视表,其中生成的列是原始列和行的乘积?

Google sheets 创建一个透视表,其中生成的列是原始列和行的乘积?,google-sheets,pivot,transpose,array-formulas,google-sheets-query,Google Sheets,Pivot,Transpose,Array Formulas,Google Sheets Query,如果没有大量昂贵的脚本,这可能是不可能的,但我希望由专家来运行它,以防我遗漏了什么。这很难解释(因为这是荒谬的,也就是说,不是我的选择),所以我只举一个非常简单的例子 我的源数据表是这样的 +----------+-------+------+--------+ | Date | Time | Cars | Trucks | +----------+-------+------+--------+ | 01/01/19 | 08:00 | 2 | 12 | | 01/01

如果没有大量昂贵的脚本,这可能是不可能的,但我希望由专家来运行它,以防我遗漏了什么。这很难解释(因为这是荒谬的,也就是说,不是我的选择),所以我只举一个非常简单的例子

我的源数据表是这样的

+----------+-------+------+--------+
|     Date | Time  | Cars | Trucks |
+----------+-------+------+--------+
| 01/01/19 | 08:00 | 2    | 12     |
| 01/01/19 | 12:00 | 4    | 10     |
| 01/01/19 | 20:00 | 6    | 8      |
| 01/02/19 | 08:00 | 8    | 6      |
| 01/02/19 | 12:00 | 10   | 4      |
| 01/02/19 | 20:00 | 12   | 2      |
+----------+-------+------+--------+
。。我想让另一张纸动态显示它,就像

+----------+---------------+---------------+---------------+
|          | 08:00         | 12:00         | 20:00         |
+----------+------+--------+------+--------+------+--------+
|          | Cars | Trucks | Cars | Trucks | Cars | Trucks |
+----------+------+--------+------+--------+------+--------+
| 01/01/19 | 2    | 12     | 4    | 10     | 6    | 8      |
| 01/02/19 | 8    | 6      | 10   | 4      | 12   | 2      |
+----------+------+--------+------+--------+------+--------+
换言之,每次在类别中组合一列。 请记住,实际上,这是一个大型数据集。另外,我在标题中有一点灵活性,即输出中的两个标题行可以是一个。比如“汽车8:00”,“卡车8:00”,“汽车12:00”。。。等

有人知道如何使用数据透视表实现这一点吗?还是其他简单的方法

这是同一个例子的现场版本。。。 试试:

=ARRAYFORMULA({{TEXT(SUBSTITUTE(SPLIT(TRANSPOSE(QUERY(TRANSPOSE(QUERY(
 QUERY({Source!A2:B, TRANSPOSE(QUERY(TRANSPOSE(Source!C2:D),,999^99))}, 
 "select Col1,max(Col3) where Col1 is not null group by Col1 pivot Col2"), 
 "limit 0", 1)),,999^99)), " "), "1899-12-30", ), "hh:mm"), ""}; {"", 
 SPLIT(REPT(Source!C1&" "&Source!D1&" ", COUNTUNIQUE(Source!B2:B)), " ")}; 
 TRANSPOSE(QUERY(TRANSPOSE(SPLIT(TRANSPOSE(QUERY(TRANSPOSE(QUERY(QUERY({Source!A2:B, 
 TRANSPOSE(QUERY(TRANSPOSE(Source!C2:D),,999^99))}, 
 "select Col1,max(Col3) where Col1 is not null group by Col1 pivot Col2"), 
 "offset 1", 0))&" ",,999^99)), " ", 1, 0)), "where "&JOIN(" or ", "Col"&
 ROW(INDIRECT("A1:A"&COUNTUNIQUE(Source!A2:A)))&" is not null"), 0))})

尝试:


不应该是C3单元12而不是2?很抱歉。抢手货我会把它全部修好的不是C3单元12而不是2?很抱歉。抢手货我会把它全部修好的!好吧,所以这并不简单。。。但肯定完成了任务。谢谢:)哇!好吧,所以这并不简单。。。但肯定完成了任务。谢谢:)