Google Sheet 重组,Columns/Rows 从 Sheet A - 到基于 Sheet B 的行

Google Sheet restructure, Columns/Rows from Sheet A - to Row based in Sheet B

我非常擅长 google sheets,使用高级功能。然而,这个问题却困扰了我很久。 sheet的当前格式,下面的“当前Sheet”是最终用户用来输入数字的sheet。

我需要使用公式(不是复制粘贴)在另一个 sheet 中构建数据,就像您在下面的“我需要的”sheet 中看到的那样。这些数据最终将通过 python 脚本读取,并将行插入数据库。

日期为1-12月,类别有30多个。每个类别都有一个月份值。

在此先感谢您的帮助!

试试这个:

=index({"Month","Item","Value";split(flatten(transpose(eomonth(B1:C1,-1)+1&"❄️"&A4:A14&"❄️"&B4:C14)),"❄️")})

  • 下面的公式returns根据需要构造数据:
=ARRAYFORMULA({"Month","Item","Value";SPLIT(FLATTEN(B1:C1&"♣"&A4:A14&"♣"&B4:C14), "♣")})
  • =ARRAYFORMULA 允许您对范围进行操作,因此我在外层添加了
  • 首先,“月份”范围 +“类别”范围 + 值范围的串联,由任意定界符分隔,以便 =SPLIT 稍后。
  • 然后,=FLATTEN这个结果得到单列
  • 然后 =FLATTEN 结果是 =SPLIT by the delimiter and put into a defined array 作为第二行。
  • 第一行是用 header 个标签手动设置的。