我有一个数据范围,我需要按特定子范围内的非空单元格进行过滤,同时为该子范围内的每个非空单元格生成一个新行。
观察以下示例工作表,其中包含输入数据和所需的输出:
https://docs.google.com/spreadsheets/d/1c1lOtXpGbY9MwYHEoFIe1fxgW7TnygcgImCIIp2gzqM/edit?usp=sharing
对于每个非空白的“类型1-4”单元格,应输出一个新行,其中包含 input 行中的日期,名称,类型和值
要实现此目的需要什么公式或函数?
我对使用QUERY
,VLOOKUP
和FILTER
并不陌生,但无法通过公式获得所需的输出,甚至无法提出任何可以开始使用的东西关闭。
答案 0 :(得分:1)
id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra
1 | SIMPLE | s | index | [NULL] | PRIMARY | 4 | [NULL]| 49 | [NULL]
1 | SIMPLE | sv | ref | user_id | branch_id | 5 | const | 24 | Using where
答案 1 :(得分:0)
一个替代答案,在概念上类似于player0,但简单一些。形成完整范围的数组后,它们selects
列:
=arrayformula(
query(
{
B2:B, C2:C, iferror(F2:F/0, F2), F2:F;
B2:B, C2:C, iferror(G2:G/0, G2), G2:G;
B2:B, C2:C, iferror(H2:H/0, H2), H2:H;
B2:B, C2:C, iferror(I2:I/0, I2), I2:I
},
"where Col4 is not null
order by Col1",
0
)
)