I'm not an expert when it codes to either Google App Scripts or Google Spreadsheets, but as I understand things you can't store an Array object directly within a Spreadsheet cell. You can however use something like the <Array>.join(',') fuction to convert that Array to a coma seperated String value and store that in the cell instead.
Because you didn't supply an example of your current App Script I will assume that it still looks something like the one found here
Change the following section of the above linked code from:
// loop through the header columns
for (i in headers){
if (headers[i] == "Timestamp"){ // special case if you include a 'Timestamp' column
row.push(new Date());
} else { // else use header name to get data
row.push(data[headers[i]]);
}
}
to the following which checks for and converts Array objects...
// loop through the header columns
for (i in headers){
if (headers[i] == "Timestamp"){ // special case if you include a 'Timestamp' column
row.push(new Date());
} else if (data[headers[i]] instanceof Array) { // convert Array to formatted String
row.push(data[headers[i]].join(','));
} else { // else use header name to get data
row.push(data[headers[i]]);
}
}
The re-publish the new version of your App Script, you may near to advance the version number for it to actually overwrite the existing published one.