以编程方式旋转并在 Google 张的摘要中携带颜色信息

Pivoting programatically and carrying color information in summary of Google sheets

我们有一个看起来像这样的基础 table,在我们的主 sheet 中叫做 "MainData"。

我们想在新作品中总结一下sheet。摘要需要按时间,在节目管理模式下,"When"成为主视图,方式如下。从技术上讲,我们可以通过 Pivot 获得 table 顶部的一个版本,但这会强制进行新工作 sheet。我们希望整个视图在我们自己的第二个 sheet 选择中,我们可以称之为 "Summary"。

不知道从哪里开始。 GETPIVOTDATA 命令似乎是一种更方便的方式来控制枢轴的显示方式而无需强制工作sheet,但颜色等的逐项显示令人困惑。在该周列下方的每周列表中,我们希望显示项目,但它们的单元格需要根据项目所在的状态进行着色。

不寻找现成的解决方案(尽管如果共享我不会反抗),只是寻找要查找哪些函数的指针。非常感谢!

解决方案:

这是一项艰巨的任务...:) 我已经为您构建了可行的解决方案。

Go to this link to grab this (2 sheets - data and report)

解释:

数据sheet:

我向源数据添加了一个额外的列 - 我们将在进一步查询中需要此列(您可以隐藏此列)

={"Rep Desc";ArrayFormula(if(A2:A<>"";"Count of "&A2:A;))}

举报sheet:

我添加了 2 个额外的列 (A:B)(您可以稍后隐藏它们)以更好地解释发生了什么。此解决方案有 4 个主要部分 - 您可以将它们全部打包到一个公式中,但为了清楚起见,我将它们分开。

第 1 部分“打开/关闭/收件人”的编号

这是一个简单的查询 - 我们在数据源中使用额外的列来描述需求(Count of... 而不仅仅是 Attn、Closed 等)

=QUERY({INDIRECT($A)};$B;1)

要查询的字符串

select Col5, count(Col4) where Col1 is not null group by Col5 pivot Col3 label Col5 ''

第 2 部分 - “点和”

它的查询再次放入下一个查询以删除 headers + “点总和”作为额外列(使用内联数组 - {}):

={"Sum of Points"\QUERY(QUERY({INDIRECT($A)};B5;1);"select * offset 1";0)}

要查询的字符串

select sum(Col4) where Col1 is not null pivot Col3

第 3 部分 - “功能”

这很复杂...如果我有更多时间我会描述这里发生的事情...但现在只是代码:

  =QUERY(

transpose(ArrayFormula(SPLIT(
transpose(SPLIT(
TEXTJOIN("^";1;transpose(
{SPLIT(join(" @@ ";transpose(query(transpose(QUERY({INDIRECT($A)};$B;1));"select Col1 offset 1";0)));" @";0;1);
QUERY(ArrayFormula(IF(TRANSPOSE(query(transpose(QUERY({INDIRECT($A)};$B;1));"select * offset 1";0))<>"";
query(QUERY({INDIRECT($A)};$B;1);"select Col1";0);""));"select * offset 1";0)}
))
;"@ ";0;1))
;"^")))
;
"select * offset 1";0)

第 4 部分 - 条件格式

对于范围 D9:H 应用 3 个具有相应颜色的规则:

=INDEX(INDIRECT("data!$A:$A");MATCH(D9;INDIRECT("data!$B:$B");0);1)="Open"

=INDEX(INDIRECT("data!$A:$A");MATCH(D9;INDIRECT("data!$B:$B");0);1)="Closed"

=INDEX(INDIRECT("data!$A:$A");MATCH(D9;INDIRECT("data!$B:$B");0);1)="Attn"

好吗?

这就是你要实现的目标吗?

再说一次 - 这是适合您的工作副本:

Go to this link to grab this (2 sheets - data and report)