Google sheets 从宽表格式转到长表格式(动态)

Google sheets 从宽表格式转到长表格式(动态),google-sheets,google-sheets-formula,transpose,array-formulas,google-sheets-query,Google Sheets,Google Sheets Formula,Transpose,Array Formulas,Google Sheets Query,我正在尝试使用谷歌电子表格从一个“宽格式”表格变成一个“长格式”表格 我已经创建了一个电子表格来重新创建场景,考虑到这一点: 用户正在“宽”选项卡上更新数据 可以随时添加Id(不能删除任何Id) 可以更换、移除标签,甚至可以添加新标签(限制为9个标签) 测试文件: 选项卡“wide”中有一个数据最初如何格式化的示例。 标签“long”是预期的输出(所有id标签可能的唯一组合) 哪种方法是获取“长表”格式数据的最佳方法,该数据还可以让我捕获原始数据源的任何更新? 谢谢 试试看: ={"

我正在尝试使用谷歌电子表格从一个“宽格式”表格变成一个“长格式”表格

我已经创建了一个电子表格来重新创建场景,考虑到这一点:

  • 用户正在“宽”选项卡上更新数据
  • 可以随时添加Id(不能删除任何Id)
  • 可以更换、移除标签,甚至可以添加新标签(限制为9个标签)
测试文件:

选项卡“wide”中有一个数据最初如何格式化的示例。 标签“long”是预期的输出(所有id标签可能的唯一组合)

哪种方法是获取“长表”格式数据的最佳方法,该数据还可以让我捕获原始数据源的任何更新?

谢谢

试试看:

={"id"\ "tag"; ARRAYFORMULA(SPLIT(QUERY(FLATTEN(
 IF(wide!B2:Z="";;wide!A2:A&"♦"&wide!B2:Z)); 
 "where Col1 is not null"); "♦"))}

公式的第一部分向我抛出了一个错误
{“id”\“tag”;…
我刚刚删除了它,并强制列标题名为id和tag,结果成功了!非常感谢@player0!