我希望我的Google电子表格能够自动将单元格F2到H2中找到的公式应用到所有新的表单插入行。 You can view the spreadsheet here.
公式为:
F2: = IF(B2,“I”& B2,“ - ”)
G2: = vlookup(C2,SectionID!$ A $ 2:$ B $ 13,2,FALSE)
H2: = vlookup(D2,ReporterID!$ A $ 2:$ B $ 12,2,FALSE)
我尝试将公式手动应用于第3行到第10行,但是在提交表单时,数据会添加到不包含公式的新创建的行中。 (表格数据提交到A到E列。)
随意更改电子表格。
感谢您的帮助。
答案 0 :(得分:1)
您需要使用脚本填写表单提交中的公式,或使用现成的解决方案,该解决方案是一个数组公式:
=ArrayFormula(IF(A2:A;IF(B2:B;"I"&B2:B;"--");IFERROR(1/0)))
=ArrayFormula(IFERROR(VLOOKUP(C2:C;SectionID!$A$2:$B$13;2*SIGN(ROW(A2:A));FALSE)))
=ArrayFormula(IFERROR(VLOOKUP(D2:D;ReporterID!$A$2:$B$12;2*SIGN(ROW(A2:A));FALSE)))
Here是关于将VLOOKUP转换为迭代数组所涉及的技巧的一些讨论。
您还可以调用第1行中的公式来填充标题,这可以减少可能在第2行上方插入行的情况:
=ArrayFormula(IF(ROW(A:A)=1;"IssueID";IF(A:A;IF(B:B;"I"&B:B;"--");IFERROR(1/0))))
=ArrayFormula(IF(ROW(A:A)=1;"SectionID";IFERROR(VLOOKUP(C:C;SectionID!$A$2:$B$13;2*SIGN(ROW(A:A));FALSE))))
=ArrayFormula(IF(ROW(A:A)=1;"ReporterID";IFERROR(VLOOKUP(D:D;ReporterID!$A$2:$B$12;2*SIGN(ROW(A:A));FALSE))))