Google表格公式说明

阿比

我问了一个关于StackOverflow的问题:Google表格:将两个表连接在一起

我必须弄清楚如何动态地将两个表连接在一起。我从@MattKing获得了有关如何解决我的问题的答案,他的解决方案适用于我创建的样本数据。但是,他的解决方案将两个表合并到一个表中query(),我无法理解其工作原理,因此需要帮助来了解该公式。除非我了解它的工作原理,否则无法在我的实际工作表上实现它。

实施公式的示例表:https : //docs.google.com/spreadsheets/d/1nKQXHwVO8KjsOy5qvjzh-s-YYRUYlAoH-3aXYbwcKsA/edit?usp=sharing

我需要了解的公式: =ARRAYFORMULA(QUERY({A3:G;{H4:I,IFERROR(ROW(H4:H)/{0,0,0,0}),J4:J}},"select Col1,Col2,SUM(Col3),SUM(Col4),SUM(Col5),SUM(Col6),SUM(Col7) where Col1 is not null group by Col1,Col2 label SUM(Col3)'Impressions',SUM(Col4)'Clicks',SUM(Col5)'Cost',SUM(Col6)'Leads',SUM(Col7)'Offline Leads'"))

我很困惑的部分公式: QUERY({A3:G;{H4:I,IFERROR(ROW(H4:H)/{0,0,0,0}),J4:J}}

多谢您的协助,以找出这个很棒的公式!

玩家0

如果运行以下公式,您会看到发生了什么事情:

=ARRAYFORMULA({A3:G10; {H4:I10, IFERROR(ROW(H4:H10)/{0,0,0,0}), J4:J10}})

但基本上,这是用零除以列偏移的方法,它将输出#DIV错误,因为除以0的任何值在Google表格中都被认为是不合逻辑的。所以...

=ROW(H4:H)

将为您提供每行从4开始的行号,例如:

4
5
6
...

然后除以4列/ 4个零,得到的数组为:

#DIV | #DIV | #DIV | #DIV
#DIV | #DIV | #DIV | #DIV
#DIV | #DIV | #DIV | #DIV
...

包裹在其中,IFERROR因此所有#DIV错误均被消除,这意味着您剩下4个空列

所以我们有了H4:I中的所有内容,然后我们继续处理4个空列,最后一个列是J4:J,这样一来,您总共可以获得7列

然后将这7列与A3:G列中的所有内容再次放入数组中,例如:

A:A   B:B   C:C   D:D   E:E   F:F   G:G
H:H   I:I   #DIV  #DIV  #DIV  #DIV  J:J

为什么你需要这是像上面介绍是因为原因QUERY当您使用操作,如需要列的聚集summinmaxavg

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章