合并两列并添加一个额外的列,其中填充了第一列的 headers
Merge two columns and add one extra column filled with headers from the two first column
我有这个:
Date Header1 Header2
01/01/2016 value_header1_1 value_header2_1
02/01/2016 value_header1_2 value_header2_2
03/01/2016 value_header1_3 value_header2_3
04/01/2016 value_header1_4 value_header2_4
05/01/2016 value_header1_5 value_header2_5
我想要这个:
Date Header1 Extra column
01/01/2016 value_header1_1 header1
02/01/2016 value_header1_2 header1
03/01/2016 value_header1_3 header1
04/01/2016 value_header1_4 header1
05/01/2016 value_header1_5 header1
01/01/2016 value_header2_1 header2
02/01/2016 value_header2_2 header2
03/01/2016 value_header2_3 header2
04/01/2016 value_header2_4 header2
05/01/2016 value_header2_5 header2
我已经开始使用以下公式:
=transpose(split(join(";",'Daily data'!B1:B,'Daily data'!C1:C),";"))
但后来我卡住了!
假设您显示的列是 A:C,以下公式有效:
={filter({A2:A, B2:B, iferror(A2:A/0, "header1")}, len(A2:A)); filter({A2:A, C2:C, iferror(A2:A/0, "header2")}, len(A2:A))}
第一部分形成一个三列数组,其中第三列是"header1"(通过人为抛出被零除的错误并将"header1"与iferror
放在一起创建) .第二个做同样的事情,但使用 A 和 C 而不是 A 和 B。在这两种情况下,过滤器确保我们不包括 A 为空的行。最后,两个数组使用垂直堆栈符号 {array1; array2}
进行堆叠。
我有这个:
Date Header1 Header2
01/01/2016 value_header1_1 value_header2_1
02/01/2016 value_header1_2 value_header2_2
03/01/2016 value_header1_3 value_header2_3
04/01/2016 value_header1_4 value_header2_4
05/01/2016 value_header1_5 value_header2_5
我想要这个:
Date Header1 Extra column
01/01/2016 value_header1_1 header1
02/01/2016 value_header1_2 header1
03/01/2016 value_header1_3 header1
04/01/2016 value_header1_4 header1
05/01/2016 value_header1_5 header1
01/01/2016 value_header2_1 header2
02/01/2016 value_header2_2 header2
03/01/2016 value_header2_3 header2
04/01/2016 value_header2_4 header2
05/01/2016 value_header2_5 header2
我已经开始使用以下公式:
=transpose(split(join(";",'Daily data'!B1:B,'Daily data'!C1:C),";"))
但后来我卡住了!
假设您显示的列是 A:C,以下公式有效:
={filter({A2:A, B2:B, iferror(A2:A/0, "header1")}, len(A2:A)); filter({A2:A, C2:C, iferror(A2:A/0, "header2")}, len(A2:A))}
第一部分形成一个三列数组,其中第三列是"header1"(通过人为抛出被零除的错误并将"header1"与iferror
放在一起创建) .第二个做同样的事情,但使用 A 和 C 而不是 A 和 B。在这两种情况下,过滤器确保我们不包括 A 为空的行。最后,两个数组使用垂直堆栈符号 {array1; array2}
进行堆叠。