Google 工作表 ArrayFormula 比较多个不同行中的多个单元格的最后一步

Last Step for a Google Sheet ArrayFormula to Compare Multiple Cells from Multiple Different Rows

提问人:Computer Candy 提问时间:7/30/2023 最后编辑:Computer Candy 更新时间:7/30/2023 访问量:34

问:

我们制作了迪士尼 DVD 和蓝光光盘的清单。有些迪士尼电影以 4K 格式提供,有些仅在 BD(蓝光)上提供,有些在 3D 上等。

希望这与我们在这里使用的测试表更有意义......https://docs.google.com/spreadsheets/d/1L2-npiEdTE9ardDi2q38sYhkKRFKAPCu_gtJFbOZa80/edit?usp=sharing

1.) 我们创建了一个列,该列将显示电影发行是否以比该行的当前条目更高质量的格式在另一个版本中可用。

2.) 我们还创建了一个列,用于显示电影版本是否在另一个版本中以与该行的当前条目相同的最大质量提供。

到目前为止,我们得到了很多很大的帮助,帮助我们实现了这些目标......Google 表格 ArrayFormula 比较来自多个不同行的多个单元格......但是我们的用户要求进行最后的添加,这将打破我们目前做出这些决定的公式。

我们被要求包含单独的列,以显示任何特定版本中包含的每种不同格式中的哪一种,作为复选框或是/否下拉列表。

您可能不需要的长细节:这提供了更高层次的信息,但破坏了我们目前用于我上面描述的公式。这些列将与我们的光盘数量列分开,以便用户可以输入他们知道格式但不知道光盘数量的电影版本。即使用户没有输入任何数量,仅输入包含的格式仍然适用于我们想要的格式。我希望一切都是有道理的。

1.) 对于“以更高质量的格式提供?”:3D 应该被忽略为可能的质量升级,但是,3D 版本应该寻找 4K 选项作为 3D 的升级可能性。如果 Movie-A 仅在 DVD 和 3D 上可用,则 DVD 条目不应显示有可用的质量升级。(除非 3D 版本还包括标准 BD 蓝光光盘。但是,如果 Movie-B 是 3D 和 4K,则 3D 条目应显示存在质量升级。[4K > BD > DVD], [4K > 3D]

2.) 对于“其他版本以相同质量格式提供?”:不忽略任何格式,但每个条目都会查找具有相同最高质量格式的其他版本。例如,如果 4K 版本包含 BD,则标准 BD 版本不会将 4K 版本作为具有相同质量的另一个版本包含在内,即使它包含 BD 光盘。 [4K > 3D > BD > DVD]

感谢所有已经为我们提供此服务的人,并感谢您提供任何进一步的帮助!

if-statement google-sheets 过滤器 lambda 数组公式

评论


答:

1赞 rockinfreakshow 7/30/2023 #1

这是您可以测试的一种方法。改编自早期的公式迭代

1) 提供更高质量的格式?

=let(Λ,byrow(F3:I,lambda(Σ,min(index(if(Σ="Yes",column(Σ),))))),
   map(B3:B,D3:D,Λ,lambda(b,d,x,if(b="",,if(x>vlookup(b&d,sort({B3:B&D3:D,Λ},2,1),2,),"Yes","No")))))

2) 其他版本是否具有相同质量的格式?

=let(Λ,byrow(F3:I,lambda(Σ,min(index(if(Σ="Yes",column(Σ),))))),
       map(B3:B,D3:D,Λ,lambda(b,d,x,if(b="",,if(countif(filter(Λ,B3:B&D3:D=b&d),x)>1,"Yes","No")))))

enter image description here

评论

0赞 Computer Candy 7/31/2023
做到了。再次非常感谢!:)