【发布时间】:2015-07-04 15:35:39
【问题描述】:
在 Google 电子表格中,如果我要从多个工作表中导入信息,我有一个摘要工作表。我的过滤器功能之一如下所示:
=过滤器(Sheet2!A14:A27, (Sheet2!K14:K27="Y") + (Sheet2!K14:K27="R"))
我有多个像这样的过滤器功能。我面临的问题是我必须为此函数的结果分配静态行数,但结果是非常动态的(可能是 1 行甚至 15 行)。
我一直在进行详尽的搜索,但找不到一种弹性的好方法,以便只附加所有过滤器函数的结果(每个结果之间可能有一个空行/标题行)。
有人在其中一个论坛上提供的一个解决方案是为每个论坛分配静态行数并使用脚本隐藏空行,这似乎不是一个非常干净的解决方案(但我可能不得不回退)
另外,我想过使用脚本,但如果我理解正确,脚本只能从菜单、onOpen、onEdit 等“触发”,这也可能不是很直观(必须重新加载电子表格才能看到任何变化onOpen()等情况下)
使用自定义函数会再次导致同样的问题,因为自定义函数在特定的单元格上运行(我们不知道是哪个单元格,因为我们试图使其动态化)
很高兴听到任何想法!
【问题讨论】:
-
您可以只连接几个过滤器操作的结果。例如
={Filter(Sheet1!A14:A27, (Sheet1!K14:K27="Y") + (Sheet1!K14:K27="R"));A1;Filter(Sheet2!A14:A27, (Sheet2!K14:K27="Y") + (Sheet2!K14:K27="R"))}。 A1 只是一个用于分隔结果的空单元格。 -
顺便说一句。自定义函数可以作用于许多单元格并返回许多单元格,就像过滤器一样。
-
感谢蜘蛛猪!不知道!我正在尝试这个(尽管考虑到所有的连接,它现在变得太长了,但会尝试找到一种模块化的方法)
-
在您的第二条评论中,当我尝试在自定义函数中使用 copyTo() 来复制单元格的值时,它给了我一个权限错误。然后我在文档中读到自定义函数不能真正用于“写入”到另一个单元格。但也许我可以把整个结果放在一个数组中,然后在那个单元格中输出它,这样它就会自动到达其他单元格(就像过滤器一样)
标签: google-sheets