我会推荐一个{ 数组表达式}, 像这样:
={ Sheet1!A2:G }
这或多或少与
=arrayformula(Sheet1!A2:G)
...但我更喜欢{}
语法,因为它允许您指定不相邻的列。例如,您可以跳过列D
and F
像这样:
={ Sheet1!A2:C, Sheet1!E2:E, Sheet1!G2:G }
在区域设置使用逗号而不是句点作为小数点的电子表格中,请使用反斜杠\
而不是逗号作为水平分隔符。
To skip rows, 使用分号;
作为垂直分隔符。例如,您可以跳过行2:9
像这样:
={ Sheet1!A1:G1; Sheet1!A10:G }
开放式范围参考A10:G
means “A 列到 G 列从第 2 行开始,一直延伸到工作表的底部。”
您还可以省略行号以获得开放式范围引用,例如A:G
意思是“从工作表的最顶部到底部的 A 列到 G 列。”该引用的行为与A1:G
几乎在所有情况下。我养成了始终在引用中包含起始行的习惯,因为这样在插入行时公式将自动调整above row 1.
当源表是表单响应表时,需要另一种策略。表单响应始终插入到无法提前直接引用的新创建的行中。
为了避免在将表单回复动态复制到另一张工作表时调整范围参考,请从第 1 行开始复制,如下所示:
={ 'Form Responses 1'!A1:A }
或者,使用数组公式,如下所示:
=arrayformula(
if(
row('Form Responses 1'!A1:A) = 1,
"Enter column header here",
'Form Responses 1'!A1:A
)
)
处理表单响应的更好方法是将数据直接聚合到您需要的任何报告中query()功能。