Google-sheets – How to get new Google Form responses to take on non-form functions in Google Sheets

google sheetsgoogle-formsgoogle-sheets-custom-functionworksheet-function

I developed a Google Form that copies responses to a linked output spreadsheet in Google Sheets.

In addition to the columns created by the form question/responses themselves, I've added additional custom columns. These columns contain functions (and formatting) to manipulate and utilize the response data for a script I wrote. I copied the generic functions through each row for these additional columns.

Everything works as I expect, except….

Every time another user fills out the form (i.e., every new response I receive), a new row is created in my Google spreadsheet instead of simply "adding" to my next function-containing row. As a result, the new response rows are added without the generic functions/formatting, leaving my previously "set up" rows below the newly added response row.

enter image description here

Is there some way to have new response rows be created in a way that incorporates functions in the non-form column cells?

  • In other words, I don't want to have to copy functions into cells of new rows every time a new response is generated, but instead to have these functions "auto-fill."

Best Answer

This post is eight months old as I respond here, but the basic answer is, Yes: use an array formula in the first cell of those columns.

I don't know what your custom functions do or if they would involve any calculations that don't work with arrays, but as written, these formulas would work:

In E1: =ArrayFormula({"Custom Column 1";IF(A2:A="","",Function(A2:A,B2:B,C2:C)})

In F1: =ArrayFormula({"Custom Column 2";IF(A2:A="","",Function(A2:A,E2:E)})