Google 工作表从 Table 中提取数据并为每个数据集创建一行

Google Sheets Extract Data from Table and make a row per data set

我受困于 Google 表格。

情况: 我有项目的数据 table。每个项目都有一些属性,最重要的是包括哪个团队成员本月在该项目上工作。

目标: 我需要将数据转换为以不同方式构建的新 table。每个项目每个活跃的团队成员需要一行。

示例数据和目标: https://docs.google.com/spreadsheets/d/1QcNPsvHX8hBNUpCJiutof8yD8ukFYcCXM_pLNrQmDUs/edit?usp=sharing(可以编辑)

如您所见,SEO 和 Island 现在有两行,而不是一行,因为 Jan 和 Chris 本月参与了这些项目。

方法: 我尝试了 FILTER、QUERY(带数据透视)并考虑了脚本(基本上是对 Matrix B3:E8... 的迭代)。但是,我不是特别擅长使用表格,非常感谢您的帮助。谢谢十亿,伙计们!!!

您可以通过使用 Textjoin 将相应的列 headers 和 non-blank 单元格的其他数据连接在一起,然后将其分成行,然后使用转置和拆分功能:

=ArrayFormula(split(transpose(split(textjoin("¶",true,if(B3:E8="","",A3:A8&"|"&F3:F8&"|"&G3:G8&"|"&H3:H8&"|"&I3:I8&"|"&B2:E2)),"¶")),"|"))