【问题标题】:Group and split results from one row to multiple rows将结果从一行分组并拆分为多行
【发布时间】:2023-04-02 08:39:01
【问题描述】:

我在需要拆分和分组的列中有包含信息的行。

现在我有以下内容:

ID |一个 | A1 | A2 | A3

输出如下:

ID | A | A1
ID | A | A2
ID | A | A3

使用以下代码:

=ARRAYFORMULA(QUERY(SPLIT(FLATTEN(A5:A7&"|"&B5:B7&"|"&C5:E7);"|";0;0);"where Col3<>''"))

但问题是当我想要多个组参数时:

ID |一个 | A1 | A2 | A3 |乙| B1 | B2 | B3

输出如下:

ID | A | A1
ID | A | A2
ID | A | A1
ID | B | B1
ID | B | B2
ID | B | B3

请看附件:

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

我还没有弄清楚如何管理它。

感谢您的帮助。

【问题讨论】:

    标签: google-sheets split concatenation array-formulas transpose


    【解决方案1】:

    尝试:

    =ARRAYFORMULA(QUERY(SPLIT({
     FLATTEN(IF(C23:E26="";;A23:A26&"♦"&B23:B26&"♦"&C23:E26));
     FLATTEN(IF(G23:I26="";;A23:A26&"♦"&F23:F26&"♦"&G23:I26))}; "♦"); 
     "where Col1 is not null order by Col1"; 0))
    

    【讨论】:

    • 仅供参考,我添加了“ORDER BY Col1”以按 ID 排序。
    猜你喜欢
    • 2012-12-26
    • 1970-01-01
    • 2014-09-06
    • 2019-09-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-26
    • 1970-01-01
    相关资源
    最近更新 更多