我们说我有一个Google电子表格,其中包含数据表和预览表。
预览有一列,它是一个复杂的连接公式,它使用Data中相应行中的字段从模板构建文本。公式将在列中向下复制,并正确对应于数据表中的右侧行。因此,对于每一行数据,都会生成预览中的一行。
到目前为止一切顺利。
但是如果我在Data中插入一个新行,Previews中的公式会向下移动一行,其中Data中的插入行开始。
IE,如果我在数据中插入一行3以上(使3成为4),预览中的行,
=Concatenate(Data!A1, Data!B1, Data!C1)
=Concatenate(Data!A2, Data!B2, Data!C2)
=Concatenate(Data!A3, Data!B3, Data!C3)
成为,
=Concatenate(Data!A1, Data!B1, Data!C1)
=Concatenate(Data!A2, Data!B2, Data!C2)
=Concatenate(Data!A4, Data!B4, Data!C4)
(还有更多内容,例如字符串中的空格以及模板表中对模板单元格的绝对引用。但这基本上就是发生的事情。)
如果我将公式设为绝对公式,则无法将其复制下来。但是如果它可以被复制下来,那么当新行插入数据时它就会移动。
我可以使用可安装的触发器修复它(通过在预览中插入相应的行并将公式复制到它。)但我想知道它是否可以使用公式。
我是一名自由职业者,为客户设置此表,因此必须自动完成,而无需教他们。
答案 0 :(得分:0)
您可以尝试使用数组公式。这些消除了在插入新行时拖下来并且不会引起问题的需要。
=Arrayformula(Data!A1:A&Data!B1:B&Data!C1:C)
(改变范围以适应)