将工作表名称添加为要在 Google 表格中查询的列

Roa*_*iel 3 sql google-sheets array-formulas google-sheets-query google-sheets-formula

我有一个包含我的视频游戏收藏的 Google 表格文档。每个控制台系统都有自己的工作表,但我决定使用如下查询将所有工作表合并到一个新工作表中作为概述:

=query({NES!A2:C;SNES!A2:C},"Select Col1, Col2, Col3 where Col1 is not null order by Col2 desc", 1)
Run Code Online (Sandbox Code Playgroud)

这效果很好,我对此很满意。然而,我的收藏相当大,涵盖 20 多个游戏机,所以有时我看到一款游戏,却忘记了它适用于哪个系统。因此,我想添加第四列,其中包含该行来自的工作表的名称(因为每个工作表都以控制台命名)。

对于额外的一点,如果每个控制台都有自己的字体/或背景颜色,也许是 Google Sheets 分配给工作表范围的颜色,但它也可以是手动的,这并不重要,只要它们是不同的颜色。

pla*_*er0 9

最简单的方法就是构建 VR 桌子:

\n\n
=ARRAYFORMULA(QUERY(\n {{NES!A2:C,  TRANSPOSE(SPLIT(REPT("NES"&"\xe2\x99\xa6",  ROWS(NES!A2:A)),  "\xe2\x99\xa6"))}; \n  {SNES!A2:C, TRANSPOSE(SPLIT(REPT("SNES"&"\xe2\x99\xa6", ROWS(SNES!A2:A)), "\xe2\x99\xa6"))}},\n "where Col1 is not null order by Col2 desc"))\n
Run Code Online (Sandbox Code Playgroud)\n\n

0

\n