特定范围内每个非空单元格输出新行的公式

时间:2019-02-08 21:08:27

标签: google-sheets

我有一个数据范围,我需要按特定子范围内的非空单元格进行过滤,同时为该子范围内的每个非空单元格生成一个新行。

观察以下示例工作表,其中包含输入数据和所需的输出

https://docs.google.com/spreadsheets/d/1c1lOtXpGbY9MwYHEoFIe1fxgW7TnygcgImCIIp2gzqM/edit?usp=sharing

对于每个非空白的“类型1-4”单元格,应输出一个新行,其中包含 input 行中的日期,名称,类型和值

要实现此目的需要什么公式或函数?

我对使用QUERYVLOOKUPFILTER并不陌生,但无法通过公式获得所需的输出,甚至无法提出任何可以开始使用的东西关闭。

2 个答案:

答案 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 
  ) 
)

通过Google Product Forum