Google sheets 如何使IMPORTRANGE成为一个动态函数
有没有办法将以下公式作为动态数组公式:Google sheets 如何使IMPORTRANGE成为一个动态函数,google-sheets,google-sheets-formula,google-sheets-query,importrange,Google Sheets,Google Sheets Formula,Google Sheets Query,Importrange,有没有办法将以下公式作为动态数组公式: =查询( {IMPORTRANGE(B2,“Filter!B:C”); 导入(B3,“过滤器!B:C”); importrange(B4,“Filter!B:C”)},“Where Col2”“”) 如果我的输入是三个电子表格键,则IMPORTRANGE应执行三次,如果我的输入是五个电子表格键,则IMPORTRANGE应执行五次。此问题的答案是否,您不能 importrange在某种程度上已经是一个arrayformula,因为它返回数组,所以不能将键\范
=查询(
{IMPORTRANGE(B2,“Filter!B:C”);
导入(B3,“过滤器!B:C”);
importrange(B4,“Filter!B:C”)},“Where Col2”“”)
如果我的输入是三个电子表格键,则IMPORTRANGE应执行三次,如果我的输入是五个电子表格键,则IMPORTRANGE应执行五次。此问题的答案是否,您不能
importrange
在某种程度上已经是一个arrayformula
,因为它返回数组,所以不能将键\范围数组作为输入
变通办法
您可以将公式组合为字符串,得到如下字符串:
“=query({importrange(…);importrange(…)…},“选择…”)”
然后使用脚本将字符串转换为公式
例如,在col
A
中,制作ini
表格,制作进口清单:
="importrange("&B1&",""Filter!B:C"")"
="importrange("&B2&",""Filter!B:C"")"
="importrange("&B3&",""Filter!B:C"")"
and so on
将键放入列B
然后生成过滤器公式,用分号将它们连接起来:
=join(“;”,filter(A:A,A:A)”)
所以你得到了未来公式的一部分:
“导入(B2,“过滤器!B:C”);导入(B3,“过滤器!B:C”);…”
然后连接公式的其他部分
最后一步是使用脚本转换此文本公式,并将其作为实际公式粘贴到目标工作表。如果使用
onEdit
触发器检查ini
工作表中的任何更改,脚本可能会正常工作。此问题的答案是否,您不能
importrange
在某种程度上已经是一个arrayformula
,因为它返回数组,所以不能将键\范围数组作为输入
变通办法
您可以将公式组合为字符串,得到如下字符串:
“=query({importrange(…);importrange(…)…},“选择…”)”
然后使用脚本将字符串转换为公式
例如,在col
A
中,制作ini
表格,制作进口清单:
="importrange("&B1&",""Filter!B:C"")"
="importrange("&B2&",""Filter!B:C"")"
="importrange("&B3&",""Filter!B:C"")"
and so on
将键放入列B
然后生成过滤器公式,用分号将它们连接起来:
=join(“;”,filter(A:A,A:A)”)
所以你得到了未来公式的一部分:
“导入(B2,“过滤器!B:C”);导入(B3,“过滤器!B:C”);…”
然后连接公式的其他部分
最后一步是使用脚本转换此文本公式,并将其作为实际公式粘贴到目标工作表。如果使用
onEdit
触发器检查ini
工作表中的任何更改,脚本可能会正常工作。我认为您的公式正常。若要添加其他键,您需要将它们添加到公式中。您好,Max,有没有办法让e importrange将充当动态函数。我认为您的公式没有问题。若要添加其他键,您需要将它们添加到公式中。您好,Max,有没有一种方法可以让importrange充当动态函数。