我一直在为Google中的项目资源管理建立一个解决方案。这样做的想法是,团队经理将每周在一行上输入每个项目的资源需求。对于最终用户来说,这是一个非常友好和简单的解决方案。有关输入表的描述,请参见下面的图像。板材
由于我的组织有多个团队,我们希望每个团队都有一个单独的表格。为了保持报告的集中化,我已经将每个工作表连接到BigQuery中,在这里,我将来自不同工作表的数据组合在一起,并最终在Power中创建报表。
目前,我正在使用混合的google功能,如查询、ARRAYFORMULA、SPLIT、平面化等,将数据转换为数据库合适的格式,如下图所示。为了将数据保存在数据库中,我需要将数据从水平格式转换为垂直格式。板材
我目前的问题是,大约有300行和100列,此时,一个简单的google功能变得太重,无法运行。我现在正在寻找一个解决方案来使用应用程序脚本进行处理,如果这将被证明是一个更有效的解决方案,并且允许我为脚本运行的频率添加一些逻辑。
亲爱的专家们,你们认为这样的事情在应用程序脚本中是可以做到的吗?我们应该怎么做呢?我有一些编码经验,但我是新的应用程序脚本。我正在挣扎,特别是在生产笛卡尔产品,这将使我能够联系日期与需求。
我已经添加了一个链接到我的例子工作表下面。
到工作表的链接:Nl2DN-h-8/编辑?usp=共享
发布于 2022-04-15 15:26:21
使用{数组表达式,如下所示:
=arrayformula( query(
{
Input_Sheet!B2:D2 \ "Date" \ "Demand";
flatten( iferror(Input_Sheet!E3:H / 0; Input_Sheet!B3:B) ) \
flatten( iferror(Input_Sheet!E3:H / 0; Input_Sheet!C3:C) ) \
flatten( iferror(Input_Sheet!E3:H / 0; Input_Sheet!D3:D) ) \
flatten( to_date( iferror(Input_Sheet!E3:H / 0; Input_Sheet!E2:H2) ) ) \
flatten(Input_Sheet!E3:H)
};
"where Col5 is not null
order by Col1";
1
) )这不是笛卡尔积。它更像是不枢轴。
请参阅示例电子表格中的新解决方案表。
https://stackoverflow.com/questions/71885663
复制相似问题